Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist der Unterschied zwischen Sitzung und Cookie in PHP?

Was ist der Unterschied zwischen Sitzung und Cookie in PHP?

Guanhui
GuanhuiOriginal
2020-07-21 14:57:222592Durchsuche

Was ist der Unterschied zwischen Sitzung und Cookie in PHP?

Was ist der Unterschied zwischen Sitzung und Cookie in PHP?

1. Cookie-Daten werden im Browser des Kunden gespeichert und Sitzungsdaten werden auf dem Server gespeichert.

2. Sitzung existiert entsprechend dem Browserprozess und der Überlebenszeit des Cookies können eingestellt und angepasst werden;

3. Sitzung muss Cookie verwenden.

PHP-Sitzungsvariablen

Wenn Sie eine Anwendung auf Ihrem Computer ausführen, öffnen Sie sie und führen etwas aus. Ändern und dann schließe es. Es ähnelt stark einem Gespräch. Der Computer weiß, wer Sie sind. Es weiß, wann Sie Apps öffnen und schließen. Im Internet tritt jedoch ein Problem auf: Da HTTP-Adressen ihren Status nicht beibehalten können, hat der Webserver keine Ahnung, wer Sie sind und was Sie tun.

PHP-Sitzung löst dieses Problem, indem Benutzerinformationen für die spätere Verwendung auf dem Server gespeichert werden (z. B. Benutzername, gekaufte Artikel usw.). Sitzungsinformationen sind jedoch temporär und werden gelöscht, nachdem der Benutzer die Website verlässt. Wenn Sie Informationen dauerhaft speichern müssen, können Sie die Daten in einer Datenbank speichern.

Sitzung funktioniert, indem für jeden Besucher eine eindeutige ID (UID) erstellt und auf dieser UID basierende Variablen gespeichert werden. Die UID wird in einem Cookie gespeichert oder über die URL weitergegeben.

Verwendungsbeispiele

<?php//  表单提交后...$posts = $_POST;//  清除一些空白符号foreach ($posts as $key => $value) {
    $posts[$key] = trim($value);}$password = md5($posts["password"]);$username = $posts["username"]; $query = "SELECT `username` FROM `user` WHERE `password` = &#39;$password&#39; AND `username` = &#39;$username&#39;";//  取得查询结果$userInfo = $DB->getRow($query); if (!empty($userInfo)) {
    //  当验证通过后,启动 Seindex.html> 验证 session里的`admin`是否为 `true`<?php//  防止全局变量造成安全隐患$admin = false;//  启动会话,这步必不可少session_start();//  判断是否登陆if (isset($_SESSION["admin"]) && $_SESSION["admin"] === true) {
    echo "您已经成功登陆";} else {
    //  验证失败,将 $_SESSION["admin"] 置为 false
    $_SESSION["admin"] = false;
    die("您无权访问");}?>

Empfohlenes Tutorial: „PHP

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Sitzung und Cookie in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn