# 教師賬號強制綁定手機或郵箱 #
未名教師賬號登錄時檢測是否綁定手機/郵箱、是否為初始密碼123456,流程如下:

*D:\wamp\www\ketang.test\weike\protected\controllers\LoginController.php*
actionIndex()
*D:\wamp\www\ketang.test\weike\themes\custom3\views\version2\login\themeType3\indexTeacher_cus.php*
```
checkIsBindEmailPhone();
// 檢測用戶是否已經綁定了郵箱或手機,默認密碼是否是123456 by wangbo 2019-2-28
function checkIsBindEmailPhone() {
var url = "<?php echo $this->createUrl('ktUser/checkUserDefaultPassword');?>";
$.get(url, function(data){
// noBindEmailOrPhone : 檢測用戶是否已經綁定了郵箱或手機
if (data == "noBindEmailOrPhone") {
}
// UnsafePass : 判斷是否為初始密碼123456
if (data == "UnsafePass") {
}
});
}
```
## 方法
是否已綁定手機或郵箱
是否為初始密碼123456
## 修改新密碼流程
判斷是否是第一次修改默認密碼
↓
獲取驗證碼(找到密碼)
http://ketang311.wm3dao.com/index.php?r=User/resetUserPwd
## 綁定手機或郵箱
### 01 綁定郵箱頁面
http://ketang311.wm3dao.com/index.php?r=ktUser/bindEmail

### 02 發送郵件驗證
http://ketang311.wm3dao.com/index.php?r=ktUser/sendEmailBind
```
POST
email: 3330819360@qq.com
isResend: false
```

### 03 郵件內容

綁定郵箱鏈接:
http://ketang311.wm3dao.com/index.php?r=ktUser/clickBindEmail&code=185628ee07059c738991121740e84136&email=3330819360%40qq.com&userId=474897
*D:\wamp\www\ketang.test\weike\protected\controllers\KtUserController.php*
```
$userId = RequestUtils::getNormalRequest('userId');
$email = RequestUtils::getNormalRequest('email');
$code = RequestUtils::getNormalRequest('code');
$emailDetail = Email::model()->findByAttributes(['fdUserID'=>$userId,'fdEmail'=>$email]);
if ($code && $code != md5($emailDetail->fdCode) && $email != $emailDetail->fdEmail) {
$this->redirect_msgBox(array('ktUser/bindEmail'),array('msg'=> '參數錯誤,請重新綁定!'));
Yii::app()->end();
}
...
IdentityService::factory()->isBindEmailByUserID($userId); //判斷用戶是否綁定郵箱
...
```
### 表 wksvc.tbEmail
```
CREATE TABLE `tbEmail` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`fdUserID` int(11) DEFAULT NULL COMMENT '?ˉ1?o”tbUser.id',
`fdEmail` varchar(64) DEFAULT NULL COMMENT '?”μ?-?é???????°??€',
`fdCode` varchar(8) DEFAULT NULL COMMENT 'éa?èˉ???????é?????éa?èˉ?é?€è|?md5????ˉ??”??????€??aé“???¥',
`fdSent` datetime DEFAULT NULL COMMENT 'fdCode?”????????—?é—′',
`fdVerified` datetime DEFAULT NULL COMMENT 'éa?èˉ??—?é—′???0è?¨?¤o??aéa?èˉ?',
`fdDefault` tinyint(4) NOT NULL COMMENT '??o???????”μ?-?é????±??°??€\n 0-???é€?\n 1-??o???',
PRIMARY KEY (`id`),
KEY `FK_Reference_52` (`fdUserID`),
KEY `email` (`fdEmail`)
) ENGINE=MyISAM AUTO_INCREMENT=117831 DEFAULT CHARSET=utf8 COMMENT='?”μ?-?é???????°??€è?¨?????€??a?oo??ˉ??¥??¥??‰?¤???a?”μ?-?é??';
```

## 綁定手機
http://ketang311.wm3dao.com/index.php?r=ktUser/bindPhone
### 1 綁定手機

### 2 手機驗證
http://ketang311.wm3dao.com/index.php?r=user/addPhoneBind
```
POST
phone: 15920914758
```

*D:\wamp\www\ketang.test\weike\protected\controllers\UserController.php*
```
V2IdentityService::factory()->getBoundPhone($userId); //獲取用戶綁定的手機號
...
$args = array(
'uid' => $uid,
'num' => $num,
'verified' => $verified,
'outsideHost' => $outsideHost,
'code' => $code
);
return Phone::model()->find($this->findPhone($args));
...
```
### 3 表 wksvc.tbPhone
```
CREATE TABLE `tbPhone` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`fdUserID` int(11) NOT NULL,
`fdPhone` varchar(32) NOT NULL,
`fdCode` varchar(8) DEFAULT NULL COMMENT 'éa?èˉ???????é€?è????-????????‘',
`fdSent` datetime DEFAULT NULL COMMENT 'fdCode?”?????1???‘?”?????—?é—′',
`fdVerified` datetime DEFAULT NULL COMMENT '??-???éa?èˉ??—?é—′???0è?¨?¤o??aéa?èˉ?',
`fdDefault` tinyint(4) NOT NULL COMMENT '',
PRIMARY KEY (`id`),
KEY `FK_Reference_53` (`fdUserID`),
KEY `phone` (`fdPhone`)
) ENGINE=MyISAM AUTO_INCREMENT=137535 DEFAULT CHARSET=utf8 COMMENT='';
```
- 說明
- 開發任務
- 星課-真光
- 課表
- Excel Down
- 調課
- 課表修改
- 課表代碼分析
- 課堂
- 課堂:應用商店通信管理協議
- 教師賬號強制綁定手機或郵箱
- 強制綁定手機和修改密碼的規則
- 學堂
- 課程學習:討論功能
- 后臺:課程討論管理
- 課程直播接口
- 學習統計功能(舊版)
- 學習統計功能(新版)
- 同步課程統計功能
- 同步課程編輯-新增視頻
- 第三方接口
- 學科網
- 安徽第三方
- 大賽
- 管控系統
- 日志管理
- 設備日志
- 平板接口
- 渝教
- 教學總結
- 空白目錄
- Yii 1.1
- 學堂架構
- Yii 1.1一些方法的解讀
- MVCS結構
- 基礎使用語法
- 創建1個新模塊
- 關聯模型
- CDbCriteria
- 學生-課堂記錄
- 學生端頁面展示
- 教師端頁面展示
- 編輯課程文檔
- SQL
- 課堂項目運行入口
- 上傳資源示意圖
- 行為
- PHPStorm
- 源碼閱讀
- 會診答卷頁面
- 考點練習
- 資源首頁
- 同步課程
- 同步課程:章節信息
- 升學復習
- 統計圖-范例
- 模塊
- 非法詞
- 服務層
- MongoDB類
- 學堂作答記錄從Mongo新集合獲取數據
- MongoYii
- 錯題集
- 小技巧
- 完善資料
- 郵件發送
- K12
- JSpang視頻課程
- MongoDB
- 創業
- 項目
- 包包