Avatar billede krogstrup Nybegynder
07. marts 2005 - 12:39 Der er 6 kommentarer

Men sessions variabel forsvinder i e-handels proces

Hej Alle

Ved ikke om dette er den mest korrekte katagori, men da jeg har kodet systemet i ASP stiller jeg det her.

Jeg har et site med en e-shop. Forløbet er følgende:

1) Der lægges en vare i kurven
2) Kurven gennemses og godkendes
3) Der indtastes kundedata og vælges betalingsmetode
4) Såfremt Dankort er valgt åbnes popup vindue med betalingsformular fra freepay.dk
5) Såfremt transaktionen godkendes indlæses en side i popupvinduet der gør følgende: a) redirecter modervinduet til en ordrebekræftelse b) lukker popup vinduet

Ovenstående virker fint stort set alle steder, MEN nogle ganske få steder sker der det at mine sessionsvariabler forsvinder når jeg skal vise ordrebekræftelsen i modervinduet som sidste procedure. Dvs. at jeg ikke længere kan se hvem kunden er og hvad de har bestilt.

Jeg fatter simpelthen ikke hvad der får sessionsvariablerne til at blive slettet?!? Jeg ved at det ikke har noget med timeout at gøre, da jeg har gået processen igennem med kunden over telefonen.

Min teori er at i det øjeblik en side fra et fremmed domæne i popupvinduet forsøger at redirecte til en ny side i modervinduet, ja så nulstilles sessionen.

Men jeg har bare altid brugt ovenstående procedure uden problemer, og det virker som sagt også i 9 ud af 10 tilfælde.

Har nogen erfaring med ovenstående problemstilling ?
Eller et godt råd til hvad der måske går galt ?
Avatar billede fennec Nybegynder
07. marts 2005 - 12:57 #1
Har oplevet samme problem. Det sker nå du kontakter freepay.dk. Der kommer du nemlig til et nyt domæne og det betyder at du mister session. Freepay sender dig så tilbage til dit eget domæne med et "http://" kald og det kan også slettedin session. Og da du så tilsidt opdatere hovedvinduet fra popupen er det slut med sessions :(

Jeg løste det ved at gemme oplysninger i database, også få freepay til at sende ID'et med tilbage som så henter info ud fra databasen igen.
Avatar billede krogstrup Nybegynder
07. marts 2005 - 13:11 #2
Men når det kun sker få steder, må det jo hænge sammen med noget specifikt på disse computere ?!?

Jeg kan ikke gennemskue om det er browser version, browser opsætning, firewall, antivirus osv osv. eller andet der udgør/fremprovokerer problemet.

Jeg er godt klar over at hvis jeg erstatter mine sessions med database indhold er problemet klaret, men det er jo et større arbejde jeg skal i gang med så.... Vil helst undgå det hvis muligt.

:)
Avatar billede fennec Nybegynder
07. marts 2005 - 13:26 #3
Jeg sad også og roede med instillinger på forskellige comp, for det var heller ikke hver gang jeg opleve fejlen :o)

Nu ved jeg selvfølgelig ikke hvordan du har lavet din shop, men bruger du ikke en database, til at gemme bestillinger/prudukter i??

Jeg gjorde det, at jeg simpelt hen smider bestillingen i databasen som om den var færdig, men med et lille flag og dato som siger den ikke er. Dette flag bliver så fjernet når man kommer tilbage fra freepay, og mail bliver send ud. Jeg gemme også kun BrugerID'et i en temptabel sammen med en dato, man skal nemlig være kunde på mit system for at kunne handle. Det er altså først nødvendigt at gemme sessions når du kontakter freepay.
Avatar billede coolstar Nybegynder
07. marts 2005 - 15:02 #4
Mit bedste råd uden at have indblik i dit system, vil være som jeg selv gør. Jeg deler mine ordre bestillinger op i 2 dele. En som er midlertidig og en som er den endelige bestillings ordre fra kunden.

Det ligner noget lignende det som Fennec, også påpeger. det vil også gavne fejlsøgningen og gøre systemet mere stabilt.

Men en session fjernes hvis du skifter website, men det håber jeg self. ikke du gør :-)

Men tag at del det op, så du ikke har en stor mængde kode som skal afvikles, men optimere og gør det i små bider, så vil du opdage at fejlene også bliver formidnsket :-)

Pøj pøj her fra!

// Coolstar!
Avatar billede krogstrup Nybegynder
08. marts 2005 - 11:27 #5
Hej

Tak for jeres input. Jeg kæmper lidt videre, og forsøger om jeg ikke kan få det løst uden at skulle til at omkode selve proces forløbet. Hvis ikke det lykkes er der vist ikke anden udvej end at "bide i det sure æble".

Tak for jeres input :-)

Smider I begge et svar ?
Avatar billede fennec Nybegynder
08. marts 2005 - 11:32 #6
.o) <-- One Eyed Jack
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester