SORRY! Leider noch eine Blätterfunktion!

Also es hat noch einige kleine Fehler, ein paar habe ich schon ausgebessert:

PHP:
//NEXT-PREV-PAGE-FUNKTION

//default-Wert
$start=0;
//ausgabeanzahl pro seite
$anzahl=10;
//default-Seitennummer
$seite=1;
//ist im Query-String "site" vorhanden...
if(isset($_GET['site'])){

    $seite = $_GET['seite'];
    
}
//die anzahl wird minus 1 gerechnet und mit der Seitennummer multipliziert. Das Ergebnis kommt in die Variable "start"
$start=$anzahl*($seite-1);

if($eingabe == "") { 


    $sp=0;  
    echo "<table cellspacing=\"3\" cellpadding=\"3\">"; 
    echo "<tr>"; 
    $abfrage = "SELECT * FROM file WHERE text = '' LIMIT ".$start.",".$anzahl; 
    $ergebnis = mysql_query($abfrage);
    $count_erg= mysql_num_rows($ergebnis);
    while($row = mysql_fetch_object($ergebnis)) { 
        echo "<td  valign=\"middle\" align=\"center\" style=\"BORDER:1px solid #CCCCCC;\">"; 
        echo "<a href='picture3_admin1.php?id=$row->name&eingabe=".$eingabe."'><img src=\"thumbs/$row->name\" border='0'>"; 
        echo "</td>"; 
        $sp++;  
          if(($sp%8)==0)  
          {  
            echo "</tr><tr>";  
          }      
    //    echo $row->name; 
    } 
    echo "</tr></table>"; 
         
}else{ 
    $eingabe_array = explode(' ',$eingabe);  
    $query = 'SELECT * FROM file WHERE '; //anfang der abfrage 
        
        $count_e_a=count($eingabe_array);
        $i=0;
        foreach($eingabe_array as $eingabe_v){
        
            $query.="text LIKE '%".$eingabe_v."%'";//implementieren des Suchbefehls
            if($i<$count_e_a){
                $query.=" OR ";//ist $eingabe_v nicht das letzte Element wird ein "OR" dazugeschrieben
            }
            $i++;//i wird um eins mehr
        
        }
    if($query == "SELECT * FROM file WHERE "){
        die("UNKNOWN ERROR: contact the webmaster");
    }
    
    $query.=" LIMIT ".$start.",".$anzahl;
             
    $sp=0; 
    echo "<table cellspacing=\"3\" cellpadding=\"3\">"; 
    echo "<tr>"; 
    
    $ergebnis = mysql_query($query);
    $count_erg= mysql_num_rows($ergebnis);
    while($row = mysql_fetch_object($ergebnis)) { 
        echo "<td  valign=\"middle\" align=\"center\" style=\"BORDER:1px solid #CCCCCC;\">"; 
        echo "<a href='picture3_admin1.php?id=$row->name&eingabe=".$eingabe."'><img src=\"thumbs/$row->name\" border='0'>"; 
        echo "</td>"; 
        $sp++;  
          if(($sp%8)==0)  
          {  
            echo "</tr><tr>";  
          }      
    //    echo $row->name; 
    }
    
    echo "</tr></table>";
} 
  //ERSTELLEN DER LINKS
  if($_GET['site'] == 1){
    echo "<span style='color:#CCC;'>&laquo; zur&uuml;ck</span>";
  }else{
    echo "<a href='dieseSeite.php?site=".$site-1 ."'>&laquo; zur&uuml;ck</a>";
  }
  
  echo " | ";
  
  if($count_erg<=$start+$anzahl){
    echo "<span style='color:#CCC;'>&raquo; weiter</span>";
  }else{
    echo "<a href='dieseSeite.php?site=".$site+1 ."'>&raquo; weiter</a>";
  }

Das ist die ausgabe:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\apachefriends\xampp\htdocs\banp\admin1\search_2_admin1.php on line 105

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\apachefriends\xampp\htdocs\banp\admin1\search_2_admin1.php on line 106

-1'>« zurück | » weiter

wenn ich mysql_error() schreibe kommt:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 0,10' at line 1

Zeile 105,106:

PHP:
          $ergebnis = mysql_query($query);
