17. oktober 2004 - 00:38
Der er
9 kommentarer
Udskrive MySQL værdier i rækkefølge
Hej. Jeg hiver nogle informationern ud fra en tabel, og så skal den indsætte alle informatinoner sådan så den udskriver: echo "<td><img border="0" src="../billeder/$name" ></td>"; dette skal den skrive for de første 4, og så skal der skrives echo"</tr><tr>"; og så skal der udskrives 4 billeder igen, og så </tr><tr> osv osv.. Hvordan gørs det? p.s. jeg hiver informationerne ud sådan her: $result = mysql_query("SELECT `Name`, `DownloadID`, `Size` FROM `brugergalleri` ORDER BY `Size` ") or die(mysql_error());
Annonceindlæg fra Deloitte
17. oktober 2004 - 00:43
#1
Kort eksempel som du selv kan udvide ;) $i = 0; while ( $row = mysql_fetch_assoc( $result ) ) { if ( $i != 0 && $i++ % 4 == 0 ) { echo "</tr><tr>"; } }
17. oktober 2004 - 00:47
#2
tak.. men hvor skal jeg skrive: echo "<td><img border="0" src="../billeder/$name" ></td>"; p.s. skriv lige et svar.. :-)
17. oktober 2004 - 00:58
#3
Hele koden kunne se ud i stil med: $result = mysql_query("SELECT `Name`, `DownloadID`, `Size` FROM `brugergalleri` ORDER BY `Size` ") or die(mysql_error()); $i = 0; if ( mysql_num_rows( $result ) > 0 ) { echo "<table><tr>"; while ( $row = mysql_fetch_assoc( $result ) ) { if ( $i != 0 && $i++ % 4 == 0 ) { echo "</tr><tr>"; } echo "<td><img border="0" src="../billeder/$name" ></td>"; } while ( $i++ % 4 != 0 ) { echo "<td></td>"; } echo "</table>"; } else { echo "Ingen rækker"; }
17. oktober 2004 - 00:58
#4
$name burde så bare være $row[name] eller lignende :)
17. oktober 2004 - 00:59
#5
Ja, burde nok se sådan ud: echo "<td><img border=\"0\" src=\"../billeder/$row[name]\" ></td>";
17. oktober 2004 - 01:04
#6
Den skifter ikke linie, den bliver på samme linie.. :-(
17. oktober 2004 - 02:42
#7
Ah ja, my bad, if-sætningen ændres til: if ( $i++ % 4 == 0 && $i != 0 )
17. oktober 2004 - 02:47
#8
1000 TAK!! Nu virker lortet!Men hvis du gider, vil du så ikke lige forklare den der if sætning, jeg vil godt lige fatte hvad der skete..
17. oktober 2004 - 14:10
#9
Jeg startede med at sætte $i til 0, og PHP laver "lazy evaluation", når den når til en if-sætning som: if ( $i != 0 && $i++ % 4 == 0 ) Så evaluerer den kun at $i == 0, altså er den if-sætning falsk allerede dér, og resten vil ikke blive evalueret. Så jeg byttede om, og så vil det virke ;)
Vi tilbyder markedets bedste kurser inden for webudvikling