Heim >Backend-Entwicklung >PHP-Problem >So erreichen Sie in PHP eine automatische Anmeldung in sieben Tagen

So erreichen Sie in PHP eine automatische Anmeldung in sieben Tagen

藏色散人
藏色散人Original
2021-12-16 10:31:422848Durchsuche

So implementieren Sie die automatische Anmeldung in PHP: 1. Erstellen Sie eine neue show.php-Datei, um die Anmeldeseite zu implementieren. 2. Erstellen Sie eine function.php-Datei, um verschlüsselte Cookies zu implementieren. 3. Legen Sie den Benutzernamen und das Passwort fest 4. Öffnen Sie die Sitzung und implementieren Sie die automatische Anmeldung innerhalb einer Woche. Melden Sie sich einfach an.

So erreichen Sie in PHP eine automatische Anmeldung in sieben Tagen

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.4, Dell G3-Computer.

Wie erreiche ich eine automatische Anmeldung innerhalb von sieben Tagen in PHP?

PHP ermöglicht die automatische Anmeldung innerhalb einer Woche:

1. Erstellen Sie vier neue Dateien
So erreichen Sie in PHP eine automatische Anmeldung in sieben Tagen

show.php

<?php
?>
<html >

<head>
<meta charset="utf-8">
<title>测试</title>
</head>
<body>
<form action="login.php" method="post">
用户名<input type="text" name="name"/>
密码<input type="text" name="psd"/>
自动登录<input type="radio" name="auto">
    <input type="submit" value="提交"/>

</form>
</body>
</html>

function.php//Verschlüsseltes Cookie
Hier habe ich verwendet anders Oder Verschlüsselungsmethode, denn nach zwei XORs ändert sich der Wert wieder auf den ursprünglichen Wert.

<?php
function encryption ($value, $type=0) {
$key = md5(&#39;denglu&#39;);//里边的字符可以自己设置
if (!$type) {
return str_replace(&#39;=&#39;, &#39;&#39;, base64_encode($value ^ $key));
}

$value = base64_decode($value);
return $value ^ $key;
}

login.php

<?php
require_once(&#39;function.php&#39;);
session_start();//开启session
header("Content-Type: text/html; charset=UTF-8");

/*
 * 添加一些用户名和密码的判断
 * 。。。。。。。。。
 */

if(isset($_POST[&#39;auto&#39;])){//如果勾选了自动登陆一周
    if(!isset($_COOKIE[&#39;auto&#39;])){
        setcookie(&#39;auto&#39;,encryption($_POST[&#39;name&#39;]),7*24*3600+time());//设置cookie过期时间为一周后
    }
    $_SESSION[&#39;name&#39;] = $_POST[&#39;name&#39;];
    header(&#39;location:success.php&#39;);
}else{//没有勾选自动登陆一周
    $_SESSION[&#39;name&#39;] = $_POST[&#39;name&#39;];
    header(&#39;location:success.php&#39;);
}

success.php

<?php
session_start();//开启session
require_once(&#39;function.php&#39;);
header("Content-Type: text/html; charset=UTF-8");
if(isset($_SESSION[&#39;name&#39;])){
echo &#39;成功登陆session:用户名为&#39;.$_SESSION[&#39;name&#39;];
}
elseif(isset($_COOKIE[&#39;auto&#39;])){
echo &#39;成功登陆cookie:用户名为&#39;.encryption($_COOKIE[&#39;auto&#39;],1);
}else{//什么都没有的跳转到登录表单
header(&#39;location:show.php&#39;);
}

?>

Führen Sie es aus und dann öffnen, dieses Mal wird das Cookie gelesen
So erreichen Sie in PHP eine automatische Anmeldung in sieben Tagen

Dies dient nur zur Vorstellung, die spezifische Anmeldebestätigung muss vom Leser noch berücksichtigt werden.

Empfohlenes Lernen: „So erreichen Sie in PHP eine automatische Anmeldung in sieben TagenPHP-Video-Tutorial


So erreichen Sie in PHP eine automatische Anmeldung in sieben Tagen

Das obige ist der detaillierte Inhalt vonSo erreichen Sie in PHP eine automatische Anmeldung in sieben Tagen. 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