国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

Zend Framework之Zend_Auth用戶登錄與退出

2020-03-22 18:09:03
字體:
來源:轉載
供稿:網友
  • 在入口文件中加上Zend_Session::start();//啟動SESSION
    UserController.php文件:
    //用戶登錄
    function loginAction()
    {
    //auth實現用戶登錄
    if(strtolower($_SERVER['REQUEST_METHOD'])=='post')
    {
    Zend_Loader::loadClass('Zend_Filter_StripTags');
    $filter=new Zend_Filter_StripTags();
    //表單的post值
    $username = $filter->filter($this->_request->getPost('username'));
    $password = $filter->filter($this->_request->getPost('pwd'));
    //$validcode = $filter->filter($this->_request->getPost('validcode'));//驗證碼
    //echo $validcode; exit;
    if( !empty($username) )
    {
    $db = Zend_Registry::get('dbAdapter');
    $authAdapter = new Zend_Auth_Adapter_DbTable($db);
    $authAdapter->setTableName('m_user')//數據庫表名
    // 數據庫表的列的名稱,用來表示身份。身份列必須包含唯一的值,例如用戶名或者e-mail地址。
    ->setIdentityColumn('username')
    //數據庫表的列的名稱,用來表示證書。在一個簡單的身份和密碼認證scheme下,證書的值對應為密碼
    ->setCredentialColumn('pwd')
    ->setIdentity($username)//認證的值
    ->setCredential($password);

    $auth = Zend_Auth::getInstance();
    $result = $auth->authenticate($authAdapter);// 執行認證查詢,并保存結果
    // 輸出身份
    //echo $result->getIdentity() . "/n/n";
    // 輸出結果行
    //echo '<pre>';print_r($authAdapter->getResultRowObject());exit;

    if( $result->isValid())//isValid() - 返回 true 當且僅當結果表示一個成功的認證嘗試
    {
    $data = $authAdapter->getResultRowObject(null,'password');
    //echo '<pre>';print_r($data);exit;
    if( $auth->hasIdentity() )//成功登錄
    {
    //auth之后寫入session
    $user = new Zend_Session_Namespace('user');
    $user->name = $username;
    $user->setExpirationSeconds(60);//命名空間 "user" 將在第一次訪問后 60 秒過期
    echo '<h3><font color=red> 登錄成功!</font></h3>';
    }
    }else{
    echo '<h3><font color=red> 登錄失敗,請重新登錄!</font></h3>';
    }
    }else{
    echo "<h3><font color='red'>用戶名不能為空,請輸入用戶名.</font></h3>";
    }
    }else{
    echo '呵呵,對不起,你的操作是非法';
    }
    }

    //用戶退出
    function loginoutAction()
    {
    $user = new Zend_Session_Namespace('user');
    $user->__unset();//銷毀session
    echo '已經安全退出!';
    }

    //在任何地方輸出
    $user = new Zend_Session_Namespace('user');
    if( isset( $user->name ) )
    {
    echo '會員'.$user->name;
    }else{
    echo '游客';
    }

    PHP編程

    鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 乳山市| 正镶白旗| 读书| 开原市| 连云港市| 罗山县| 黔江区| 福鼎市| 突泉县| 马关县| 凌云县| 涿州市| 锡林浩特市| 新乐市| 彰武县| 清徐县| 苍溪县| 呼和浩特市| 广平县| 石嘴山市| 庆云县| 安岳县| 灵宝市| 营口市| 交口县| 四川省| 克拉玛依市| 夏邑县| 仙桃市| 衡阳市| 许昌县| 濮阳市| 扶沟县| 额尔古纳市| 舒兰市| 达州市| 昆明市| 文水县| 大港区| 鞍山市| 定边县|