ホームページ >バックエンド開発 >PHPチュートリアル >パスワードを記憶し、PHP に自動的にログインするコードを実装するにはどうすればよいですか?

パスワードを記憶し、PHP に自動的にログインするコードを実装するにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-06-13 11:56:471143ブラウズ

パスワードを記憶する自動ログインを PHP で実装するコードを探しています
RT 初心者です。実行できるコードを教えていただければ幸いです。ありがとうございます
-----解決策---- ------ ----------

<br /><br />是从类中抽取出来。<br /><br /> private $_cookie_user_id='au';<br /> private $_cookie_user_passwd='ap';<br /><br /> /**<br />     * 登录,如果已经登录,则自动 跳到用户中心<br />     */<br />    public function login()<br />    {<br />        if($_SESSION['user'])<br />        {<br />            goto end;//已经登录<br />        }<br />        $login_id=isset($_POST['login_id'])?($_POST['login_id']):'';<br />        $passwd=isset($_POST['passwd'])?($_POST['passwd']):'';<br />        if(!$login_id)<br />        {<br />           $this->toLogin();//需要登录<br />        }<br /><br />        if($this->_login($login_id, $passwd))<br />        {<br />            $this->setloginCookie($_POST['autoLogin'],$login_id,$password);//设置登录cookie信息<br />        }else<br />        {<br />            $this->output('登录失败:用户名或者密码不正确');//<br>去 <a href="/h/login.html">再登录</a><br>');<br />       <br />            return ;<br />        }<br /> end:<br />        //$this->assign('nick_name',$_SESSION['user']['nick_name']);<br /><br />        $this->UCenter();<br /><br />    }<br /><br /> /**<br />   * 返回cookie登录结果,如果cookie不存在就返回假。!<br />   * @return boolean<br />   */<br /><br />    public function cookieLogin()<br />    {<br />        $cookie_login_id=$_COOKIE[$this->_cookie_user_id];<br />        $cookie_password=$_COOKIE[$this->_cookie_user_passwd];<br /><br />        if($cookie_login_id)<br />        {<br />            $result=$this->_login($cookie_login_id, $cookie_password,true);<br />            echo $result;//返回给ajax调用此函数<br />            return $result;<br />        }<br />        else<br />            return false;<br />    }<br />    /**<br />     * 设置登录cookie信息,$autoLogin,无值或者为0 就什么都不做,<br />     * 大于0的数字就是自动登录的日期数,小于等于0就是取消自动登录设置<br />     * @param unknown $autoLogin 大于0就设置自动登录,小于0 就取消自动登录<br />     */<br />    private function setloginCookie($autoLogin,$login_id,$passwd)<br />    {<br /><br />        if(!$autoLogin) //无值就什么都不做<br />            return;<br />        if($autoLogin>0)//大于数字就是自动登录的日期数<br />        {<br />            //import('org.crypt.Base64');<br />            $time=time()+60*60*24*$autoLogin;<br />            setcookie($this->_cookie_user_id,$login_id,$time,'/');<br />            setcookie($this->_cookie_user_passwd,$passwd,$time,'/');<br />        }else //小于0就是取消<br />        {<br />            setcookie($this->_cookie_user_id,$login_id,time()-100,'/');<br />            setcookie($this->_cookie_user_passwd,$passwd,time()-100,'/');<br />        }<br />    }<br /><br />

------解決策----------- ----- ---
私が提供するのはプロセス指向のコードです。
パブリックおよびプライベートの手続き型コードを削除するだけです。
------解決策---------
Cookie セッションを使用して実現できます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。