suchfunktion zeigt ersten eintrag nicht an

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • suchfunktion zeigt ersten eintrag nicht an

    hallo,

    ich habe ein suchformular gemacht. alles klappt soweit. nur ein problem:
    wenn die suche nur einen erfolgreichen eintrag aufweist, erscheint dieser eintrag nicht auf der ergebnis seite. das script hat zwar einen eintrag gefunden, aber zeigt ihn nicht. weiss nicht was ich falsch gemacht habe. please help.

    das sagt er mir nach dem suchen: Es wurden 1 Datensätze gefunden.

    aber die seite bleibt leer.

    hier mein code:

    die verbindung:
    PHP-Code:
    $connection mysql_connect($host$user$pass) or die ("Unable to connect!");
    mysql_select_db($db) or die ("Unable to select database!");
    $query "SELECT * FROM mitglieder WHERE ".$_POST['Suchfeld']." LIKE '%".$_POST['Suchbegriff']."%' ORDER BY name ASC";
    $result mysql_query($query) or die ("Error in query: $query. " mysql_error()); 
    dann die anzeige der gefundenen datensätze:

    PHP-Code:
    echo "Es wurden "mysql_num_rows($result), " Datensätze gefunden.<br>"
    soweit funktionierts ja.

    nun sollten die einträge kommen...
    PHP-Code:
    if (mysql_num_rows($result) >0)  {
    while(
    $row mysql_fetch_object($result))  {

          echo
    "<table width=100%  border=0  cellspacing=0 cellpadding=3>";
      for(
    $i=0$i>mysql_num_rows($result); $i++)
      {
          if(
    $Hintergrundfarbe=="white")
         {
             
    $Hintergrundfarbe="#AFC6D2";
         }
         else
         {
             
    $Hintergrundfarbe="white";
         }
     
         
    $Result=mysql_fetch_object($result);
         echo
    "<tr bgcolor=\"$Hintergrundfarbe\">",
             
    "<td width=7% class=textAdmin>",
             
    $Result->typ,
             
    "</td>",
             
    "<td width=19% class=textAdminBold>",
             
    $Result->name
             
    "&nbsp;",
             
    "",
             
    $Result->vorname,
             
    "</td>",
             
    "<td width=35% class=textAdmin>",
             
    $Result->firma,
             
    "</td>",
             
    "<td width=13% class=textAdmin>",
             
    $Result->ortg,
             
    "</td>",
             
    "<td width=13% class=textAdmin>",
             
    $Result->klasse,
             
    "</td>",
             
    "<td width=8% align=center class=schriftLink> ",
             
    "<a href=mitglied_detail.php?id=",$Result->id," class=textAdminGrossbuchstabenLink>info</a>",
             
    "</td>",
             
    "</tr>";
     }
     
     echo 
    "</table>"
    was bitte mach ich falsch?

  • #2
    PHP-Code:
    while($row mysql_fetch_object($result)) 
    und

    PHP-Code:
    $Result=mysql_fetch_object($result); 
    Laß das zweite weg!

    Und auch das
    PHP-Code:
    for($i=0$i>mysql_num_rows($result); $i++) 
    ist doppelt gemoppelt, da es ja schon in einer while-Schleife steht, also auch das for raus!

    Und dann noch
    PHP-Code:
     echo"<table width=100%  border=0  cellspacing=0 cellpadding=3>"
    vor die while-Schleife und es sollte laufen!

    Kommentar


    • #3
      wow, fixe antwort. danke.
      nun zeigt er mir zwar den link zu den detail infos an. aber keinen namen und sonstigen einträge und auch die id zum deatailinfo link ist nicht vorhanden.

      also so:

      Es wurden 1 Datensätze gefunden.

      info

      das ist nun der geänderte code...

      PHP-Code:
      if (mysql_num_rows($result) >0)  {
      echo
      "<table width=100%  border=0  cellspacing=0 cellpadding=3>";
      while(
      $row mysql_fetch_object($result))  {
        {
            if(
      $Hintergrundfarbe=="white")
           {
               
      $Hintergrundfarbe="#AFC6D2";
           }
           else
           {
               
      $Hintergrundfarbe="white";
           }
           echo
      "<tr bgcolor=\"$Hintergrundfarbe\">",
               
      "<td width=7% class=textAdmin>",
               
      $Result->typ,
               
      "</td>",
               
      "<td width=19% class=textAdminBold>",
               
      $Result->name
               
      "&nbsp;",
               
      "",
               
      $Result->vorname,
               
      "</td>",
               
      "<td width=35% class=textAdmin>",
               
      $Result->firma,
               
      "</td>",
               
      "<td width=13% class=textAdmin>",
               
      $Result->ortg,
               
      "</td>",
               
      "<td width=13% class=textAdmin>",
               
      $Result->klasse,
               
      "</td>",
               
      "<td width=8% align=center class=schriftLink> ",
               
      "<a href=mitglied_detail.php?id=",$Result->id," class=textAdminGrossbuchstabenLink>info</a>",
               
      "</td>",
               
      "</tr>";
       }
       
       echo 
      "</table>";   
           }   }   else   { 
      PHP-Code:
      }  mysql_close($connection); 

      Kommentar


      • #4
        Original geschrieben von eatpixel
        nun zeigt er mir zwar den link zu den detail infos an. aber keinen namen und sonstigen einträge und auch die id zum deatailinfo link ist nicht vorhanden.
        setz' dein error_reporting auf E_ALL, aber flott ...


        deine variable, in die du den datensatz einliest, heißt $row, nicht $result.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          sorry, und problem gefixt...

          danke!
          natürlich muss es row und nicht result heissen!

          Kommentar

          Lädt...
          X