Php winkelkarretje de prijs uit de database word niet weergegeven.
Ik ben nog niet super ervaren maar ben bezig met een winkelkarretje en een productpagina.
Als ik op toevoegen aan winkelkarretje klik word hij netjes toegevoegd in een $_SESSION array.
In die array sla ik alleen het product_id en de quantity op. Vervolgens haal ik de naam en prijs uit de database.
De naam van elk item word keurig weergegeven alleen de prijs blijft 0.00. Weet iemand waarom?
Alvast bedankt voor jullie tijd en reacties.
Hieronder de code voor de "user view" van het winkelkarretje die mij het relevants lijkt.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// Render cart for userview
$cartoutput = "";
$cart_total = "";
if (!isset($_SESSION['cart_array']) || count($_SESSION['cart_array']) < 1) {
$cartoutput = '<h3 align="center">Uw winkelkarretje is leeg</h3>';
} else {
$i = 0;
foreach ($_SESSION['cart_array'] as $each_item)
{
$id = $each_item['id'];
$sql = "SELECT * FROM producten WHERE id='$id' LIMIT 1";
$result = mysqli_query($dbc, $sql);
while ($row = mysqli_fetch_array($result)) {
$name = $row['name'];
$price = $row['price'];
}
$price = number_format($row['price'], 2);
$price_total = $price * $each_item['qty'];
$price_total = number_format($price_total, 2);
$cart_total = $price_total + $cart_total;
$cart_total = number_format($cart_total, 2);
// Dynamic table row assembly
$cartoutput .= '<tr>';
$cartoutput .= '<td>' . $name . '</td>';
$cartoutput .= '<td>' . $price . '</td>';
$cartoutput .= '<td><form action="cart.php" method="post">
<input name="qty" id="qty" type="text" value="' . $each_item['qty'] . '" size="1" maxlength="2" />
<input name="adjustBtn' . $id . '" type="submit" value="Wijzigen" />
<input name="item_to_adjust" type="hidden" value="' . $id . '" />
</form></td>';
$cartoutput .= '<td>' . $price_total . '</td>';
$cartoutput .= '<td><form action="cart.php" method="post"><input name="deleteBtn' . $id . '" type="submit" value="X" /><input name="index_to_remove" type="hidden" value="' . $i . '" /></form></td>';
$cartoutput .= '</tr>';
$i++;
}
}
// View shoppingcart
?>
$cartoutput = "";
$cart_total = "";
if (!isset($_SESSION['cart_array']) || count($_SESSION['cart_array']) < 1) {
$cartoutput = '<h3 align="center">Uw winkelkarretje is leeg</h3>';
} else {
$i = 0;
foreach ($_SESSION['cart_array'] as $each_item)
{
$id = $each_item['id'];
$sql = "SELECT * FROM producten WHERE id='$id' LIMIT 1";
$result = mysqli_query($dbc, $sql);
while ($row = mysqli_fetch_array($result)) {
$name = $row['name'];
$price = $row['price'];
}
$price = number_format($row['price'], 2);
$price_total = $price * $each_item['qty'];
$price_total = number_format($price_total, 2);
$cart_total = $price_total + $cart_total;
$cart_total = number_format($cart_total, 2);
// Dynamic table row assembly
$cartoutput .= '<tr>';
$cartoutput .= '<td>' . $name . '</td>';
$cartoutput .= '<td>' . $price . '</td>';
$cartoutput .= '<td><form action="cart.php" method="post">
<input name="qty" id="qty" type="text" value="' . $each_item['qty'] . '" size="1" maxlength="2" />
<input name="adjustBtn' . $id . '" type="submit" value="Wijzigen" />
<input name="item_to_adjust" type="hidden" value="' . $id . '" />
</form></td>';
$cartoutput .= '<td>' . $price_total . '</td>';
$cartoutput .= '<td><form action="cart.php" method="post"><input name="deleteBtn' . $id . '" type="submit" value="X" /><input name="index_to_remove" type="hidden" value="' . $i . '" /></form></td>';
$cartoutput .= '</tr>';
$i++;
}
}
// View shoppingcart
?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<br />
<table width="57%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="20%" bgcolor="#C5DFFA"><strong>Productnaam</strong></td>
<td width="10%" bgcolor="#C5DFFA"><strong>Prijs</strong></td>
<td width="9%" bgcolor="#C5DFFA"><strong>Aantal</strong></td>
<td width="9%" bgcolor="#C5DFFA"><strong>Totaal Prijs</strong></td>
<td width="9%" bgcolor="#C5DFFA"><strong>Verwijderen</strong></td>
</tr>
<?php echo $cartoutput; ?>
</table>
<?php echo $cart_total; ?>
<br />
<br />
<br />
<br />
<a href="cart.php?action=emptycart">Leeg uw winkelkarretje</a>
<table width="57%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="20%" bgcolor="#C5DFFA"><strong>Productnaam</strong></td>
<td width="10%" bgcolor="#C5DFFA"><strong>Prijs</strong></td>
<td width="9%" bgcolor="#C5DFFA"><strong>Aantal</strong></td>
<td width="9%" bgcolor="#C5DFFA"><strong>Totaal Prijs</strong></td>
<td width="9%" bgcolor="#C5DFFA"><strong>Verwijderen</strong></td>
</tr>
<?php echo $cartoutput; ?>
</table>
<?php echo $cart_total; ?>
<br />
<br />
<br />
<br />
<a href="cart.php?action=emptycart">Leeg uw winkelkarretje</a>
Toevoeging op 07/10/2016 05:11:20:
Goeiemorgen jos,
heb het zelf al gevonden het zat hem hier in:
$price = $row['price'];
}
$price = number_format($row['price'], 2);
Deze mag weer gesloten worden.
Gewijzigd op 07/10/2016 05:03:47 door Jos Duis
Er zijn nog geen reacties op dit bericht.