Bagaimana untuk menetapkan kuki untuk mengingati kata laluan dalam php

藏色散人
Lepaskan: 2023-03-12 14:28:01
asal
3325 orang telah melayarinya

Cara menetapkan kuki untuk mengingati kata laluan dalam PHP: 1. Dalam halaman login.php, tetapkan borang 2. Sahkan maklumat borang pada halaman log masuk dan buat kuki 3. Semak sesi dan gunakan kuki untuk menetapkan nilai.

Bagaimana untuk menetapkan kuki untuk mengingati kata laluan dalam php

Persekitaran pengendalian artikel ini: sistem windows7, versi PHP7.1, komputer DELL G3

php menyedari mengingati kata laluan secara automatik lain kali Log masuk

Blog ini juga menulis tentang kaedah untuk melaksanakan fungsi "ingat status log masuk saya" Ringkasnya, ia adalah untuk log masuk pertama Sesi memberikan maklumat pengguna, mengesan sesi dan menggunakan kuki untuk menetapkan nilai selepas ia tamat tempoh; Internet, kod berikut telah disusun: Selain itu Anda boleh merujuk log masuk PHP untuk mengingati idea pelaksanaan kata laluan
Dalam halaman log masuk.php, lakukan tetapan borang:

login_chk Halaman .php digunakan untuk mengesahkan maklumat borang halaman log masuk dan mencipta Kuki:

menu.php dan halaman berfungsi lain akan menyemak sesi:
<?php
session_start();
?>
<form  action="login_chk.php" method="post">
  
Salin selepas log masuk

Untuk menyemak sesi dan membatalkan kuki untuk tugasan, dalam index1.php (indeks Dilaksanakan dalam halaman semak):
 1 <?php 2 header("Content-type:text/html;charset=gb2312"); 3 
 4 session_start(); 5 include_once("conn/conn.php");  //加载数据库连接文件 6 
 7 error_reporting(0); 8 
 9 if(empty($_POST[&#39;username&#39;]) or empty($_POST[&#39;pass&#39;])){10     echo "<script language=&#39;javascript&#39;>alert(&#39;用户名和密码不能为空!&#39;);history.go(-1);</script>";11 }12 else{ 
13     $username=$_POST[&#39;username&#39;];14     $pass=$_POST[&#39;pass&#39;];15     $password = md5($pass);16     $remember = $_POST[&#39;remember&#39;]; 
17     
18     $testrst = sqlsrv_query($conn, "select * from Employee where name like &#39;$username&#39; or number like &#39;$username&#39;");    //执行查询操作  
19     
20     if(!empty($remember)){     //如果用户选择了,记录登录状态就把用户名和加了密的密码放到cookie里面 
21         setcookie("username", $username, time()+3600*24*30); 
22         setcookie("password", $pass, time()+3600*24*30); 
23     }  
24     
25     
26     
27      
28     
29     if(sqlsrv_has_rows($testrst)){30         
31         $rst = sqlsrv_query($conn, "select * from Employee where (name like &#39;$username&#39; or number like &#39;$username&#39;) and pwd = &#39;$password&#39;");32         
33         
34         if(sqlsrv_has_rows($rst)){                                                              //判断登录用户名和密码是否正确35             $adminrow = sqlsrv_fetch_array($rst);37             $userwhethe = 0;38             $_SESSION[&#39;id&#39;]=$adminrow[0];      
41             $_SESSION[&#39;number&#39;]=$adminrow[1];42             $_SESSION[&#39;name&#39;]=$adminrow[2];43             if($username == $adminrow[1]){44               $_SESSION[&#39;type&#39;] = 1;45             }else{46                $_SESSION[&#39;type&#39;] = 2;47             }57 
59               echo "<meta http-equiv=\"refresh\" content=\"0;url=menu.php\" />";60 64         }else{65           echo "<script>alert(&#39;密码错误,请重新登录。&#39;);history.go(-1);</script>";66         }67    }else{68        echo "<script>alert(&#39;该用户名不存在!,请重新登录。&#39;);history.go(-1);</script>";69    }70 }71 
72 ?>
Salin selepas log masuk

Di samping itu, memandangkan keperluan pengguna untuk log keluar daripada sistem atau log keluar dan log masuk semula, halaman log keluar logout.php ditetapkan:
<?php
session_start();
include_once("conn/conn.php");
error_reporting(0);
if(empty($_SESSION[&#39;name&#39;]) and empty($_SESSION[&#39;id&#39;])){              //判断当前用户是否为登录状态
echo "<script>alert(&#39;请登录后再进行执行操作!&#39;);history.go(-1);</script>";
}else{
?>
网页主体
?>
Salin selepas log masuk

Selepas pelaksanaan, lancar untuk digunakan. Walau bagaimanapun, penjimatan kuki dan sesi kata laluan tidak begitu sesuai, dan borang kata laluan tidak disimpan secara lalai pada antara muka log masuk pengguna Aspek fungsi ini masih perlu diperbaiki.
 1 <?php 2 session_start(); 3 
 4  if(empty($_SESSION[&#39;username&#39;])){                                      //检查一下session是不是为空 
 5      if(empty($_COOKIE[&#39;username&#39;]) || empty($_COOKIE[&#39;password&#39;])){  
 6         header("location:login.php");                         
 7      }else{                                                               
 8         $_SESSION[&#39;name&#39;] = $_COOKIE[&#39;username&#39;];   
 9         header("location:menu.php"); 
10     } 
11       
12  }13 ?>
Salin selepas log masuk

Pembelajaran yang disyorkan: "

Tutorial Video PHP
<?php
session_start();
unset($_SESSION[&#39;username&#39;]);
unset($_SESSION[&#39;password&#39;]);
setcookie(&#39;username&#39;,&#39;&#39;,0);
setcookie(&#39;password&#39;,&#39;&#39;,0);
header("location:index.php");
?>
Salin selepas log masuk
"

Atas ialah kandungan terperinci Bagaimana untuk menetapkan kuki untuk mengingati kata laluan 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