Likes Likes:  0
Resultaten 1 tot 7 van de 7
Geen
  1. #1
    Jan Smeelen
    [PHP] probleem met phpsessid ?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    [PHP] probleem met phpsessid ?

    Zoals bekend, wordt als men geen cookies accepteert
    de sessie id in PHP doorgegeven via de URL
    als bijv. PHPSESSID=

    Wat is nu het probleem :

    Betreft een online shop, echter met een link naar een tijdelijke aktie, en
    de
    verwijzende site heeft als link opgenomen :
    http://www.domeinnaam.xxxnl/index.ph...ESSID=45454545 etc.

    De klant komt dus binnen, en de sessie id wordt dan automatisch overgenomen,
    wat dus NIET de bedoeling is....

    Ik heb dit (tijdelijk) enigzins ondervangen door het volgende :

    if (!isset($_SESSION['initiated']) or
    ($check_ip_adres!=$_SESSION['ip_adres']) )
    {
    $_SESSION = array();
    session_regenerate_id();
    $_SESSION['initiated'] = true;
    $_SESSION['ip_adres'] = $check_ip_adres;
    }

    echter die $_SESSION['initiated'] is verwacht ik altijd "true" als
    de bezoeker geen cookies accepteert. ! ?

    De server haalt dan namelijk die gegevens van sessie id met het reeds
    bekende sessie_id nr uit de url.

    Daarom dus een check op het ip_adres, echter is dit niet 100% waterdicht.

    Graag een tip hoe dit op te lossen, of hoe hier mee om te gaan ? )

    p.s. Uiteraard zit het probleem in de verwijzende url, die uiteraard
    aangepast
    moet worden, maar ik zou graag in de toekomstige problemen voor
    willen zijn.

    Bedankt !
    Jan.







  2. #2
    Jan Smeelen
    [PHP] probleem met phpsessid ?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] probleem met phpsessid ?


    "Branko Collin" <collin@xs4all.nl> schreef in bericht
    newse3um2d0sos6qtaqjlqfcntlgip91loqrb@4ax.com...
    >
    > On Thu, 30 Nov 2006 14:25:58 +0100, "Jan Smeelen"
    > <ivalid@invalid.invalid> wrote:
    >
    >>Je snapt het nu denk ik wel :
    >>Gegevens van vorige bezoekers worden overschreven door
    >>nieuwe / gelijktijdige bezoekers....

    >
    > Nee, ik snap het nog steeds niet. Iemand bestelt iets op die site, en
    > geeft vervolgens een link waarmee die bestelling veranderd kan worden
    > aan wildvreemden? Waarom zou die iemand dat doen? En hoe lang duren
    > sessies op die site?


    > Volk van San Theodoros, ik heb U begrepen.


    Maar mij (Man der Lage Nederlanden) heb je nog steeds niet begrepen ;-D

    Een externe site maakt reclame voor een product van een online shop
    en bij invoeren van een promotie code in die shop wordt er een bepaalde
    korting gegeven.

    Sessies duren de standaard tijd van PHP, echter doordat PHPSESSID=
    in de verwijzende url staat, krijgen alle bezoekers dezelfde sessie_id
    toegewezen.

    Alle mensen die mogelijk tegelijkertijd aan het shoppen zijn,
    hebben daardoor dus hetzelfde sessie nummer....

    Ik hoop dat je het nu begrijpt, zoniet, dan geef ik het op ;o)

    Groeten,
    Jan.




  3. #3
    Jan Smeelen
    [PHP] probleem met phpsessid ?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] probleem met phpsessid ?

    "Branko Collin" <collin@xs4all.nl> schreef in bericht
    news:lngtm2dfk8iqpa6ogfl0h0uc9d3gfl6p00@4ax.com...
    > On Thu, 30 Nov 2006 01:53:36 +0100, "Jan Smeelen"
    > <ivalid@invalid.invalid> wrote:
    >
    >>Graag een tip hoe dit op te lossen, of hoe hier mee om te gaan ? )

    >
    > Ik snap je probleem niet. Of er is geen geldige session-id, of er is
    > er wel een. Geen: je laat de bezoeker de actie zien. Wel: je laat de
    > bezoeker de actie zien.


    Aktie betreft producten tegen een aanbiedingsprijs, welke
    online besteld kunnen worden.

    Bij opslaan order/klantgegevens, wordt de klant herkent aan
    het unieke sessie_id echter doordat de externe site
    ?PHPSESSID= opneemt in de link naar de site, krijgt de
    session_id altijd de waarde zoals die in de url is doorgegeven.

    Je snapt het nu denk ik wel :
    Gegevens van vorige bezoekers worden overschreven door
    nieuwe / gelijktijdige bezoekers....

    Groeten,
    Jan.



  4. #4
    Branko Collin
    [PHP] probleem met phpsessid ?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] probleem met phpsessid ?


    On Thu, 30 Nov 2006 14:25:58 +0100, "Jan Smeelen"
    <ivalid@invalid.invalid> wrote:

    >Je snapt het nu denk ik wel :
    >Gegevens van vorige bezoekers worden overschreven door
    >nieuwe / gelijktijdige bezoekers....


    Nee, ik snap het nog steeds niet. Iemand bestelt iets op die site, en
    geeft vervolgens een link waarmee die bestelling veranderd kan worden
    aan wildvreemden? Waarom zou die iemand dat doen? En hoe lang duren
    sessies op die site?
    --
    branko collin
    Volk van San Theodoros, ik heb U begrepen.

  5. #5
    Branko Collin
    [PHP] probleem met phpsessid ?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] probleem met phpsessid ?

    On Thu, 30 Nov 2006 01:53:36 +0100, "Jan Smeelen"
    <ivalid@invalid.invalid> wrote:

    >Graag een tip hoe dit op te lossen, of hoe hier mee om te gaan ? )


    Ik snap je probleem niet. Of er is geen geldige session-id, of er is
    er wel een. Geen: je laat de bezoeker de actie zien. Wel: je laat de
    bezoeker de actie zien.
    --
    branko collin
    Volk van San Theodoros, ik heb U begrepen.

  6. #6
    Michiel de Roo
    [PHP] probleem met phpsessid ?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] probleem met phpsessid ?

    Jan Smeelen wrote:
    > Zoals bekend, wordt als men geen cookies accepteert
    > de sessie id in PHP doorgegeven via de URL
    > als bijv. PHPSESSID=
    >
    > Wat is nu het probleem :
    >
    > Betreft een online shop, echter met een link naar een tijdelijke aktie, en
    > de
    > verwijzende site heeft als link opgenomen :
    > http://www.domeinnaam.xxxnl/index.ph...ESSID=45454545 etc.


    Hmm, die PHPSESSID zou toch eigelijk alleen opgenomen moeten worden bij
    een link binnen hetzelfde domein....

    >
    > De klant komt dus binnen, en de sessie id wordt dan automatisch overgenomen,
    > wat dus NIET de bedoeling is....
    >
    > Ik heb dit (tijdelijk) enigzins ondervangen door het volgende :
    >
    > if (!isset($_SESSION['initiated']) or
    > ($check_ip_adres!=$_SESSION['ip_adres']) )
    > {
    > $_SESSION = array();
    > session_regenerate_id();
    > $_SESSION['initiated'] = true;
    > $_SESSION['ip_adres'] = $check_ip_adres;
    > }
    >
    > echter die $_SESSION['initiated'] is verwacht ik altijd "true" als
    > de bezoeker geen cookies accepteert. ! ?
    >


    Kun je niet de referer gebruiken, dat is $_SERVER['HTTP_REFERER'] als ik
    me niet vergis. De sessie hoeft alleen opnieuw geinitieerd te worden als
    de referer niet je eigen site is.

    Wat er dan precies met de originele sessie (van een andere bezoeker dus)
    gebeurt weet ik niet precies, maar de kans lijkt me niet zo groot dat die
    al bestaat.

  7. #7
    Jan Smeelen
    [PHP] probleem met phpsessid ?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] probleem met phpsessid ?


    "Michiel de Roo" <yourlove@welovespam.nl> schreef in bericht
    news:457000f3$0$337$e4fe514c@news.xs4all.nl...
    > Jan Smeelen wrote:
    >> Zoals bekend, wordt als men geen cookies accepteert
    >> de sessie id in PHP doorgegeven via de URL
    >> als bijv. PHPSESSID=
    >>
    >> Wat is nu het probleem :
    >>
    >> Betreft een online shop, echter met een link naar een tijdelijke aktie,
    >> en
    >> de
    >> verwijzende site heeft als link opgenomen :
    >> http://www.domeinnaam.xxxnl/index.ph...ESSID=45454545 etc.


    > Hmm, die PHPSESSID zou toch eigelijk alleen opgenomen moeten worden bij
    > een link binnen hetzelfde domein....


    Daar ging ik ook altijd vanuit....
    totdat een externe site even per ongeluk die PHPSESSID in de link
    ging opnemen (staat vast in zijn html code, en verandert dus niet ! )

    Tevens is time to live van zo'n sessie iets van 24 minuten,
    en als er dan tegelijkertijd meerdere bezoekers zijn,
    dan beinvloeden die elkaars gegevens in dezelfde sessie.

    Gelukkig sla ik de referer op bij elke order, en ook het sessie_id
    en zodoende heb ik de oorzaak kunnen herleiden, anders was het
    zoeken naar een speld in een hooiberg ;o)

    > Kun je niet de referer gebruiken, dat is $_SERVER['HTTP_REFERER'] als ik
    > me niet vergis. De sessie hoeft alleen opnieuw geinitieerd te worden als
    > de referer niet je eigen site is.
    >


    REFERER nemen is inderdaad een betere optie, dan alleen ip-adres check.

    Ik neem beiden nu op in het script voor de zekerheid )

    Bedankt i.i.g. voor het meedenken !

    Groeten,
    Jan.



Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics