merkwürdige Cookies

  • Ich verwende seit Jahren in einer offline-Anwendung ein javscript-suchprogramm, das zum wiederfinden von suchergebnissen ein cookie setzt. dieses programm läuft seit dem letzten firefox-update nicht mehr. es zeigt sich, dass das von mir gesetzte cookie (hier zum beispiel mit dem von mir gesetzten wert "suche=|184|193|206") neuerdings so aussieht: "suche=|184|193|206; s_vnum_us=ch%3Dsupport%26vn%3D1%3B". ich habe keine ahnung, wo der rest herkommt. wenn ich alle cookies und auch flash cookies lösche und meine offline-seite starte und mir als erstes das cookie ausgeben lassen, bevor ich überhaupt ein cookie gesetzt habe, kommt "s_vnum_us=ch%3Dsupport%26vn%3D1%3B". wer kann mir sagen, wo dieser Mist herkommt und wie ich das vermeiden kann. ich habe auch versucht, im js-programm den cookie-wert zu splitten mit teiler ";", das funktioniert aber nicht, als erster wert des gesplitteten cookie kommt wieder das ganz cookie an!

  • Zitat von artnat

    […] seit dem letzten firefox-update […]

    Du meinst vielleicht 6.0.1. oder ?

    Eine rein theoretische Diskussion ist sinnlos.
    Ohne eine nachvollziehbare Site kann man nur spekulieren, hilft dir ja auch nichts.

  • Ich habe weiter untersucht. die funktion meines programms hängt davon ab, dass am anfang kein cookie da ist. deshalb rufe ich eine kleine routine cookiesloeschen auf, die unten folgt und die das verfallsdatum eines eventuell vorhandenen cookies in die vergangenheit setzt. diese routine funktioniert bei allen browsern einwandfrei, nur bei firefox nicht, daher läuft mein programm auch nicht mehr. ich habe das mit einem kleine testprogramm getestet, das cookielesen heißt und auch unten folgt. wenn ein cookie vorhanden ist mit dem wert "suche=|184|193|206", so geben andere browser (iexplore, opera, safari) wie erwartet nacheinander aus: "suche=|184|193|206" und "Kein Cookie gefunden". firefox gibt aber nur die zeile "suche=|184|193|206" aus, läuft dann aber in eine ewige schleife und bringt nach einiger zeit die fehlermeldung: "Ein Skript auf dieser Seite ist eventuell beschäftigt oder es antwortet nicht mehr. Sie können das Skript jetzt stoppen oder fortsetzen, um zu sehen, ob das Skript fertig wird." bis zum letzten update (auf 6.0.1) ist alles auch auf firefox einwandfrei gelaufen. Wieso jetzt nicht mehr?

    function cookiesloeschen()
    {
    var cootxt=""
    var ablauf = new Date();
    var vor_einem_tag=0
    while(document.cookie)
    {
    cootxt=document.cookie
    vor_einem_tag = ablauf.getTime() -86400000; //aktuelle Zeit - 1 tag
    ablauf.setTime(vor_einem_tag);
    cootxt=cootxt + "; expires = " + ablauf.toGMTString();
    document.cookie = cootxt
    }
    }

    Testseite cookielesen:
    <html>
    <head>
    <script src="cookiesloeschen.js" type="text/javascript"></script>
    </head>

    <body bgcolor="#ffffff">
    <p>testseite</p>

    <SCRIPT language="javascript">

    if (document.cookie)
    {
    alert(document.cookie)
    cookiesloeschen()
    if (document.cookie)
    {
    alert (document.cookie)
    }
    else
    {
    alert("Kein Cookie gefunden")
    }
    }

    </SCRIPT>
    </body>

    </html>

  • danke, boersenfeger, für den hinweis auf die bedeutung der fehlermeldung. nur war mir die bedeutung ohnehin klar, war mir nicht klar ist: warum bei firefox ein code in eine endlosschleife läuft, der auf allen anderen browsern läuft und auch in der literatur so zu finden ist.