online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon karim vom 19.01.2020, 02:31 Options

cookie 2

function setCookie(name, wert, domain, expires, path, secure){
var cook = name + "=" + unescape(wert);
cook += (domain) ? "; domain=" + domain : "";
cook += (expires) ? "; expires=" + expires : "";
cook += (path) ? "; path=" + path : "";

cook += (secure) ? "; secure" : "";
document.cookie = cook;
}

1) wie interpretiert man zeile 3 ? z.b. hier : ( 3 < 4 ) ? hallo : gut , würde es heissen , wenn 3 kleiner als 4 dann hallo ansonsten gut .
aber wie würde es in zeile 3 heissen ?

2) warum steht ,,document.cookie = cook,, am ende ?

3) wird bei ,,document.cookie = cook,, die variable ,,var cook,, eingesetzt, und hat etwas var
cook mit document.cookie=cook zu tun ?

4) wenn ich einen cookie setzen möchte , dann schreibe ich den namen, den das cookie haben soll , den
wert, die domain usw. , bei set cookie rein , richtig ?

5) diese funktion kann ich dann immer benutzen wenn ich ein cookie bei einem user der meine website besucht setzen möchte , richtig ?


Antwort schreiben

Antwort 1 von katy vom 19.01.2020, 07:10 Options

Hallo karim,

ich habe mich schon gewundert wo du geblieben bist.

Ich erkläre dir mal, was die funktion macht:

function setCookie(name, wert, domain, expires, path, secure){
/* Funktion wird aufgerufen und erwartet eine Reihe Parameter */

var cook = name + "=" + unescape(wert);
/* Ein String (Textvariable) wird angelegt mit dem Inhalt der ersten beiden Funktionsparameter, getrennt durch ". */

cook += (domain) ? "; domain=" + domain : "";
cook += (expires) ? "; expires=" + expires : "";
cook += (path) ? "; path=" + path : "";
cook += (secure) ? "; secure" : "";
/* Hier wird der String jeweils verlängert, und zwar nur dann, wenn diese Parameter überhaupt gesetzt sind. 
Es ist also vorgesehen, dass du beim Aufruf der Funktion einzelne Parameter auslassen kannst
das sähe dann so aus
setCookie("bla","blawert","example.com",,"pfad",)
(Achte auf die Komma) 
Wenn die Parameter nicht gesetzt sind wird ein Leerstring "" angefügt, mit anderen Worten; nix. */

document.cookie = cook;
/*Hier wird der Cookie gesetzt durch eine Wertzuweisung an document.cookie
fertig */
}


katy

Antwort 2 von karim vom 21.01.2020, 02:51 Options

warum ,hast du mich vermisst ?

Antwort 3 von katy vom 21.01.2020, 16:53 Options

Hi karim,

ich glaube diese Frage ist "off topic". Schreib lieber, ob meine Antwort deine Fragen verständlich beantwortet hat oder nicht. Alles andere gehört in den Chat oder die "Plauderecke".

katy

Antwort 4 von karim vom 22.01.2020, 23:18 Options

wenn ich jemanden über mehreren seiten hinweg zum beispiel im web shop verfolgen möchte , was nimmt man dann als code , kann man diesen code oben benutzen zum setzen eines cookies ?

Antwort 5 von katy vom 23.01.2020, 06:58 Options

Hallo karim,

dieser Code zum Setzen eines Cookies ist so gut wie jeder andere. Du musst natürlich die richtigen Angaben machen bei den verschiedenen Parametern, das wird sicherlich dort erklärt, wo du den Code kopiert hast.

Alternativen zu Cookies sind GET-Parameter (also Weitergabe von Werten über die Seitenadresse: www.example.com/seite5.htm?name=karim&fragen=viele) oder natürlich das Speichern der Werte direkt auf dem Server.

katy

Antwort 6 von karim vom 28.01.2020, 02:15 Options

