# 发送邮件 #
*D:\wamp\www\ketang.test\weike\protected\service\IdentityService.php*
```
/**
* 获取课堂邮件发送文本
* @param $code
* @param $userID
* @param $email
* @param $type
* @return string
* @author wuzhc 2016-01-08
*/
private function _getEmailTempleForKetang($code,$userID,$email,$type) {
$codeMd5 = md5($code) ;
switch($type) {
case WK::FIND_BY_EMAIL:
$title = '找回密码';
// $url = Yii::app()->request->hostInfo.Yii::app()->createUrl('/user/getPwd',array('code'=>$codeMd5, 'email'=>$email, 'userId' => $userID, 'isFromEmail' => 'true'));
$url = Yii::app()->request->hostInfo.Yii::app()->createUrl('/user/getUserPwd',array('code'=>$codeMd5, 'email'=>$email, 'userId' => $userID, 'isFromEmail' => 'true')); //by chenxch
break;
case WK::BIND_BY_EMAIL:
$title = '绑定邮箱';
$url = Yii::app()->request->hostInfo.Yii::app()->createUrl('/ktUser/clickBindEmail',array('code'=>$codeMd5, 'email'=>$email, 'userId' => $userID));
break;
case WK::REMOVE_BY_EMAIL:
$title = '解绑邮箱';
$url = Yii::app()->request->hostInfo.Yii::app()->createUrl('/ktUser/removeEmail',array('code'=>$codeMd5, 'email'=>$email, 'userId' => $userID,'from' => 'true'));
break;
default:
return '';
}
$userName = $userID ? UserService::factory()->getShowName($userID) : "用户";
$content = '';
$content .= '标题:'.$title.'<br/>';
$content .= '尊敬的'.$userName.',您好!<br/><br/>';
$content .= '您已使用了未名教育'.$title.'功能,请点击以下链接<br/>'.$title;
$content .= '<a href="'.$url.'">点击'.$title.'</a><br/>';
$content .= '或输入验证码:'.$code.'<br/>';
$content .= '如果不能点击该链接地址,请复制并粘贴到浏览器的地址输入框:<br/>';
$content .= $url.'<br/><br/>';
$content .= '未名教育<br/>';
$content .= date("Y-m-d H:i:s", time()).'<br/>(请勿回复该邮件)';
return $content;
}
```
## 重置邮件页面
*D:\wamp\www\ketang.test\weike\protected\views\version2\user\resetUserPwd.php*
```
$("#submit_pwd").click(function(){//重置密码
var _pwd = $("#input_pwd").val();
var _repwd = $("#input_repwd").val();
var from = '<?php echo $isFromEmail?"email":($isFromPhone?"phone":"");?>';
var new_pwd = newpwdjudge(_pwd,$("#input_pwd").next());
var renew_pwd = renewpwdjudge(_repwd,_pwd,$("#input_repwd").next());
if(new_pwd && renew_pwd){
$.post("/?r=user/resetPwd", { password: $.md5(_pwd), userId:"<?php echo $userId;?>" , code: "<?php echo $code;?>",from: from }, function(msg){
if(msg=="paramError"){
$.showBox("参数错误");
}else if(msg=="success"){
$.showBox("密码修改成功");
window.location.href = "<?php echo $this->createUrl("/");?>";
}else if(msg=="error"){
$.showBox("密码修改失败");
}else if(msg=="login"){
$.showBox("请退出登录后再重新操作");
}else{
$.showBox("系统繁忙,请稍后再试");
}
});
}
});
```
## 手机验证修改密码
http://ketang311.wm3dao.com/?r=user/sendPhoneResetPwd&time=0.43934399796935186
- 说明
- 开发任务
- 星课-真光
- 课表
- Excel Down
- 调课
- 课表修改
- 课表代码分析
- 课堂
- 课堂:应用商店通信管理协议
- 教师账号强制绑定手机或邮箱
- 强制绑定手机和修改密码的规则
- 学堂
- 课程学习:讨论功能
- 后台:课程讨论管理
- 课程直播接口
- 学习统计功能(旧版)
- 学习统计功能(新版)
- 同步课程统计功能
- 同步课程编辑-新增视频
- 第三方接口
- 学科网
- 安徽第三方
- 大赛
- 管控系统
- 日志管理
- 设备日志
- 平板接口
- 渝教
- 教学总结
- 空白目录
- Yii 1.1
- 学堂架构
- Yii 1.1一些方法的解读
- MVCS结构
- 基础使用语法
- 创建1个新模块
- 关联模型
- CDbCriteria
- 学生-课堂记录
- 学生端页面展示
- 教师端页面展示
- 编辑课程文档
- SQL
- 课堂项目运行入口
- 上传资源示意图
- 行为
- PHPStorm
- 源码阅读
- 会诊答卷页面
- 考点练习
- 资源首页
- 同步课程
- 同步课程:章节信息
- 升学复习
- 统计图-范例
- 模块
- 非法词
- 服务层
- MongoDB类
- 学堂作答记录从Mongo新集合获取数据
- MongoYii
- 错题集
- 小技巧
- 完善资料
- 邮件发送
- K12
- JSpang视频课程
- MongoDB
- 创业
- 项目
- 包包