Kom ihåg mig?
Home Menu

Menu


Hjälp med felsökning

 
Ämnesverktyg Visningsalternativ
Oläst 2006-03-07, 20:23 #1
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Jag startade en relaterad tråd ( http://www.webmasternetwork.se/f12t12644.html ) för några dagar sen, men eftersom situationen har förändrats lite tyckte jag att det var bäst att skapa en ny tråd.

Problemet är alltså att för ca två månader sen började mitt kundkorgsscript (PHP) tappa minnet. Folk kan bara lägga till en enda grej och gå direkt till kassan. Försöker de lägga till fler saker raderas den föregående. Det går inte heller att ändra kvantitet för då får de ett felmeddelande om cookies, eller så töms korgen. Det verkar alltså som att cookies inte sätts som de ska, men det märkligaste är att det bara drabbar IE-användare (alla versioner, vad det verkar).

Jag trodde först att det var en Windows-uppdatering som orsakat detta, men samma fel uppstår på en dator som inte har uppdaterats på åratal. Scriptet i sig har jag inte rört på länge (långt innan detta hände).

Nån som har en aning om var jag ska börja felsöka? Det måste nästan vara något med servern (Apache/Linux) i sig, men vad kan orsaka att cookies inte sätts i IE när det funkar perfekt i Firefox? Jag har förstås startat om servern.

Som jag nämnde i den andra tråden går det inte att kontakta killen som har utvecklat scriptet.

Tack på förhand! Alla teorier är välkomna.
Helena är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-07, 22:16 #2
Jan Eriksson Jan Eriksson är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2004
Inlägg: 1 352
Jan Eriksson Jan Eriksson är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2004
Inlägg: 1 352
Jag tittade på sidan lite snabbt. Genom Emetrix gick det bra för min IE. Kunna fylla på, ändra osv. Inga problem där.

Går man genom Paypal blir det där emot problem med IE, precis som du skriver. Utan att ha sett kod mm skulle jag tolka det som problemmet ligger i "/portal/cart.php". Den sidan har problem med att lagra, eller möjligen, läsa dina kakor genom IE. Visa koden från den sidan så lär du säkert få hjälp utav dom goda kunskaperna som finns här på WN.
Jan Eriksson är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-08, 05:35 #3
PeterM PeterM är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 56
PeterM PeterM är inte uppkopplad
Medlem
 
Reg.datum: Dec 2004
Inlägg: 56
Jan är inne på rätt spår, det är cookies som kommer på avvägar.

Om man väljer att uppdatera antalet produkter i varukorgen så ser den cookie som Firefox skickar tillbaka till din server ut så här:
Cookie: INICart=1; Cart_ID=123456789; Currency=USD\r\n

Om man använder IE ser den ut så här:
Cookie: Currency=USD\r\n

En variabel som scriptet använder för att kontrollera om cookies är påslagna i användarens webläsare (gissar jag) och id-nummret för den varukorg man använder kommer alltså inte med i svaret från IE till din server. Resultatet av det blir att scriptet inte vet vilken varukorg som man vill ändra och man får upp det där tråkiga meddelandet.

Så vad beror då detta på? Vi återgår till att se hur din server skickade cookie-värdena till min webläsare. De såg ut så här:

Set-Cookie: INICart=1; expires=Wed, 08-Mar-06 04:17:06 GMT; path=/
Set-Cookie: Cart_ID=123456789; expires=Wed, 08-Mar-06 04:17:06 GMT; path=/
Set-Cookie: Currency=USD; expires=Wed, 15-Mar-06 01:17:06 GMT; path=/

Och här klarnar allt.

Expire-värdena för INICart och Cart_ID är satta till en tidpunkt som vi redan passerat. IE anser att värdena inte är relevanta längre och skickar dem därför inte i retur till din server. För Currency är expire-värdet dock korrekt satt till en tidpunkt i framtiden och skickas alltså till servern.

Och hur rättar man då till det då. Först och främst, kontrollera om klockan i din server går rätt. Lite långsökt eftersom expire-värdena skiljer sig åt så pass mycket mellan INICart/Cart_ID och Currency, men att kontrollera det kostar ingenting. Mest troligt behöver scriptet uppdateras lite så att expire-värdena sätts korrekt. Det kan antagligen vem som helst som skrivit mer än 100 rader PHP-kod fixa på fem minuter. Har du inte någon sån i närheten så kan jag göra det om du skickar scriptet till mig.
PeterM är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-08, 08:16 #4
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
Citat:
Originally posted by Helena@Mar 7 2006, 21:23
Jag startade en relaterad tråd ( http://www.webmasternetwork.se/f12t12644.html ) för några dagar sen, men eftersom situationen har förändrats lite tyckte jag att det var bäst att skapa en ny tråd.

Problemet är alltså att för ca två månader sen började mitt kundkorgsscript (PHP) tappa minnet. Folk kan bara lägga till en enda grej och gå direkt till kassan. Försöker de lägga till fler saker raderas den föregående. Det går inte heller att ändra kvantitet för då får de ett felmeddelande om cookies, eller så töms korgen. Det verkar alltså som att cookies inte sätts som de ska, men det märkligaste är att det bara drabbar IE-användare (alla versioner, vad det verkar).

Jag trodde först att det var en Windows-uppdatering som orsakat detta, men samma fel uppstår på en dator som inte har uppdaterats på åratal. Scriptet i sig har jag inte rört på länge (långt innan detta hände).

Nån som har en aning om var jag ska börja felsöka? Det måste nästan vara något med servern (Apache/Linux) i sig, men vad kan orsaka att cookies inte sätts i IE när det funkar perfekt i Firefox? Jag har förstås startat om servern.

Som jag nämnde i den andra tråden går det inte att kontakta killen som har utvecklat scriptet.

Tack på förhand! Alla teorier är välkomna.
Hmm, vad använder du för att spara "varugkorgen"? Jag menar, det är väl inget konstigt att spara ett objekt, eller kanske en multidimensionell array i sessionen.
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-08, 10:14 #5
Andrres Andrres är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2006
Inlägg: 46
Andrres Andrres är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2006
Inlägg: 46
Ja problemet verkar tidsrelaterat, serverns klocka är felinställd.

Skripttillverkaren tycks ha lagt in en 3-timmars gräns i dom två kakorna som IE inte tar emot. Eftersom serverns klocka är 5 timmar (GMT) före vår tidszon så betraktar IE kakorna som inaktuella.

(skriptet behöver troligen inte ändras, kakorna ska inte ligga kvar länge).

Så varför fungerar det i Fx och Netscape (som sätter rätt datum i kakorna, trots att serverns datum är fel)?
Kanske använder Fx/NS någon mer information om servern när kakans datum är utgången (tex var servern är geografiskt placerad), just för att kompensera för sådana här problem? Det är inte helt ovanligt att klientens klocka är felställd, vilket kan orsaka samma problem.


BTW, det verkar vara många som har olika typer av problem med det skriptet (eliteweaver). Tydligen säljs skriptet fortfarande, men folk får ingen support och inga svar på sina mejl.
Andrres är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-08, 11:37 #6
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Tusen tack för alla svar! Jag uppskattar det verkligen.

Serverklockan gick mycket riktigt fel och efter att ha ställt fram den några timmar funkar det bra här. Gissa om jag är glad och lättad.

Helt otroligt att det var en sån enkel grej som orsakade allt strul. Det känns faktiskt riktigt pinsamt. Ni anar inte vad jag har slitit med detta, men allt är ju lätt när man kan det...

Nu återstår att klura ut vilken tidsinställning som är den optimala. Får be några kunder ute i världen testa.

Andrres, jo det är många som har problem med detta script. Med det kostade bara $49 och har funkat perfekt i två år (och förhoppningsvis ett bra tag framöver nu när detta är löst), så det är OK. Det är faktiskt ett rätt bra script, trots sina brister. Synd att han verkar ha övergett det.
Helena är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-08, 14:06 #7
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Ville bara tillägga att nu har jag hört från en kund i Japan och en i USA, och det funkar perfekt även där. Så skönt! Tack än en gång för all hjälp.
Helena är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-09, 07:19 #8
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
Citat:
Originally posted by Andrres@Mar 8 2006, 11:14

BTW, det verkar vara många som har olika typer av problem med det skriptet (eliteweaver). Tydligen säljs skriptet fortfarande, men folk får ingen support och inga svar på sina mejl.
Nu vet jag ingenting om det skriptet i sig, men det som sagts, verkar ju tyda på ett gäng nybörjare som hackat ihop något under tiden de försökte lära sig php.

Så du menar att de manuellt sätter 3 kakor med id för "cart"-en? Så varje gång när de vill spara basketen i browsern, måste dem först spara självaste basketen någonstans (förmodligen SQL), sen hämta id-t, lägga den i kakan, spara kakan. När de vill läsa den, så måste de hämta kakan, läsa id, slå upp i SQL, bygga basketen igen för att kunna använda den?

När det räcker att göra $_SESSION['basket']=$mybasket; ?

Jadu, det är märkliga saker det där. Börjar bli nästan nyfiken på att läsa lite av deras kod.
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-09, 10:22 #9
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Helena Helena är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 411
Zoran, har hört många säga att scriptet är rätt dåligt skrivet (rörigt m.m.), så säkert var det nåt av det första han gjorde. Hade det inte inte varit så billigt (och om det hade funnits liknande alternativ) hade jag aldrig köpt det, men det har som sagt funkat alldeles utmärkt bortsett från det här nu med cookies, som är fixat tack vare er här ovan.

Ser att du mest håller på med Java. Kan du PHP också? Cookies är ju inte det bästa att använda, så för min del får du så gärna ta en titt på det om du vill!
Helena är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-09, 10:55 #10
Andrres Andrres är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2006
Inlägg: 46
Andrres Andrres är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2006
Inlägg: 46
Helena:
Citat:
Jag använder inte IE själv...
En tanke är att använda IE istället som förstabrowser. Driver man en sajt är det fördel att använda samma som majoriteten av besökarna använder. Man kan tidigare bli medveten om ev fel som drabbar många (för det kan ta flera dagar/veckor innan besökarna börjar klaga) och det kan minska skadans omfattning (antal förlorade kunder).


zoran:
I detta fall har man valutavalet i en separat kaka som ligger kvar ett tag (det är sannolikt att kunden vill använda samma valuta vid ett återbesök).
Men det finns säkert utrymme för optimeringar, som i dom flesta skript (inkl mina egna)


Helena igen:
Det ligger nåt i uttrycket "if it's not broken don't fix it". Det blir nästan alltid en massa oväntade problem om man börjar rota i ett fungerande system, särskilt om koden är "incomprehensible" som någon skrev i ett annat forum. Men det är klart, man får ju väga för- o nackdelar mot varandra.
Andrres är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 13:31.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017