wenn ein cookie gesetzt wird, das benutzerdaten speichert ,könnte doch jemand, der auch zugang zum PC hat die cookie-datei öffnen und lesen oder eine andere website liest dieses cookie irgendwie aus und schon hat jemand meine benutzerdaten ?! ist das alles möglich ?

Antwort 7 von katy vom 28.01.2020, 06:27 Options

Hallo karim,

ersteres ist möglich, außer der Browser löscht Cookies automatisch beim Programmende.
Eine andere Seite hingegen hat keinen Zugriff.
Das kannst du übrigens alles bei Wikipedia nachlesen.

katy

Antwort 8 von karim vom 29.01.2020, 00:56 Options

32 function schreibeCookie() {
33 haltbarDatum = new Date(2007,11,31,1,0,0);
34 document.cookie = SetCookie(
35 "user", document.mF.id.value, haltbarDatum);
36 document.cookie = SetCookie(
37 "pw", document.mF.pw.value, haltbarDatum);
38 }

Was bedeutet zeile 34 , 35 ? was für ein cookie wird denn da gesetzt ?
Warum benutzt man set cookie dazu bzw. eine funktion ?
Kann man doch auch anders schreiben : document.cookie = name=user ; expires=Mon Dec 31 2007 01:00:00 GMT+0100 ; …

Antwort 9 von katy vom 29.01.2020, 07:33 Options

Hallo karim,

eins mit dem Namen "user" eins mit dem Namen "pw", also vielleicht Benutzernname und Passwort? Ich weiß es nicht! Wenn du hier Codebrocken aus dem Zusammenhang reißt und postest kann ich dir nicht helfen.

katy

Antwort 10 von karim vom 30.01.2020, 22:09 Options

<html>
2 <head>
3 <script language="JavaScript">
4 function GetCookie (name) {
5 var arg = name + "=";
6 var alen = arg.length;
7 var clen = document.cookie.length;
8 var i = 0;
9 while (i < clen) {
10 var j = i + alen;
11 if (document.cookie.substring(i, j) == arg)
12 return getCookieVal (j);
13 i = document.cookie.indexOf(" ", i) + 1;
14 if (i == 0) break;
15 }
16 return null;
17 }
18 function SetCookie (
19 name, value, expires, path, domain, secure) {
20 document.cookie = name + "=" + escape (value) +
21 ((expires) ? "; expires=" + expires.toGMTString() : "") +
22 ((path) ? "; path=" + path : "") +
23 ((domain) ? "; domain=" + domain : "") +
24 ((secure) ? "; secure" : "");
25 }
26 function getCookieVal (offset) {
27 var endstr = document.cookie.indexOf (";", offset);
28 if (endstr == -1)
29 endstr = document.cookie.length;
30 return unescape(document.cookie.substring(offset, endstr));
31 }
32 function schreibeCookie() {
33 haltbarDatum = new Date(2007,11,31,1,0,0);
34 document.cookie = SetCookie(
35 "user", document.mF.id.value, haltbarDatum);
36 document.cookie = SetCookie(
37 "pw", document.mF.pw.value, haltbarDatum);
38 }
39 function leseCookie() {
40 wert = GetCookie("user");
41 if(wert != null) document.mF.id.value=wert;
42 wert = GetCookie("pw");
43 if(wert != null) document.mF.pw.value=wert;
44 }
45 </script></head><body onload="leseCookie()">
46 <form name="mF" onsubmit="schreibeCookie()">
47 <table>
48 <tbody><tr><td>Userid</td>
49 <td><input name="id"></td></tr>
50 <tr><td>Passwort</td>
51 <td><input name="pw" type="password"></td></tr>
52 <tr><td><input value="Ok" type="submit"></td>
53 <td> <input value="Abbruch" type="reset"></td></tr>
54 </tbody></table>
55 </form>
56 </body></html>

Antwort 11 von katy vom 30.01.2020, 22:30 Options

