cookie gibt falschen wert aus?
com32
- javascript
hi,
also ich habe ein paar versuche mit cookies gemacht und ich komm irgendwie nicht weiter und finde meinen fehler nicht, was mache ich falsch?
hier der quelltext:
<html>
<head> <title>Test</title>
<script type="text/javascript">
horst = document.cookie;
alert(horst)
if (document.cookie = 1 ) {
Sichel = 1; }
else {
if (document.cookie = 2) {
Sichel = 2; }
else {
if (document.cookie = 3 ) {
Sichel = 3; }}}
alert(Sichel)
Hammer = 1
text1 = 2
text2 = 3
document.cookie = Hammer
alert(Sichel)
<!--
function kampf1() {
document.cookie = text1
}
//-->
<!--
function kampf2() {
document.cookie = text2
}
//-->
<!--
function kampf100() {
alert(document.cookie)
}
//-->
</script>
</head>
<body>
<h1>versuch mit cookies</h1>
<input type=button value="Cookie ändern in 2" onClick="kampf1()">
<input type=button value="Cookie ändern in 3" onClick="kampf2()">
<input type=button value="Cookie ausgeben" onClick="kampf100()">
<a href="javascript:location.reload()" onClick="kampf1()">Reload</a>
<div>
<script type="text/javascript">
if (Sichel = 1 ) {
document.write("Hallo, ich bin Klaus"); }
else {
if (Sichel = 2) {
document.write("Hallo, ich bin der Nicolaus"); }
else {
if (Sichel= 3 ) {
document.write("Hallo, ich bin Hans"); }}}
</script>
</div>
</body>
</html>
wenn ich den cookie wert auf drei setzte wird mir aber beim erneuten laden nur zwei ausgegeben, zudem ändert sich der wert von sichel nicht, was ist da falsch?
was noch schlimmer ist, ich bekomm noch von einem vorherigem versuch den cookie mitausgegeben und bekomm ihn irgendwie mit dem löschen der cookies unter browserverlauf nicht weg
mfg Com
Hi,
also ich habe ein paar versuche mit cookies gemacht und ich komm irgendwie nicht weiter und finde meinen fehler nicht, was mache ich falsch?
horst = document.cookie;
alert(horst)
Was ergibt diese Kontrollausgabe in dem Fall, das ein Cookie gesetzt ist?
if (document.cookie = 1 ) {
Abgesehen davon, dass du hier eine Zuweisung machst, statt des beabsichtigten Vergleiches, wird document.cookie vermutlich nicht 1 enthalten.
Hammer = 1
document.cookie = Hammer
Solch einen Wert zuzuweisen, ist unsinnig.
Du hast dich wohl nicht mal ansatzweise informiert?
http://de.selfhtml.org/javascript/objekte/document.htm#cookie
wenn ich den cookie wert auf drei setzte wird mir aber beim erneuten laden nur zwei ausgegeben, zudem ändert sich der wert von sichel nicht, was ist da falsch?
Ziemlich vieles, siehe oben.
was noch schlimmer ist, ich bekomm noch von einem vorherigem versuch den cookie mitausgegeben und bekomm ihn irgendwie mit dem löschen der cookies unter browserverlauf nicht weg
Du setzt sie bisher nicht mal sinnvoll, also kümmere dich erst mal darum.
Und testen solltest du in einem vernünftigen Browser, nicht dem IE.
MfG ChrisB
Hammer = 1
document.cookie = HammerSolch einen Wert zuzuweisen, ist unsinnig.
Es funktioniert aber witzigerweise. Es legt einen Namenlosen Session-Cookie mit dem Wert 1 an (Firefox).
Mathias
»» > Hammer = 1
»» > document.cookie = Hammer
»»
»» Solch einen Wert zuzuweisen, ist unsinnig.Es funktioniert aber witzigerweise. Es legt einen Namenlosen Session-Cookie mit dem Wert 1 an (Firefox).
vielleicht hatte ich nur glück, wie gesagt ich hab ein bisschen ausprobiert
»» horst = document.cookie;
»» alert(horst)Was ergibt diese Kontrollausgabe in dem Fall, das ein Cookie gesetzt ist?
»» if (document.cookie = 1 ) {
Abgesehen davon, dass du hier eine Zuweisung machst, statt des beabsichtigten Vergleiches, wird document.cookie vermutlich nicht 1 enthalten.
doch der cookie enthält den wert 1 und auch noch die vorherigen cookie versuchsvariabeln
und der cookie bekommt auch immer den richtigen wert
ich hab meinen fehler gefunden, im reload hatte ich noch die funktion drin, dass der wert auf 2 aufgewertet wird
mal gucken ob es jetzt klappt
Mahlzeit com32,
ich hab meinen fehler gefunden,
D.h. Du gibst jetzt einen Dokumenttyp an, schließt jede Javascript-Anweisung mit einem Semikolon ab und verwendest keine HTML-Kommentare innerhalb eines Javascript-Blocks? Das ist gut.
MfG,
EKKi