Beste,

Ik heb de onderstaande code:

<?php
foreach($wagen as $products) {
// Split
/*
$product[x] -->
x == 0 -> product id
x == 1 -> hoeveelheid
*/
$product = explode(",",$products);

// Get product info
$sql = "SELECT schoenen.id, schoenen.schoennaam, schoenen.prijs, schoenen.merk_id, merken.merknaam
FROM schoenen, merken
WHERE schoenen.id = ".$product[0]." AND schoenen.merk_id = merken.id"; // Weet je nog, uit die sessie

$query = mysql_query($sql) or die (mysql_error()."<br>in file ".__FILE__." on line ".__LINE__);

$i=1;
while ($row = mysql_fetch_assoc($query)) {

$id = $row['id'];
$merknaam = $row['merknaam'];
$prijs = $row['prijs'];
$schoennaam = $row['schoennaam'];
echo '
<INPUT type="hidden" NAME="itemNumber'.$i.'" VALUE="'.$id.'">
<INPUT type="hidden" NAME="itemDescription'.$i.'" VALUE="'.$schoennaam.'">
<INPUT type="hidden" NAME="itemQuantity'.$i.'" VALUE="'.$product[1].'">
<INPUT type="hidden" NAME="itemPrice'.$i.'" VALUE="'.($prijs*100).'">';
$i++;
}
}
?>

Er moet een hidden formulier gegenereerd worden op basis van de gegevens uit de sessie. Dat werkt prima. Alleen de veldnamen ($i) moeten met 1 opgehoogd worden. Nu blijft de waarde 1.

Alvast bedankt
Groet
Gert
komt omdat je 1 nergens aanmaakt

voor de foreach moet je even $i = 0; zetten
weet het even niet zeker, maar volgens mij moet je die ; weglaten achter $i++
Stefan van Iwaarden schreef op 13.10.2006 19:49
weet het even niet zeker, maar volgens mij moet je die ; weglaten achter $i++


Nee, je moet hem wel afsluiten dat klopt.

Maar wat Neb al zei je moet de var. $i even voor de foreach lus zetten..
en $i=1 weg halen.
Ik neem aan dat ik de $i dan voor de forech wel op 1 moet zetten
O, die op regel 18 had ik niet gezien ;-)

Wat er nu gebeurd is dat je bij iedere foreach 1 op 1 zet, vervolgens verhoog je hem onderaan met 1, dus is ie 2, en bij de volgende foreach zet je hem weer terug op 1.
Gert schreef op 13.10.2006 19:54
Ik neem aan dat ik de $i dan voor de forech wel op 1 moet zetten


of op 0
Zet $i=1; eens helemaal bovenin, for de foreach.

Reageren