Heim > Artikel > Backend-Entwicklung > Detaillierte Einführung in die Verwendung von Cookies und Sitzungen in PHP
Sehr oft müssen wir die Aktivitäten der Besucher auf der gesamten Website verfolgen und ihre Identität automatisch oder halbautomatisch identifizieren (d. h. Funktionen wie die Website-Anmeldung, die häufig erwähnt werden). Derzeit verwenden wir häufig Cookies und Sitzungen zu verfolgen und zu beurteilen
1. Einführung und Unterschied zwischen Cookie und Sitzung
In vielen Fällen müssen wir die Aktivitäten von Besuchern auf der gesamten Website verfolgen und ihre Identität automatisch oder halbautomatisch identifizieren. (Das sind Funktionen wie die Website-Anmeldung, über die wir normalerweise sprechen.) Zur Verfolgung und Beurteilung verwenden wir derzeit häufig Cookies und Sitzungen.
Unterschied
Sitzungsinformationen werden auf der Serverseite gespeichert, aber die Sitzungs-ID wird im Client-Cookie gespeichert. Natürlich sind die Sitzungsspeichermethoden von PHP unterschiedlich, sodass sie auch dann nachverfolgt werden können Cookies sind deaktiviert
Cookies bleiben vollständig auf dem Client, wie zum Beispiel: IE Firefox Wenn der Client Cookies deaktiviert, können sie nicht mehr verwendet werden
2 >
Setcookie(String-Name, String-Wert, Int-Ablauf, String-Pfad, String-Domäne, Int-Secure);wobei Name die Cookie-Variablennamen-ID ist. Sie können es verwenden, um Cookie-Variablen in PHP wie gewöhnlich zu referenzieren Variablennamen. value ist der Anfangswert der Cookie-Variablen; „peil“ stellt den relevanten Pfad der Cookie-Variablen dar; „secure“ ist nur gültig, wenn https sicher übertragen wird.
Cookie empfangen und verarbeiten
PHP für Cookie Die Unterstützung für den Empfang und die Verarbeitung ist sehr gut und erfolgt vollständig automatisch. Es entspricht dem Prinzip der FORM-Variablen und ist sehr einfach.
Wenn Sie beispielsweise ein Cookie mit dem Namen „MyCookie“ setzen, analysiert PHP es automatisch aus dem vom WEB-Server empfangenen HTTP-Header und bildet eine Variable wie eine gewöhnliche Variable mit dem Namen „$myCookie“. . Dasselbe gilt auch für Arrays. Eine andere Möglichkeit besteht darin, auf das globale Variable-Array $HTTP_COOKIE_VARS von PHP zu verweisen.
Beispiele sind wie folgt: (vorausgesetzt, diese wurden auf den vorherigen Seiten festgelegt und sind noch gültig)
echo $CookieArray[0];
echo $_COOKIE [" MyCookie"];
echo $HTTP_COOKIE_VARS["MyCookie"];
Cookie löschen
2. SetCookie("Cookie", "value" ,time()-1 / time() );
2. Verschiedene Browser verarbeiten Cookies inkonsistent und es kommt manchmal zu falschen Ergebnissen.
3. Die Einschränkung liegt auf der Clientseite. Die maximale Anzahl von Cookies, die von einem Browser erstellt werden können, beträgt 30, und jedes Cookie darf 4 KB nicht überschreiten. Die Gesamtzahl der Cookies, die von jeder WEB-Site gesetzt werden können, darf 20 nicht überschreiten.
session_start(); $_SESSION[name]=value; Seeeion
echo $_SESSION[name]; //Use session
isset($_SESSION[name]); // Judge
unset($_SESSION[name] ]); //Löschen
session_destroy (); //Alle Sitzungen verbrauchen
Hinweis: session_register(), session_unregister, session_is_registered werden unter PHP5 nicht mehr verwendet
Cookies-Verwendungsbeispiele
if($_GET[' out'])
{ //Wird zum Abmelden von Cookies verwendet setcookie('id',"");
setcookie('pass',""
echo "3f1c4e4b6b16bbbd69b2ee476dc4f83a location.href='login.php'2cacc6d41bbb37262a98f745aa00fbf0";//Da Cookies nicht rechtzeitig wirksam werden und erst bei erneuter Aktualisierung wirksam werden, lassen Sie die Seite daher nach dem Abmelden automatisch aktualisieren.
}
if($_POST['name']&&$_POST['password']) //Wenn die Variablen Benutzername und Passwort vorhanden sind, setzen Sie unten Cookies
{ //Wird zum Setzen von Cookies verwendet
setcookie( ' id',$_POST['name'],time()+3600);
setcookie('pass',$_POST['password'],time()+3600);
echo"< script> ;location.href='login.php'2cacc6d41bbb37262a98f745aa00fbf0"; //Cookies rechtzeitig wirksam werden lassen
}
if($_COOKIE['id']&&$_COOKIE['pass'])
{ //Nachdem Cookies erfolgreich gesetzt wurden, werden Cookies angezeigt
echo „Anmeldung erfolgreich!df250b2156c434f3390392d09b1c9563Benutzername: „.$_COOKIE['id'].“076402276aae5dbec7f672f8f4e5cc81 Passwort : ".$_COOKIE['pass'];
echo "df250b2156c434f3390392d09b1c9563";
echo "288f918ddb251194273bb2bb7ced2db5Cookies abmelden4a11e5928b3688cf38c9163b657eb5ac "; //Wenn innerhalb doppelter Anführungszeichen mehrere Anführungszeichen vorhanden sind, sind einfache Anführungszeichen erforderlich.
}
?>
157bbac558a7833eedb56b4dcc52ac44
Benutzer-ID:
fbc453fe010a0e1073b27ef7fc8a76b9076402276aae5dbec7f672f8f4e5cc81076402276aae5dbec7f672f8f4e5cc81
Passwort:
ce09dd6c711d83f754b570f95d40c9b3076402276aae5dbec7f672f8f4e5cc81df250b2156c434f3390392d09b1c9563
7c53702a2bf0be1eaf670e884b3f62e5
f5a47148e367a6035fd7a2faa965022e
Beispiel für die Sitzungsnutzung
<?php //session用法实例 session_start();//启动session,必须放在第一句,否则会出错。 if($_GET['out']) { unset($_SESSION['id']); unset($_SESSION['pass']); } if($_POST['name']&&$_POST['password']) { //用于设置session $_SESSION['id']=$_POST['name']; $_SESSION['pass']=$_POST['password']; } if($_SESSION['id']&&$_SESSION['pass']) { echo "登录成功!<br/>用户ID:".$_SESSION['id']."<br />用户密码:".$_SESSION['pass']; echo "<br />"; echo "<a href='login.php?out=out'>注销session</a>"; } ?>
b29a1f442b187a32a8f43cd96586d030
Benutzer-ID:
548052c193c31614ea2afa3f78d6e281076402276aae5dbec7f672f8f4e5cc81
Passwort:
ce09dd6c711d83f754b570f95d40c9b3076402276aae5dbec7f672f8f4e5cc81df250b2156c434f3390392d09b1c9563
f45769a8dcca667059fa44d505fc4cd5
f5a47148e367a6035fd7a2faa965022e
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Verwendung von Cookies und Sitzungen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!