login  Naam:   Wachtwoord: 
Registreer je!
 Forum

$_SESSION updaten (Opgelost)

Offline Tuinman - 14/04/2009 10:19 (laatste wijziging 14/04/2009 10:20)
Avatar van TuinmanNieuw lid Ey Allemaal,

Ik zit met een probleempje.
Ik ben bezig met een winkelwagenscriptje, alleen nu wil ik dat gebruikers het aantal kunnen aanpassen zonder tussenkomst van het drukken op een update knop.
Nu heb ik al een begin gemaakt met AJAX functie alleen nu update hij niet echt de session.

Dit is mijn opbouw van mijn session:
  1. $rand_name= rand(0,999999999);
  2.  
  3. $_SESSION['winkelwagen'][$rand_name] = array(
  4. 'afmeting' => $_POST["afmeting"], 'prijs' => $_POST["prijs"],
  5. 'aantal' => $_POST["aantal"], 'elastiek' => $_POST["elastiek"], 'koord' => $_POST["koord"], 'afbeelding' => $_POST["afbeelding"] );


Dit is mijn AJAX function:
  1. function createRequestObject() {
  2.  
  3. var req;
  4.  
  5. if(window.XMLHttpRequest){
  6. req = new XMLHttpRequest();
  7. } else if(window.ActiveXObject) {
  8. req = new ActiveXObject("Microsoft.XMLHTTP");
  9. } else {
  10. alert('Problem creating the XMLHttpRequest object');
  11. }
  12.  
  13. return req;
  14.  
  15. }
  16.  
  17. var http = createRequestObject();
  18.  
  19. function update(key) {
  20.  
  21. var aantal = document.getElementById('aantal_'+key).value;
  22.  
  23. http.open('get', 'update.php?aantal='+aantal+'&key='+key, true);
  24. http.onreadystatechange = handleResponse;
  25. http.send(null);
  26.  
  27. }
  28.  
  29. function handleResponse() {
  30.  
  31. if(http.readyState == 4 && http.status == 200){
  32. if(http.responseText) {
  33. document.getElementById("error").innerHTML = http.responseText;
  34. } else {
  35. document.getElementById("error").innerHTML = "error";
  36. }
  37.  
  38. } else {
  39. document.getElementById("error").innerHTML = "error";
  40. }
  41.  
  42. }


Dit is mijn update function:
  1. if($_GET['aantal'] != "" && $_GET['key'] != "")
  2. {
  3. $_SESSION['winkelwagen'][$_GET['key']] = array(
  4. 'aantal' => $_GET["aantal"]
  5. );
  6. //print_r ($_SESSION['winkelwagen']);
  7. }


De function wordt aangeroepen in de onchange function van het input field maar dat is niet echt nodig om hier te posten.
Nu de vraag aan jullie kunnen jullie mij helpen.

Greetz Tuinman

ps sorry voor de lange code post.

6 antwoorden

Gesponsorde links
Offline Richard - 14/04/2009 10:20
Avatar van Richard Crew algemeen En waar staat session_start()?  
Offline Tuinman - 14/04/2009 10:21
Avatar van Tuinman Nieuw lid Deze staat boven aan de pagina.
En nee die ben ik niet vergeten 

Greetz
Offline Richard - 14/04/2009 10:26
Avatar van Richard Crew algemeen Dan is dit dus niet al je code?
Offline Tuinman - 14/04/2009 11:15 (laatste wijziging 14/04/2009 11:20)
Avatar van Tuinman Nieuw lid nee maar dit zijn de belangrijkste delen van mijn die echt belangrijk zijn om de alles te laten werken maar kan wel even een link neer zetten met volledige codes.

winkelwagen: Plaatscode: 135992
AJAX functions: Plaatscode: 135993
Update pagina: Plaatscode: 135994

Greetz
Offline Richard - 14/04/2009 11:26
Avatar van Richard Crew algemeen Ik zie bovenaan je update pagina toch echt geen session_start() staan...
Offline Tuinman - 14/04/2009 11:29 (laatste wijziging 14/04/2009 11:41)
Avatar van Tuinman Nieuw lid
Citaat:
OKe je hebt gelijk wat betreft de session_start alleen nu word heel de array overschreven en ben ik al mijn records die in de array stonden kwijt hoe kan ik er voor zorgen dat alleen aantal wordt geupdate?

Greetz


Reeds opgelost door een foreach loop te gebruiken om gegevens uit te lezen en vervolgens aan te passen.

Bedankt voor die session_start 

Greetz
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.355s