當前位置: 首頁>>代碼示例>>PHP>>正文


PHP CString::encodeMachinePassword方法代碼示例

本文整理匯總了PHP中CString::encodeMachinePassword方法的典型用法代碼示例。如果您正苦於以下問題:PHP CString::encodeMachinePassword方法的具體用法?PHP CString::encodeMachinePassword怎麽用?PHP CString::encodeMachinePassword使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在CString的用法示例。


在下文中一共展示了CString::encodeMachinePassword方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: actionLogin

 /**
  * Index method
  */
 public function actionLogin()
 {
     $objLoginModel = LoginModel::model();
     try {
         //檢查是否是post請求
         $boolCheckLogin = false;
         if (Nbt::app()->request->isPostRequest) {
             // 綁定數據
             $aryUserInfo['uname'] = isset($_POST['uname']) ? htmlspecialchars(trim($_POST['uname'])) : '';
             $aryUserInfo['pwd'] = isset($_POST['pwd']) ? CString::encodeMachinePassword(trim($_POST['pwd'])) : '';
             $strIsRemember = isset($_POST['remember']) ? htmlspecialchars(trim($_POST['remember'])) : 'no';
             // 檢查登錄
             $boolCheckLogin = LoginModel::model()->checkLogin($aryUserInfo);
             if ($boolCheckLogin === false) {
                 throw new CModelException(CUtil::i18n('controllers,login_index_pwdWrong'));
             }
             //根據是否登入成功,再判斷是否將用戶名和密碼寫入cookie
             if ($boolCheckLogin === true && $strIsRemember === 'yes') {
                 $aryUserInfo['pwd'] = CString::encode($aryUserInfo['pwd'], UKEY);
                 //設置cookie,時間為一年
                 setcookie($this->_cookeName, base64_encode(json_encode($aryUserInfo)), time() + 365 * 24 * 3600);
             }
         } else {
             if (!empty($_COOKIE[$this->_cookeName]) && $boolCheckLogin === false) {
                 $aryUserInfo = json_decode(base64_decode($_COOKIE[$this->_cookeName]), 1);
                 $aryUserInfo['pwd'] = CString::decode($aryUserInfo['pwd'], UKEY);
                 if (($boolCheckLogin = $objLoginModel->checkLogin($aryUserInfo)) === false) {
                     throw new CModelException(CUtil::i18n('controllers,login_index_pwdWrong'));
                 }
             }
         }
         //contains/判斷是否登入成功
         if ($boolCheckLogin === true) {
             Nbt::app()->session->set('userInfo', $aryUserInfo);
             UtilMsg::saveTipToSession(CUtil::i18n('controllers,login_index_success'));
             $this->redirect(array('index/index'));
         }
     } catch (CModelException $e) {
         UtilMsg::saveErrorTipToSession($e->getMessage());
     }
     $this->layout = 'login';
     $this->seoTitle = CUtil::i18n('controllers,login_index_seoTitle');
     //根據key判斷文件是否存在,如果不存在則)創建一個默認賬戶
     $objLoginModel->createDefaultUserInfo();
     $this->render('login', array('aryData' => $aryUserInfo));
 }
開發者ID:erdincay,項目名稱:WIIBOX,代碼行數:49,代碼來源:LoginController.php

示例2: createDefaultUserInfo

 /**
  * 創建默認用戶
  * 
  * @author zhangyi
  * @date 2014-5-30
  */
 public function createDefaultUserInfo()
 {
     //判斷是否存在用戶信息文件來確定是否創建用戶文件
     $redis = $this->getRedis();
     $aryUserInfo = $redis->readByKey($this->_fileName);
     if (empty($aryUserInfo)) {
         return $redis->writeByKey($this->_fileName, json_encode(array('uname' => UUSERNAME, 'pwd' => CString::encodeMachinePassword(UPASSWORD))));
     } else {
         return false;
     }
 }
開發者ID:erdincay,項目名稱:WIIBOX,代碼行數:17,代碼來源:LoginModel.php


注:本文中的CString::encodeMachinePassword方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。