Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php

Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php

藏色散人
Lepaskan: 2023-03-14 13:42:01
asal
2871 orang telah melayarinya

Cara melaksanakan log masuk automatik tujuh hari dalam PHP: 1. Buat fail show.php baharu untuk melaksanakan halaman log masuk 2. Buat fail function.php untuk melaksanakan kuki yang disulitkan; pertimbangan nama dan kata laluan; 4. Buka sesi dan Anda boleh log masuk secara automatik dalam masa seminggu.

Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php

Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.4, komputer Dell G3.

Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php?

PHP mendayakan log masuk automatik dalam masa seminggu:

1 .Buat empat fail baharu
Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php

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>
Salin selepas log masuk

function.php//encrypted cookie
Di sini saya menggunakan kaedah penyulitan XOR, kerana Selepas dua XOR, ia akan bertukar kembali kepada nilai asal

<?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;
}
Salin selepas log masuk

log masuk.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;);
}
Salin selepas log masuk

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;);
}

?>
Salin selepas log masuk

Jalankannya
Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php

Semak kuki

Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php

Tutup dan buka semula penyemak imbas, kali ini kuki dibaca
Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php

Ini hanyalah idea, pengesahan log masuk khusus masih belum dipertimbangkan oleh pembaca sendiri.

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk mencapai log masuk automatik dalam tujuh hari dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan