Schleife in Tabelle

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

  • Schleife in Tabelle

    Hi,

    ich weiß, mein Code ist nicht gerade schön formatiert. Ich möchte gerne Bilder aus eine DB in eine Tabelle laden. Dabei sollten aber immer 5 Bilder in einer Reihe sein und wenn diese voll ist, die nächste Reihe angefangen werden.

    Ich hatte schonmal einen Code, auch mit LIMIT, da hatte er mir immer die ersten 5 Bilder angezeigt, aber mehr nicht.

    Ich schaffs einfach nicht.

    Hier der Code

    PHP-Code:
    <form method="post" action="details2.php">
    <table border="0" width="100%" cellpadding="5" cellspacing="5">
    <? $result=mysql_query("SELECT * FROM galerie WHERE name LIKE '".$HTTP_POST_VARS["galerie"]."'");
    while ($row = mysql_fetch_object($result))
     {?> <tr> <?
     while($i < 5) {
      $titel = $row -> titel;
      $bild  = $row -> bild;
      $text  = $row -> text;
      ?>
     <td><a href="details.php" target="_new">
    <img src="<? echo $bild ?>" width="100" height="100">
    </a></td>
    <? $i++; if($i=4) { ?> </tr> <? $i=0; }}}?>
    </table> 
     </form>
    Danke im Voraus

  • #2
    musst ma im forum hier suchen da gibts mehr solcher themen zu diesbetreffend ...
    tutorial: peterkropff.de schattenbaum.de tut.php-quake.net
    documentation: php.net mysql.com framework.zend.com

    Die Nachtwache!

    Kommentar


    • #3
      Ich dachte, dass du 5 Bilder in einer Reihe haben willst ^^

      Kommentar


      • #4
        Ja, wollte ich eigentlich schon. Wieso? Habe ich irgendwo einen Denkfehler?

        Kommentar


        • #5
          Hallo,

          die innere While-schleife ist fehl am platz, du musst $i mit if prüfen und wenn $i > 5 gibts du <\tr><tr> und setzt $i zurück auf 0.

          $i zählst ansonsten ganz normal in der while($row =...)-Schleife hoch.
          Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
          Schön - etwas Geschichte kann ja nicht schaden.
          Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

          Kommentar


          • #6
            Vielen Dank,

            aber ich habs jetzt auch so hinbekommen. Ist glaub ich sogar die gleiche Lösung.

            Trotzdem vielen Dank..

            Falls jmd das gleiche Problem hat:

            PHP-Code:
            <? $result=mysql_query("SELECT * FROM galerie WHERE name LIKE 'Italien 2004'");             
            $i=0; ?> <tr> <?
            while($row = mysql_fetch_object($result)) {
            $titel = $row -> titel;
            $bild  = $row -> bild;
            $text  = $row -> text;
            if($i>4) {
            $i=0;?>
            </tr><tr><td><img src="<? echo $bild ?>" width="100" height="100"></td><?
            }
            else
            { ?> 
            <td><img src="<? echo $bild ?>" width="100" height="100"></td>
            <? 
            $i++; 
            }
            }?>

            Kommentar


            • #7
              ist sinngemäß praktisch das gleiche

              du musst nur ganz zum Schluss noch mit </tr> die zeile zumachen und wenn ich's grob überfliege, dann dürfte deine Tabelle noch fehlerhaft sein wenn du z.B. 6, 7, 8 oder 9 Bilder rausbekommst, weil da nämlich dementsprechend <td>'s in der letzten Tabellenzeile fehlen dürften....
              Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
              Schön - etwas Geschichte kann ja nicht schaden.
              Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

              Kommentar

              Lädt...
              X