Klanten sessie wordt niet aangevuld

  • Hi,


    Ik ben bezig met een reservering proces voor de bezoekers die spullen aan hun reservering toevoegen.
    Echt vult hij de array niet op met de aangegeven waarde, krijg hier ook geen foutmelding op terug tijdens debuggen.


    Wanneer worden die code functies nou eens gemaakt, ik ga tot die tijd alles gewoon extern plaatsen!
    code: http://plaatscode.be/141968/
    Pass: icts


    Er wordt een sessie met de naam 'customer' op de hoofdpagina aangemaakt al voor de bezoeker de website kan doorzoeken.
    Tijdens een var_dump is deze dus ook zichtbaar actief, enkel kan ik deze met de bovenstaande code niet aanvullen.


    Iemand een idee?

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Hey Fils,


    Ik heb je code even bekeken en heb misschien een aantal opmerkingen / tips & tricks.

    • Je checkt $_POST["excursieID"] niet of hij geset is, tenzij je dit eerder doet natuurlijk.
    • Je kijk op regel 4 of $_SESSION['customer'] is geset, niet of deze gevult of een array is. Ik raad je aan om de functie empty () te bebruiken & eventueel de functie is_array () om er zeker van te zijn dat 't om een array gaat.
    • Kan het zijn dat $value[0] altijd $prod_id is? Misschien zou je dit kunnen debuggen d.m.v. een echo of iets dergelijks onder de if en else neer te zetten zodat je kan zien welke van de twee word uitgevoerd.
    • Het volgende: $_SESSION["customer"] = array_push($_SESSION["customer"], array($prod_id, $quantity));. Misschien kan je dit eens proberen: $_SESSION["customer"][] = Array ($prod_id, $quantity); Dit is volgens een reactie op de array_push functie ook sneller dan array_push zelf. (bron: Klik)


    Wat bedoel je daarnaast precies met "Wanneer worden die code functies nou eens gemaakt, ik ga tot die tijd alles gewoon extern plaatsen!"?
    kan je niet gewoon de [ php ] en [/ php ] tags gebruiken?? Of bedoel je dat niet?

  • Hey Fils,


    Ik heb je code even bekeken en heb misschien een aantal opmerkingen / tips & tricks.

    • Je checkt $_POST["excursieID"] niet of hij geset is, tenzij je dit eerder doet natuurlijk.
    • Je kijk op regel 4 of $_SESSION['customer'] is geset, niet of deze gevult of een array is. Ik raad je aan om de functie empty () te bebruiken & eventueel de functie is_array () om er zeker van te zijn dat 't om een array gaat.
    • Kan het zijn dat $value[0] altijd $prod_id is? Misschien zou je dit kunnen debuggen d.m.v. een echo of iets dergelijks onder de if en else neer te zetten zodat je kan zien welke van de twee word uitgevoerd.
    • Het volgende: $_SESSION["customer"] = array_push($_SESSION["customer"], array($prod_id, $quantity));. Misschien kan je dit eens proberen: $_SESSION["customer"][] = Array ($prod_id, $quantity); Dit is volgens een reactie op de array_push functie ook sneller dan array_push zelf. (bron: Klik)


    Wat bedoel je daarnaast precies met "Wanneer worden die code functies nou eens gemaakt, ik ga tot die tijd alles gewoon extern plaatsen!"?
    kan je niet gewoon de [ php ] en [/ php ] tags gebruiken?? Of bedoel je dat niet?

    • Is een standaard unieke waarde die verstuurd wordt zodat ik weet om welke product het gaat.
    • Heb deze eraan toegevoegd, gaat ten alle tijden om een array dus goed opgemerkt!
    • $value[0] is het eerste gedeelte van de array, als die niet bestaat maakt hij een nieuwe aan.
    • Gewijzigd, bedankt voor de opmerking hiervan, wist niet dat het op jou manier sneller zou werken.


    Code werkt helaas alleen nog steeds niet, wederom ook weer zonder een foutmelding.


    (Code tags van ICTs zijn nog steeds een faal, hij verwijderd al je tabs en enters uit de code.)

  • Misschien even echo's plaatsen in je script.


    bijvoorbeeld onder "if($value[0] == $prod_id)" zet je iets van " echo 'value0 = prodId'; " en onder de else iets van "echo 'value0 != proId';".. etc.. etc.. en dan kan je zien waar het script heen gaat.

    Daarmee bedoelde ik dus dat dit al met een postback gedaan is, leverde niks raars op waardoor de code niet zou werken.




    Oplossing:
    Heb voor alle onderdelen maar een aparte sessie waarbij hij gevuld wordt.
    Op deze manier werkt het namelijk vreemd genoeg wel correct.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!