105:    $count_erg= mysql_num_rows($ergebnis);
106:    while($row = mysql_fetch_object($ergebnis)) {

wie gehts weiter?!
 
Zuerst gehört mal das mit dem Link verbessert:

PHP:
//ERSTELLEN DER LINKS 
  if($_GET['site'] == 1){ 
    echo "<span style='color:#CCC;'>&laquo; zur&uuml;ck</span>"; 
  }else{ 
    $prev_site=$site-1;
    echo "<a href='dieseSeite.php?site=".$prev_site ."'>&laquo; zur&uuml;ck</a>"; 
  } 
   
  echo " | "; 
   
  if($count_erg<=$start+$anzahl){ 
    echo "<span style='color:#CCC;'>&raquo; weiter</span>"; 
  }else{ 
    $next_site=$site+1;
    echo "<a href='dieseSeite.php?site=".$next_site ."'>&raquo; weiter</a>"; 
  }

Ja das hab ich mir gedacht! Ich bekomm nämlich einen nach und nach zusammengefügten Query nie gleich auf Anhieb hin. Lass dir mal die Variable $query ausgeben, sobald sie fertig bepackt wurde!
 
Nein eben Nicht, denn das "OR" dürfte nicht hier sein. Versuch mal das:

PHP:
<?php

//NEXT-PREV-PAGE-FUNKTION

//default-Wert
$start=0;
//ausgabeanzahl pro seite
$anzahl=10;
//default-Seitennummer
$seite=1;
//ist im Query-String "site" vorhanden...
if(isset($_GET['site']){

    $seite=$_GET['seite'];
    
}
//die anzahl wird minus 1 gerechnet und mit der Seitennummer multipliziert. Das Ergebnis kommt in die Variable "start"
$start=$anzahl*($seite-1);

if($eingabe == "") { 


    $sp=0;  
    echo "<table cellspacing=\"3\" cellpadding=\"3\">"; 
    echo "<tr>"; 
    $abfrage = "SELECT * FROM file WHERE text = '' LIMIT ".$start.",".$anzahl; 
    $ergebnis = mysql_query($abfrage);
    $count_erg= mysql_num_rows($ergebnis);
    while($row = mysql_fetch_object($ergebnis)) { 
        echo "<td  valign=\"middle\" align=\"center\" style=\"BORDER:1px solid #CCCCCC;\">"; 
        echo "<a href='picture3_admin1.php?id=$row->name&eingabe=".$eingabe."'><img src=\"thumbs/$row->name\" border='0'>"; 
        echo "</td>"; 
        $sp++;  
          if(($sp%8)==0)  
          {  
            echo "</tr><tr>";  
          }      
    //    echo $row->name; 
    } 
    echo "</tr></table>"; 
         
}else{ 
    $eingabe_array = explode(' ',$eingabe);  
    $query = 'SELECT * FROM file WHERE '; //anfang der abfrage 
        
        $count_e_a=count($eingabe_array);
        $i=0;
        foreach($eingabe_array as $eingabe_v){
        
            $query.="text LIKE '%".$eingabe_v."%'";//implementieren des Suchbefehls
            if($i<$count_e_a-1){
                $query.=" OR ";//ist $eingabe_v nicht das letzte Element wird ein "OR" dazugeschrieben
            }
            $i++;//i wird um eins mehr
        
        }
    if($query == "SELECT * FROM file WHERE "){
        die("UNKNOWN ERROR: contact the webmaster");
    }
    
    $query.=" LIMIT ".$start.",".$anzahl;
             
    $sp=0; 
    echo "<table cellspacing=\"3\" cellpadding=\"3\">"; 
    echo "<tr>"; 
    
    $ergebnis = mysql_query($query);
    $count_erg= mysql_num_rows($ergebnis);
    while($row = mysql_fetch_object($ergebnis)) { 
        echo "<td  valign=\"middle\" align=\"center\" style=\"BORDER:1px solid #CCCCCC;\">"; 
        echo "<a href='picture3_admin1.php?id=$row->name&eingabe=".$eingabe."'><img src=\"thumbs/$row->name\" border='0'>"; 
        echo "</td>"; 
        $sp++;  
          if(($sp%8)==0)  
          {  
            echo "</tr><tr>";  
          }      
    //    echo $row->name; 
    }
    
    echo "</tr></table>";
} 

  if($_GET['site'] == 1){
    echo "<span style='color:#CCC;'>&laquo; zur&uuml;ck</span>";
  }else{
    echo "<a href='dieseSeite.php?site=".$site-1."'>&laquo; zur&uuml;ck</a>";
  }
  
  echo " | ";
  
  if($count_erg<=$start+$anzahl){
    echo "<span style='color:#CCC;'>&raquo; weiter</span>";
  }else{
    echo "<a href='dieseSeite.php?site=".$site+1."'>&raquo; weiter</a>";
  }
  
?>

//edit:
:offtopic:
Sagmal, hat dir ein Mod, bzw. ein Admin die Signatur entfernt :-)
 
Ok! Das eine Problem wäre gelöst! Jetzt zum 2ten! ^^
Ich bekomme 2 Bilder ausgegeben, und er schreibt mir zurück hin als link! und weiter hin in grau (thx, schaut geil aus)!

ps: nnneeeiiinnn die habe ich mir selber gelöscht! ^^ *gggg*
 
Ja ok! Bei 2 Bilder sollten beide Grau sein. Das Problem ist ich hab unten bei der Link-Definition $_GET['site'] als Vergleichsparameter genommen. $site wäre da vielleicht intelligenter ;):

PHP:
if($site == 1){ 
    echo "<span style='color:#CCC;'>&laquo; zur&uuml;ck</span>"; 
  }else{ 
    echo "<a href='dieseSeite.php?site=".$site-1."'>&laquo; zur&uuml;ck</a>"; 
  } 
   
  echo " | "; 
   
  if($count_erg<=$start+$anzahl){ 
    echo "<span style='color:#CCC;'>&raquo; weiter</span>"; 
  }else{ 
    echo "<a href='dieseSeite.php?site=".$site+1."'>&raquo; weiter</a>"; 
  }
 
nein! es geht nicht! grr... übrigens bei ......"?site=".$site+1."> geht nicht! es geht nur
...."?site=".$site+1 ."> der abstand zwischen 1 und . gehört!
 
Versuch das:

PHP:
//ERSTELLEN DER LINKS  
  if($site == 1){  
    echo "<span style='color:#CCC;'>&laquo; zur&uuml;ck</span>";  
  }else{  
    $prev_site=$site-1; 
    echo "<a href='dieseSeite.php?site=".$prev_site ."'>&laquo; zur&uuml;ck</a>";  
  }  
    
  echo " | ";  
    
  if($count_erg<=$start+$anzahl){  
    echo "<span style='color:#CCC;'>&raquo; weiter</span>";  
  }else{  
    $next_site=$site+1; 
    echo "<a href='dieseSeite.php?site=".$next_site ."'>&raquo; weiter</a>";  
  }

Was genau geht denn jetzt nicht?
 
Zurück