Ik heb een klein stukje van mijn script, maar als ik probeer verschillende producten in de winkelwagen session te leggen dan laat hij er maar 1 zien, en als ik bijvoorbeeld 3 verschillende dingen bestel voegd hij alleen de laatste toe.

Kan iemand mij hier mee helpen a.u.b

<?php
session_start();

if(isset($_POST['bestel'])){

$artikel1 = "Artikel Naam: ".$_POST['artname']."<br>";
$artikel1 .= "Artikel Prijs: ".$_POST['artprice']."<br>";
$_SESSION['artikel'] = $artikel1;

?>
@Robin, of je het helemaal handig opslaat valt te betwijfelen, maar ok.

Je moet hem wel met een foreach loop uitlezen, dan zou alles moeten verschijnen.

maar daarnaast wil ik je aanraden om toch eens te kijken of je niets met een database kunt doen, want dat werkt in veel gevallen toch behoorlijk wat makkelijker, en moeilijk is het niet.
als je dit in sessions wilt doen kan het beter zo:

<?php
$_SESSION['artikel'] = array();
// en toevoegen
$_SESSION['artikel'][] = "artikel ding 1";
$_SESSION['artikel'][] = "artikel ding 2";
?>


gr. leroy
Ok dan ga ik een met db aan de gang, maar hoe kan ik opslaan wie er wat heeft ingezet ( ik wil namenlijk geen login system erbij draaien )

zou ik dit d.m.v. het IP adres van de gebruiker kunnen doen?
@Robin, je kan dit mijn inziens op twee manieren doen.

Inderdaad via ip.

En eventueel om degene met wisselend ip adres op te vangen zou je ook nog een soort van key/id per user aan kunnen maken die iets in zijn winkelwagen legt, deze zet je in de database en in een cookie.

Zo kun je dan eventueel controleren op ip / cookie / of beide.
Beste Robin,

Ik doe het altijd zo:
ik maak een sessie, vraag het session_id() op. en zet dat session_id in de db
en aande hand van dat sessie id kun je de artikelen weer uitlezen uit de database.

Reageren