while und for – Logikproblem

crashx

Erfahrenes Mitglied
Hallo mal wieder.
Ich habe ein kleineres problemchen und zwar folgendes:

Ich habe eine MySQL Tabelle mit den Spalten: bild1, bild2, bild3, bild4, bild5, usw.
Nun will ich die Bilder ausgeben aber mir den Quelltext übersichtlich lassen.
Nun habe ich mir gedacht gehst du folgend vor.
Ausgabe über normale while schleife und über die for Schleife zählst du einfach hoch.
Theorie und Praxis stimmen bei mir so wieso nicht immer ;)

PHP:
<? 
$sql = "
SELECT *
FROM `fzdata`
WHERE `id` = '".mysql_real_escape_string($_GET['id'])."' 
       ";
$result = mysql_query($sql);
									
	while ($row = mysql_fetch_assoc($result)) 
		{ 
			for($count = 1; $count < 7; $count++) //die Zahl wird Individuel angepasst, jenachdem wie viel Bilder bzw. spalten es gibt
   				{ ?>

					<table><tr><td><img src="<? echo $row['url'].$row['bild$count']; ?>" width="180"></td></tr></table>
			     <? } 
		} ?>

Na ja das es so nicht geht, habe ich schon beim Schreiben gedacht.
Vielleicht kann mir jemand ein wenig hilfestellung geben.

Gruz
 
Vorschlag:
PHP:
<table>
<? 
    $sql = 'SELECT 
                       *
            FROM 
                       `fzdata`
            WHERE 
                       `id` = "'.mysql_real_escape_string($_GET['id']).'" 
           ';

     $result = mysql_query($sql);
     
     $i=0;                                    
     while ($row = mysql_fetch_assoc($result)) { 

         echo '<tr><td><img src="'.$row['url'].$row['bild'].$i.'" width="180"></td></tr>';
     $i++                
     }

?>
</table>
 
@RS9999

Das geht nicht so wie es sollte.

Lösung:

PHP:
<?  
$sql = " 
SELECT * 
FROM `fzdata` 
WHERE `id` = '".mysql_real_escape_string($_GET['id'])."'  
       "; 
$result = mysql_query($sql); 
                                     
    while ($row = mysql_fetch_assoc($result))  
        {  
            for($count = 1; $count < 7; $count++) //die Zahl wird Individuel angepasst, jenachdem wie viel Bilder bzw. spalten es gibt 
                   { 
                   $bild = 'bild'.$count;
                   ?> 

                    <table><tr><td><img src="<? echo $row['url'].$row[$bild]; ?>" width="180"></td></tr></table> 
                 <? }  
        } ?>

In dieser funktionsweise brauche ich es ;)

Gruz
 
Zurück