PHP-Einsteigerproblem: Bildergalerie klappt nicht

Dieses Thema PHP-Einsteigerproblem: Bildergalerie klappt nicht im Forum "Windows XP Forum" wurde erstellt von Steve77-1, 29. Mai 2005.

Thema: PHP-Einsteigerproblem: Bildergalerie klappt nicht Hallo! Ich lerne gerade erst PHP und habe mich lehrbuchunabhängig mal an eine eigene, sehr einfache Bildergalerie...

  1. Hallo!

    Ich lerne gerade erst PHP und habe mich lehrbuchunabhängig mal an eine eigene, sehr einfache Bildergalerie gewagt, in der aber leider irgendwo ein Haken ist.

    Die Galerie basiert z.Zt. auf folgenden Grundlagen:
    - die Bilderanzahl lege ich über die Variable $anzahl fest
    - ausgegeben sollen die Bilder in einer Tabelle mit je 4 Reihen und 3 Spalten
    - zu jedem Bild gibt es eine Thumb-Datei (_t) und eine normale, die Dateien sind von 1.jpg bis ??.jpg durchnummeriert, wodurch ich ja eigentlich mit nem schlichten $i++ weiterkommen müßte, oder?

    Hier mein Versuch:

    Code:
    <html>
    <head>
    <title>Titel</title>
    </head>
    <body>
    <table width=660 cellpadding=2 cellspacing=2 border=1 bordercolor=#FFFFFF>
    <?php
    	$anzahl = 12;                  // Anzahl der Bilddateien
    	for ($i = 1; $i <= $anzahl; $i++)
    	{
    	for ($r = 1; $r <= 4; $r++)   // 4 Reihen sollen aufgebaut werden
    	{
    	echo 	<tr>\n;
    	for ($s = 1; $s <=3; $s++)   // mit je 3 Spalten
    	         {
    	         echo           <td width=\220\ height=\170\ align=\center\ valign=\middle\>;
    	         echo <a href=\http://www.bildquelle.de/pics/$i.jpg\><img src=\http://www.bildquelle.de/pics/$i_t.jpg\ width=\200\ border=\0\></a>;
    	         echo </td>\n;
    	         }
    	echo 	</tr>\n;
    	}
    ?>
    </table>
    </body>
    </html>
    
    Wo ist der Haken?

    Ideal wäre es natürlich, wenn ich das Script nicht immer im Hinblick auf die Bilderanzahl anpassen müßte, sondern es automatisch ausgelesen werden könnte und es sich auch zeilenmäßig automatisch anpasst. Vorgabe sollen nur die 3 Thumbs je Reihe sein, die ich jedoch nicht über PHP generieren brauche, da sie bereits als fertige Grafiken vorliegen.

    Schwachstelle #2 ergibt sich bei einer Dateianzahl, die nicht durch 3 teilbar ist: Bei nur 10 Grafiken hätte ich z.B. 2 rote x am Ende. Ich vermute mal, daß man hier eine Schleife mit der Modulo-Funktion basteln kann, aber wie!?

    Es wäre super, wenn mir da wer weiterhelfen könnte. Für geübte PHPler ist dies vermutlich ein banales Problem, aber als Einsteiger, der bisher nur fit in HTML/CSS ist, muß man sich erst richtig reindenken können...

    Danke im Voraus!!

    Steve
     
  2. Hast Du das schon mal getestet?
    Du schachtelst hier drei Schleifen. Auf den ersten Blick würde sagen, Du baust Dir eine Tabelle mit 12 * 4 Reihen * 3 Spalten auf.
    IMHO wäre es besser, die äussere Schleife wegzulasen und dafür in der inneren mit einer Zählvariablen zu arbeiten.
    Also so etwas
    Code:
    <?php
    $anzahl = 12;         // Anzahl der Bilddateien
    $i = 0;               //Zähler
    for ($r = 1; $r <= 4; $r++)  // 4 Reihen sollen aufgebaut werden
    {
    echo  <tr>\n;
    for ($s = 1; $s <=3; $s++)  // mit je 3 Spalten
         {
         $i = $i + 1;
         echo      <td width=\220\ height=\170\ align=\center\ valign=\middle\>;
         echo <a href=\http://www.bildquelle.de/pics/$i.jpg\><img src=\http://www.bildquelle.de/pics/$i_t.jpg\ width=\200\ border=\0\></a>;
         echo </td>\n;
         }
    echo  </tr>\n;
    }
    ?>
    Wenn mich nicht alles täuscht, fehlen bei Deinem Beispiel auch noch schliessende Klammern.

    Eddie
     
  3. Schau dir mal dies an:
    http://www.wintotal-forum.de/index.php/topic,61845.msg346504.html#msg346504

    gruss conny

    Nachtrag:

    Dein Bsp. würde ich allerdings so gestalten.
    Code:
    <html>
    <head>
    <title>Titel</title>
    </head>
    <body>
    <table width=660 cellpadding=2 cellspacing=2 border=1 bordercolor=#FFFFFF>
     <tr>
    <?php
    $anzahl = 12;         // Anzahl der Bilddateien
    for ($i = 0; $i < $anzahl; $i++) {
    	if($i % 3 == 0) echo </tr><tr>;
    	echo <td width=\220\ height=\170\ align=\center\ valign=\middle\>
    		  <a href=\http://www.bildquelle.de/pics/$i.jpg\><img src=\http://www.bildquelle.de/pics/$i_t.jpg\ width=\200\ border=\0\></a>
    		 </td>\n;
    }
    ?>
     </tr>
    </table>
    </body>
    </html>
    
     
Die Seite wird geladen...

PHP-Einsteigerproblem: Bildergalerie klappt nicht - Ähnliche Themen

Forum Datum
Bildergalerie erstellen Windows XP Forum 10. Jan. 2007
Bildergalerie/Slideshow in Video umwandeln Audio, Video und Brennen 28. Feb. 2006
Bildergalerien downloaden? Wie? Software: Empfehlungen, Gesuche & Problemlösungen 17. Feb. 2006
Bildergalerie und Tonmaterial auf DVD Audio, Video und Brennen 9. Jan. 2005
Bildergalerie mit PHP/JavaScript Webentwicklung, Hosting & Programmierung 2. Juni 2003