Cookies und Referrer
Anizo
- javascript
Hallo!
Vor ein Paar Tage habe ich gefragt, wie kann man mittels JavaScript
erreichen, ein Bookmarks immer auf die Startseite (homepage) zu
verweisen.
Die Lösung habe ich gefunden, ich danke an allen, die mir beantworten
haben !
Hier ist meine Meinung nach der richtige Script:
<script type="text/javascript">
if(document.referrer.length==0) {
alert("Du kommst aus Favoriten!");
} else {
alert("Super!");
}
</script>
Es funktioniert aber bei mir nämlich nicht ganz richtig, weil ich
zwischen die Homeseite und die Unterseiten ein Disclaimer habe, für den
ich Cookies einsetze.
Wenn die Cookies aktiv sind, dann liefert Referrer eine unbekannte
Adresse und zeigt die Meldung Du kommst aus Favoriten statt die
Meldung Super (bzw. die folgenden Seite).
Hier die Schritte:
Home -> Contact = richtige Meldung Super! dann wieder auf Home->
Contact = falsche Meldung Du kommst aus Favoriten!");
Meine Frage ist: wie kann ich Referrer mit Cookie richtig verwenden?
Hier liegt die Testversion:
http://www.dorian.at/smn/ani/
Es ist nur Link Contact eingeschaltet.
Ich danke im Voraus an jeden, der mir helfen würden!
Hi,
if(document.referrer.length==0) {
alert("Du kommst aus Favoriten!");
Diese Schlußfolgerung ist falsch.
Die Tatsache, daß kein Referrer gesendet wird, heißt noch lange nicht, daß man aus den Favoriten kommt.
Es kann genausogut im Browser die Übertragung des Referrers abgeschaltet haben...
Oder ein Proxy hat ihn rausgelöscht. Oder ...
cu,
Andreas
Hi Andreas, ja, es stimmt, aber ich habe keine andere Idee, wie ich dieses Problem lösen kann.
Gut oder schlecht, ich soll eine Lösung haben.
lg
Nina
Hi,
Hi Andreas, ja, es stimmt, aber ich habe keine andere Idee, wie ich dieses Problem lösen kann.
Gut oder schlecht, ich soll eine Lösung haben.
Deine Lösung ist eine, wenn auch keine gute!
Was ist, wenn die Adresse direkt eingetippt wurde? Das ist noch näherliegend als das Szenario vom Andreas, oder?
Ich habe aber etwas für Dich, was allerdings etwas tiefere Kenntnisse erfordert:
Die meisten Leute - zumindest die mit MSIE - initieren einen Request auf "/favicon.ico".
Wenn Du es schaffst, die Datei so zu verdrehen, daß sie zum CGI wird, d.h. ausführbar, so kannst Du ein Icon zurückliefern und gleichzeitig einen Cookie setzen. Das wäre doch ein Anliegen, oder?
Ob bzw. wie das genau geht, weiß ich momentan nicht, aber wir wenden ähnliche Techniken bei Webstatistiken an, d.h. auch obiges Problem sollte irgendwie lösbar sein.
Favicons findest Du auf der Homepage von Stefan Einspender in Massen!
Gruß
Reiner
Gruß
Reiner
Hallo Reiner und Sven!
Ich danke euch! Ihre Vorschläge sind interessant und sehr informativvoll für mich, und am wichtigsten: sie haben mir ein paar schlaflose Nächste gespart.
lg
Nina
Hi nochmal,
ich hatte mich mit Favicons bisher nie in der Tiefe beschäftigt, aber laut Aussage von Stefan Einspenders Seite geht ja folgendes mit den meisten Browsern (im Headbereich):
<link rel="shortcut icon" href="favicon.ico" type="image/ico">
Aufgrund meiner Erfahrungen vermute ich jetzt einfach mal, daß dann auch folgendes geht:
<link rel="shortcut icon" href="favicon.cgi" type="image/ico">
Damit hättest Du schonmal kein Problem mehr mit Deinem Server (Apache oder so)!
Jetzt mußt Du ein Favicon per Location-Anweisung zurückliefern und - das weiß ich aber noch nicht, ob das geht, einen Cookie hinterherschieben.
Ist nur so eine Idee!
Gruß
Reiner
Moin!
Aufgrund meiner Erfahrungen vermute ich jetzt einfach mal, daß dann auch folgendes geht:
<link rel="shortcut icon" href="favicon.cgi" type="image/ico">
Das funktioniert - aber nicht im IE. Der ruft immer nur das "/favicon.ico" ab, und auch nur, wenn die Seite in die Favoriten genommen wird (und offenbar nicht mal unbedingt zuverlässig, zumindest was den Verbleib des Icons dort angeht).
Alle Browser, die den <link> interpretieren, rufen das Icon hingegen üblicherweise schon beim ersten Aufrufen der Seite ab, genau wie ein sonst eingebundenes Bild.
Ich sehe keinen Vorteil oder überhaupt irgendeine Funktionsfähigkeit bei deinem Ansatz.
Wenn es darum geht, eine gewisse Abfolge von Seiten zu garantieren, dann geht das nur mit Sessions zuverlässig. Sessions bedeuten aber, dass man jede Seite programmgesteuert per Skript ausliefern muß, um das Bestehen und den Status der Session zu kontrollieren. Dabei muß gar nicht mal unbedingt auf die Startseite umgeleitet werden, um den Disclaimer anzuzeigen (Spannende Frage am Rande: Was steht da bloß drin, dass es so wichtig ist?), sondern der Disclaimer kann auch direkt in die angeforderte Seite eingebunden werden - entweder zusätzlich zum normalen Seiteninhalt, oder stattdessen. Ein Link auf _dieselbe_ Seite namens "weiter..." ruft die Seite dann nochmal auf, der Sessionmechanismus registriert, dass der Disclaimer gezeigt wurde (wobei außer Acht gelassen wird, ob er denn auch gelesen, verstanden und akzeptiert wurde - er also im Prinzip wirkungslos sein dürfte), und zeigt die gewünschte Seite.
- Sven Rautenberg
Hi,
wobei außer Acht gelassen wird, ob er denn auch gelesen, verstanden und akzeptiert wurde
Zumindest das Lesen könnte man erzwingen, indem man eine oder mehrere Fragen zum Text per Formular beantworten muß und solange immer wieder den Disclaimer bekommt, bis man die Frage(n) richtig beantwortet hat... ;-)
Die Frage ist nur, ob die Besucher davon nicht so sehr abgeschreckt werden, daß sie verschwinden...
cu,
Andreas