als 1 product aan het winkel mandje toevoeg en daar vervolgens het aantal van verander en dan op herbereken druk wordt ook inderdaad het aantal veranderd, als ik nu 2 of meer artikelen in het winkel mandje en op herbereken druk dan wordt alleen de laatste bij gewerkt. Elk aantal veld heeft een als ik het goed gedaan heb een combinatie van ID en aantal, de waardes worden in een array opgeslagen. Ik vermoet dat het fout gaat bij het toevoegen van de waarde in een array. Wie weet wat ik hier fout doe? Ik heb alle functies van en array bekeken maar er werkt er geen 1, ik denk dat het toevoegen van de nieuwe waarden iet goed gaat.
code:
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
| <?php error_reporting(E_ALL); session_start(); // kijken of array bestaad, zo niet 1 aanmaken if (!isset($_SESSION['mandje'])) { $_SESSION['mandje'] = array(); } if ($_GET['Submit'] == 'Herbereken') { $arraycount = count($_SESSION['mandje']); for ($i = 0; $i < $arraycount; $i++) { array_fill ($_SESSION['mandje'][$_GET['pid']] = $_GET['aantal_product']); } } elseif (!$_GET['Submit'] == 'Herbereken') { $aid = $_GET['artikel_id']; } if (!in_array($aid, $_SESSION['mandje'])) { $_SESSION['mandje'][$aid] = 1; foreach ($_SESSION['mandje'] as $id => $aantal) { AddedProduct($id, $aantal); } } elseif (in_array($aid, $_SESSION['mandje'])) { foreach ($_SESSION['mandje'] as $id => $aantal) { AddedProduct($id, $aantal); } echo "bestaal al"; } function AddedProduct($fid, $faantal) { $DBserver = 'localhost'; //Database server $DBuser = 'user'; //Database gebruiker $DBpass = 'password'; //Database wachtwoord $DBname = 'database'; //Database naam //Verbinding maken met de database en tabellen laten genereren $DBconnect = mysql_connect($DBserver, $DBuser, $DBpass); mysql_select_db($DBname, $DBconnect); $artikelen_sql = "SELECT * FROM artikelen WHERE ID =" . $fid; $artikelen_result = mysql_query($artikelen_sql); while ($artikelen = mysql_fetch_array($artikelen_result)) { ?> <form name="producten" method="get" action="toevoegen.php"> <table width="800" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="188"><?php echo $artikelen['Merk']; ?></td> <td width="188"><?php echo $artikelen['Product']; ?></td> <td width="132"><?php echo $artikelen['Inhoud']; ?></td> <td width="132"><?php echo $artikelen['Prijs']; ?></td> <td width="86">Aantal: <input name="aantal_product" type="text" value="<?php echo $faantal; ?>" size="2" maxlength="3"> </td> <td width="74">€ <?php $sub_totaal = $artikelen['Prijs'] * $faantal; echo $sub_totaal; ?> <input name="pid" type="hidden" value="<?php echo $fid; ?>"></td> </tr> </table> <?php global $fid; global $totaal; $totaal = $totaal + $sub_totaal; } } echo "<br><b> Totaal prijs: €" . $totaal . "<b>"; @mysql_close(); ?> <br> <input type="submit" name="Submit" value="Herbereken"> </form> </body> </html> |