webForumDet fria alternativet

visa produkter

PHP

3 svar · 781 visningar · startad av Emil W

Medlem sedan mars 2009512 inlägg
Frågan#1

Hejsan jag har läst om for loop men jag förstår inte riktigt.

Jag skulle vilja visa 3 produkter per rad
från tabellen i databasen, men jag vet ej hur man ska hämta från databasen när man ska skriv ut med en for loop att dom hamnar 3 produkter per rad.

Medlem sedan jan. 2005953 inlägg
#2

Man kan t.ex. ha en variabel vars värde ökar med 1 för varje varv i loopen, och med hjälp av modulo-operatorn (%) kontrollera om det är dags att göra en ny rad.

Ett enkelt exempel som du kanske kan ta hjälp av för att lösa ditt problem:

<?php
for ($i=1; $i<=10; $i++) {
	echo $i . ' ';
	if ($i % 3 == 0) echo '<br />';	
}
?>
Medlem sedan feb. 20034 441 inlägg
#3

Om du ska skriva ut rader från din databas, använd while istället. Ska du t.ex. skriva ut en tabell med formulärsfält kan man använda sig av principen ovan. Vill du visa tre produkter per rad som du skriver är det absolut enklaste att använda en vanlig while tillsammans med en räknare som gör en radbrytning när du kommer till tre:

$i = 1;
while($res = mysql_fetch_assoc($result)){
	echo $res['name'] . ", ";
	if($i == 3){
		echo "<br />"; 
		$i = 0;
	}
	$i++;
}
Medlem sedan mars 2009512 inlägg
#4

Tack för hjälpen

263 ms totalt · 4 externa anrop · v20260731065814-full.868a69e5
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)