通过设置cookie记住密码

时间:2011-05-23 10:19:21

标签: php codeigniter

在我的页面中,我有一个记住我复选框。当我检查这个时,我想在浏览器cookie中输入我的密码。可能吗? 我已将声明提供为:

if ($remember=='yes') {
    $this->load->helper('cookie');
    $cookie =array(
        'name'   => 'username',
        'value'  => $username,
        'expire' => '1209600'
    );
    $this->input->set_cookie($cookie);
}

4 个答案:

答案 0 :(得分:7)

你永远不应该在cookie中存储未加密的密码的原因是,在这种情况下,cookie盗窃将提供永久访问。如果您存储散列版本,那么只要cookie有效就可以模拟用户,但是一旦该cookie失效,攻击者将无法再次重新登录。

简而言之:永远不要在客户端浏览器中存储纯文本信息,始终使用(可能是盐渍和/或签名)哈希密码和用户名。

答案 1 :(得分:2)

是,

查看此网站Using Cookies in PHP - User Logon

答案 2 :(得分:-1)

    <?php 
    session_start(); 

    if(isset($_COOKIE['Joe2Torials'])) 
    { 
    $dbHost = 'localhost'; 
    $dbUser = 'root'; 
    $dbPass = ''; 
    $dbname = 'myshop'; 
    $username = $_COOKIE['Joe2Torials']['username']; 
    $password = $_COOKIE['Joe2Torials']['password']; 
    $db = mysql_connect($dbHost,$dbUser,$dbPass);
    mysql_select_db($dbname,$db);

    $query = "SELECT user, pass FROM login WHERE user = '$username' AND pass = '$password'"; 
    $result = mysql_query($query, $db); 

    if(mysql_num_rows($result)) 
    { 
    $_SESSION['loggedin'] = 1; 

    header('Location:admin.php'); 
    exit(); 
    } 
    } 
?> 

<form method="post" name="cookie" action="process.php"> 

<p><label for="username">Username : <input type="text" name="username" id="username" /></label></p> 
<p><label for="password">Password : <input type="password" name="password" id="password" /></label></p> 
<p><input type="checkbox" name="setcookie" value="setcookie" /> Remember Me</p> 

<p><input type="submit" name="submit" value="Submit" /> <input type="reset" name="reset" value="Reset" /></p> 
</form> 

<?php 
if (isset($_GET['error']) AND !empty($_GET['error'])) 
{ 
echo 'Invalid login data supplied. Please try again.'; 
} 
?>

答案 3 :(得分:-2)

是的,它是可行的......你可以通过设置cookie来记住你的密码 See this videos