Dringende hulp gezocht PHP/SQL!!
De afgelopen weken heb ik meerdere keren topics geplaatst betreft mijn probleem, ik ben er ondanks de wel behulpzame reacties nog niet steeds uitgekomen. Het project moet morgenvroeg af zijn. Daarom vraag ik jullie om hulp, mocht je me kunnen helpen stuur me dan een pm, er staat een vergoeding tegenover, alvast bedankt!!
Het probleem is als volgt:
Ik heb gebruik gemaakt van een tutorial voor een shopping cart ( https://www.allphptricks.com/simple-shopping-cart-using-php-and-mysql/ ).
Wanneer je iets toevoegt aan de shopping cart komt deze in een session. Wanneer je nog een product toevoegt komt deze in dezelfde session. Het doel is dat we de data in de shopping cart en persoonlijke gegevens (naw gegevens) naar een database sturen dmv een insert query. Alleen weet ik niet hoe dit moet als er meerdere producten in de shopping cart zitten (meerdere arrays).
** knip **
Gr. Gijs
Edit:
Nee, we gaan niet achter een topic om het probleem oplossen, tenzij het een Vacature is welke in het Vacatureforum hoort.
Gewijzigd op 29/03/2020 21:28:46 door - Ariën -
Dan zou je met foreach() je $_SESSION moeten doorlopen. En al die gevonden producten in je database plaatsen.
Hoi Ariën, ik heb zoiets al geprobeerd alleen ik kom er niet uit. Ik weet niet of jij het wilt doen, maar zou jij het voor me kunnen doen?
Heb je een simplistische output van je winkelwagen in je sessie? (kijk eens met print_r() )
De data van de session/shopping cart wil ik een query stoppen. er is een session[shoppingcart], daarin zit een code (naam product), quantity (hoeveelheid van het product) en price. Stel je hebt binnen een bestelling meerdere producten dan zijn er dus twee codes, prices en quantities. Ik wil deze eigenlijk in een row in de database krijgen, dus al die informatie in een insert query, maar dat lukt dus niet. En daarmee heb ik al allerlei verschillende manieren geprobeerd maar het wil maar niet lukken. En de tijd dringt want het moet morgen voor 8 uur ochtends ingeleverd zijn... En dit alles nu nog leren wordt het niet meer denk ik. Weet je wat ik bedoel als ik her probleem omschrijf nu?
Als je met eens met een simplistische dump van je $_SESSION komt, dan kunnen we eens kijken.
Wat bedoel je daarmee? Ik kan de code wel delen?
Gewijzigd op 29/03/2020 21:52:20 door - Ariën -
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
43
44
45
46
47
48
49
50
51
52
53
54
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
Array
(
[username] => loet
[functie] => b
[shopping_cart] => Array
(
[broodjesonmez] => Array
(
[name] => Broodje Sonmez
=> broodjesonmez
[price] => 4.00
[quantity] => 10
[image] => kar.png
)
)
)
Bij twee producten geeft het dit:
Array
(
[username] => loet
[functie] => b
[shopping_cart] => Array
(
[broodjesonmez] => Array
(
[name] => Broodje Sonmez
=> broodjesonmez
[price] => 4.00
[quantity] => 10
[image] => kar.png
)
[shoarmaschotel,klein] => Array
(
[name] => Shoarma schotel, klein
=> shoarmaschotel,klein
[price] => 10.50
[quantity] => 1
[image] => kar.png
)
)
)
[size=xsmall][i]Toevoeging op 29/03/2020 21:56:57:[/i][/size]
De username en functie hebben met iets anders te maken.
(
[username] => loet
[functie] => b
[shopping_cart] => Array
(
[broodjesonmez] => Array
(
[name] => Broodje Sonmez
=> broodjesonmez
[price] => 4.00
[quantity] => 10
[image] => kar.png
)
)
)
Bij twee producten geeft het dit:
Array
(
[username] => loet
[functie] => b
[shopping_cart] => Array
(
[broodjesonmez] => Array
(
[name] => Broodje Sonmez
=> broodjesonmez
[price] => 4.00
[quantity] => 10
[image] => kar.png
)
[shoarmaschotel,klein] => Array
(
[name] => Shoarma schotel, klein
=> shoarmaschotel,klein
[price] => 10.50
[quantity] => 1
[image] => kar.png
)
)
)
[size=xsmall][i]Toevoeging op 29/03/2020 21:56:57:[/i][/size]
De username en functie hebben met iets anders te maken.
Gewijzigd op 29/03/2020 22:06:09 door - Ariën -
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
foreach($_SESSION['shopping_cart'] as $product) {
// hier je INSERT INTO query
// In $product['name'] zit je productnaam
// In $product['price'] zit je prijs
// etc...
}
?>
foreach($_SESSION['shopping_cart'] as $product) {
// hier je INSERT INTO query
// In $product['name'] zit je productnaam
// In $product['price'] zit je prijs
// etc...
}
?>
Niet gelukt....
Oh.....
Ik zal de code sturen, misschien zie jij wat er fout is
Vertel er ook even bij wat er precies fout gaat, en wat er gebeurt.
Gewijzigd op 29/03/2020 22:40:24 door - Ariën -
Hoe zet je code in de reacties?
A.u.b. wel relavante code (+/- tot 30 regels)
Gewijzigd op 29/03/2020 22:42:03 door - Ariën -
Toevoeging op 29/03/2020 22:45:38:
De actie (heet tijdelijk login):
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
if(isset($_GET['action']) && ($_GET['action'] == "login")){
foreach ($_SESSION["shopping_cart"] as $product){
$code = $product["code"];
$price = $product["price"];
$quantity = $product["quantity"];
$sql ="INSERT INTO `bestellingen`(`code`, `hoeveelheid`, `status`, 'prijs') VALUES ('$code','$quantity','nieuw','$price'";
mysqli_query($connectie, $sql );
}
}
?>
foreach ($_SESSION["shopping_cart"] as $product){
$code = $product["code"];
$price = $product["price"];
$quantity = $product["quantity"];
$sql ="INSERT INTO `bestellingen`(`code`, `hoeveelheid`, `status`, 'prijs') VALUES ('$code','$quantity','nieuw','$price'";
mysqli_query($connectie, $sql );
}
}
?>
Form:
Code (php)
1
2
3
2
3
<form name="form3" action="cart.php?action=login" method="post">
<button type="submit" name="login" value="login">Voeg filiaal toe</button></br>
</form>
<button type="submit" name="login" value="login">Voeg filiaal toe</button></br>
</form>
Toevoeging op 29/03/2020 22:46:41:
wat er fout gaat: Hij voert de query gewoon niet uit.
Gewijzigd op 29/03/2020 22:42:58 door Gijs Marien
En zorg dat je goede foutafhandeling hebt:
Code (php)
Persoonlijk raad ik wel aan om de waardes in je query te escapen met mysqli_real_escape_string(). Als er een ' of een ander schadelijk teken in voorkomt, dan is je query corrupt.
Gewijzigd op 29/03/2020 22:53:24 door - Ariën -
Nog steeds niks..
Die zou je moeten zien.
Worden je GET-paramters in de URL wel meegestuurd?
Smijt anders even op elke plek in je code een unieke stuk tekst zodat je kan zien hoe je script loopt. Dan weet je ook waar het uiteindelijk doodloopt.
Een kwestie van debuggen!
Gewijzigd op 29/03/2020 22:58:09 door - Ariën -
Toevoeging op 29/03/2020 23:00:47:
Zal ik de gehele code eens sturen? Ik kan je ook toegang geven tot de code.