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

373 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
124 ms — deklarationer (db)
119 ms — hämta statistik (db)
128 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)