如何在登录中添加一个记住我的功能


How to add a remember me function in login?

session_start();
if(isset($_POST['submit'])) {
$uname = $_POST['uname'];
$pw = $_POST['pw'];
    require_once('db.php');
    $sql = 'SELECT * FROM users_table 
                WHERE username="'.mysql_escape_string($uname).'" AND password="'.mysql_escape_string(md5($pw)).'"
            LIMIT 0, 1
    ';
    $qry = mysql_query($sql);   
    $count = mysql_num_rows($qry);
    if($count > 0) {
        $_SESSION['username'] = $uname;
        $_SESSION['password'] = $pw;
        header('Location: products_list.php');
    } else {
        header('Location: index.php?error=1');
    }
} 

使用setcookie()函数设置cookie,然后在用户访问登录限制页面时检索它

setcookie描述

我已经使用Cookie完成了,它运行得非常完美…您唯一需要做的就是在cookie中添加编码以确保安全…

session_start();
if($_SERVER['REQUEST_METHOD']=='POST' && !empty($_POST['submit'])) {
$uname = $_POST['uname'];
$pw = $_POST['pw'];
require_once('db.php');
//Checking whether the cookies are set or not
if(!empty($_COOKIES['Last_Login_UserID']) && !empty($_COOKIES['Last_Login_Password'])){
    if($_COOKIES['Last_Login_UserID']==$uname && $_COOKIES['Last_Login_Password']==$pw){
        //Cookies are perfect give access
        $_SESSION['username'] = $uname;
        $_SESSION['password'] = $pw;
         header('Location: products_list.php');
    }else{
        //Cookies cookies are wrong
        login_check($uname,$pw);
    }
}else{
    //Cookies are not set so check the database
    login_check($uname,$pw);
}
//Function to check the login
function login_check($uname,$pw){
     $sql = 'SELECT * FROM users_table WHERE username="'.mysql_escape_string($uname).'" AND password="'.mysql_escape_string(md5($pw)).'" LIMIT 0, 1 ;';
$qry = mysql_query($sql);   
$count = mysql_num_rows($qry);
    if($count == 1) {
        $_SESSION['username'] = $uname;
        $_SESSION['password'] = $pw;
        if(!empty($_POST['remember_me']) && $_POST['remember_me']==true){
            setcookie('Last_Login_UserID',$_SESSION['username'],(60*60*24),"/");
            setcookie('Last_Login_Password',$_SESSION['password'],(60*60*24),"/");
        }
        header('Location: products_list.php');
    } else {
        header('Location: index.php?error=1');
    }
}}