Hallo karim,

ist das Suchen nach Cookie-Funktionen dein Hobby?

Der Code unterscheidet sich nicht ernsthaft von allem anderen, was du bislang aufgestöbert hast. Warum interessiert dich dieser Code? Er ist im JavaScript nicht gut und im HTML-Bereich ziemlich fehlerhaft.

Natürlich könntest du die Funktion anders schreiben als der Urheber diesen Codes. Damit komme ich zu deiner Frage in Antwort 8. Die muss aber nicht lauten Warum benutzt man sondern Warum benutzt der Urheber diesen Codes eine weitere Funktion. Darüber kann ich nur spekulieren. Frag ihn selbst. Das ist reine Geschmackssache. Dein Codevorschlag würde genauso gehen (mal abgesehen von den fehlenden Anführungszeichen).

katy

Antwort 12 von karim vom 31.01.2020, 02:09 Options

es ist nicht mein hobby, es sollte halt nichts geben was ich nicht verstehe.
ich möchte das eben verstehen, was da abläuft.


Wenn ich cookies auslesen möchte, dann muss ich ,,name=“ oder „ ; “ suchen.
aber die cookies werden folgendermaßen gespeichert :

# Netscape HTTP Cookie File
# http://www.netscape.com/newsref/std/cookie_spec.html
# This is a generated file! Do not edit.

.disney.com TRUE / FALSE 946684799 DISNEY 194.42.212.24526008849568741758


hier gibt es aber kein „name=“ oder „ ; “ ?!

Antwort 13 von katy vom 31.01.2020, 07:28 Options

Hallo karim,

wie irgendein Browser intern die Cookies speichert und was andere Seiten über andere Techniken da rein packen hat mit der JavaScript-document.cookie-Eigenschaft aber jetzt kaum noch was zu tun.

katy

Antwort 14 von karim vom 02.02.2020, 01:10 Options

aber wie kann man zum bsp. nach "name=" in einem cookie suchen,wenn man den cookie auslesen möchte, da es gar nicht vorkommt ?

Antwort 15 von katy vom 02.02.2020, 12:36 Options

Hallo karim,

wenn es nicht drin vorkommt ist das eben so. Was liefert dir
var derCookie=document.cookie;
alert(derCookie);

Alle Funktionen, die du bisher hier gepostest hast zum Cookie-Lesen fangen an dieser Stelle an, den String (also die Zeichenkette) zu analysieren. Wenn du selbst den Cookie gesetzt hast, weiß du wonach du suchen muss, wenn nicht dann nicht. Dann ist es eben erst einmal eine Zeile beliebiger Text. Wie eine E-Mail. Bevor du nicht rein geschaut hast weißt du nicht, was darin steht, es sei denn du hast sie selbst geschrieben oder du weißt, dass der Absender immer bestimmte Informationen in eine bestimmte Reihenfolge setzt.

katy

Antwort 16 von karim vom 04.02.2020, 18:02 Options

ich meine , aber bei jedem cookie,das ich auslesen möchte, muss ich ,,name=“ oder „ ; “ suchen , auch wenn ich weiss was ich suche,

aber im cookie gibt es kein ,,name=,, , wie soll ich dann ,,name=,, finden ?

Antwort 17 von katy vom 05.02.2020, 07:22 Options

Hallo karim,

der Name des Cookies muss durchaus nicht "name" sein. Du wirst doch wahrscheinlich auch nur wenige Menschen mit dem Nachnamen "Nachname" kennen.

katy

Antwort 18 von karim vom 05.02.2020, 19:22 Options

ich verstehe nicht wie das bei javascript funktioniert,

wenn da steht beim setzen eines cookies ... name="autor"...

und ich beim auslesen ich nach ,,name=,, suche , wie es in vielen funktionen vorkommt , bsp.:

function getCookie(name) {
var i=0; //Suchposition im Cookie
var suche = name + "=";
while (i<document.cookie.length) {
if (document.cookie.substring(i, i + suche.length)
== suche) {
var ende = document.cookie.indexOf(";", i
+ suche.length);

cookies werden so gespeichert:

.disney.com TRUE / FALSE 946684799 DISNEY 194.42.212.24526008849568741758

oben im cookie,generell in cookies, kommt überhaupt nicht ,,name, expires ,path ,,vor !? es steht alles auf ersten blick unverständlich dar!

1)wie wird dann ,,name=,, gefunden , wenn im cookie nur ,,autor,, steht und nicht ,,name="autor",, ?? denn es heisst , dass man beim auslesen immer nach ,,name=,, suchen muss !

2)weiss der interpreter oder browser was ich mit ,,name=,, meine , denn ich will ja den wert auslesen , und dasselbe mit domain ,path, expires ??

3) was heisst TRUE / FALSE ?

Antwort 19 von katy vom 05.02.2020, 20:54 Options

Hallo karim,

für diesen disney-Cookie gilt einfach Antwort 13.

Deine Fragen erübrigen sich dadurch eigentlich. Trotzdem ein paar Bemerkungen dazu:

Offensichtlich hat der Ersteller diesen Cookies ein anderes Schema als das dir bekannte "foo=bar". Dann greift deine getCookie-Funktion natürlich nicht. Frage am besten den Autoren des Programms, das den Cookie gesetzt hat, nach dem konkreten Aufbau. Dann kannst du einen darauf optimierten JavaScript-Code entwickeln.
true ist English für wahr, false für falsch. Mehr lässt sich dazu nicht sagen.

katy

Antwort 20 von karim vom 06.02.2020, 16:29 Options

Kannst du mir sagen warum in einem gesetzten cookie kein ,, name,wert,domain,expires,path,secure,, als wörter vorkommen ?

Ich würde ja verstehen ,dass wenn cookies zum bsp. im firefox so gespeichert werden :

Name="Autor"; wert="Christian Wenz";domain=null; expires=(new Date()).getTime() + 1000*3600*24).toGMTString())

1) wenn ich dann in so einem cookie mit javascript den wert auslesen möchte,also die zeichenkette zu analisieren beginne , ich einfach mit stringfunktionen nach ,,wert=,, oder ,,name=,, suchen muss oder nach einem semikolon, denn oben ist das dann auch vorhanden, im gegensatz zu der art der speicherung vom cookie-beispiel ,,disney,, . da ist kein ,,name= ,, und ,,wert=,, vorhanden . cookies werden doch immer innerhalb eines browser nach selbem schema gespeichert.

Ich verstehe bloß nicht wie ich mit javascript eine zeichenkette auslesen kann , wenn sie dort wie beim bsp. Disney ( bei allen anderen cookies im firefox ist das auch so) gar nicht zu sehen ist, also gar nicht da ist.
Vertseh ich irgendwie nicht ???

2)Du sagst ,es gibt noch ein anderes schema als ,,foo=bar,, . ich habe gelernt ,dass ich beim auslesen immer z.b. nach ,,name=,, suchen soll oder ,, ; ,, , als ein ende einer zeichenkette. trifft das bei diesem anderen schema nicht zu, und was ist das für ein schema ?

Übrigens hab ich hier noch was interessantes gefunden : ( ich weiss auch , was true und false auf deutsch bedeutet )

...über was kann ich denn ein bild hier rein tun , da gabs eine webseite, habe ich jetzt vergessen ...

Ähnliche Themen

Trojaner???
Wanna  03.06.2007 - 37 Hits - 3 Antworten

Was ist ein Tracking Cookie?
Beginner88  12.08.2007 - 50 Hits - 1 Antwort

kostenloses Cookie Software
Cyberpike  30.08.2007 - 61 Hits - 1 Antwort

Cookie-Button
WeeGeeler  26.10.2007 - 103 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026