标签:
1 <?php 2 3 namespace Model; 4 5 use Think\Model; 6 7 class UserModel extends Model { 8 9 function checkNamePwd($mg_name, $mg_password) { 10 //实例化模型User 11 $user = M("User"); 12 //接收控制器传的数据,进行判断是否一致。并且返回 13 $info = $user->getBy_mgname($mg_name); 14 //如果name属性数据存在则进行判断对应的密码是否一致,同时返回。 15 if ($info != null) { 16 //验证密码 17 if ($info[‘mg_password‘] == $mg_password) { 18 return $info; 19 } else { 20 return false; 21 } 22 } else { 23 return false; 24 } 25 } 26 27 } 28 29 ?> 30 31 32 33 34 35 36 37 <?php 38 39 //命名空间 40 41 namespace Home\Controller; 42 43 use Think\Controller; 44 45 class UserController extends Controller { 46 47 //登录 48 function login() { 49 if (!empty($_POST)) { 50 51 //校验验证码 52 //实例化thinkphp3.2 框架的Verify 类,并且进行判断。 53 54 $verify = new \Think\Verify(); 55 if (!$verify->check($_POST[‘captcha‘])) { 56 // 检查验证码 57 // I(‘id‘,0); 获取id参数 自动判断get或者post I(‘post.name‘,‘‘,‘htmlspecialchars‘); 58 // 获取$_POST[‘name‘] I(‘get.‘); 获取$_GET 59 $verify = I(‘param.verify‘, ‘‘); 60 if (!check_verify($verify)) { 61 $this->error("亲,验证码输错了哦!", $this->site_url, 1); 62 } 63 } else { 64 //实例化Model 65 $user = new \Model\UserModel(); 66 $rst = $user->checkNamePwd($_POST["mg_name"], $_POST["mg_password"]); 67 // == 全等于 68 if ($rst === false) { 69 echo ‘用户名或密码错误‘; 70 } else { 71 session("mg_name", $rst[‘mg_name‘]); 72 73 session("mg_id", $rst[‘mg_id‘]); 74 //跳转页面, 在控制器里面直接使用redirect() 方法跳转 75 $this->redirect(‘Index/index‘, 0); 76 } 77 } 78 } 79 $this->display(); 80 } 81 82 //退出系统 83 function loginout() { 84 session(null); 85 $this->redirect(‘User/login‘, 0); 86 } 87 88 //创建验证码 89 function verifyImg() { 90 //设置验证码的样式 91 $config = array( 92 ‘imageH‘ => 25, // 验证码图片高度 93 ‘imageW‘ => 120, // 验证码图片宽度 94 ‘fontttf‘ => ‘4.ttf‘, // 验证码字体,不设置随机获取 95 ‘length‘ => 4, //验证码长度 96 ‘fontSize‘ => 14, // 验证码字体大小(px) 97 ); 98 $verify = new \Think\Verify($config); 99 //创建验证 100 $verify->entry(); 101 } 102 103 //“空操作”此方法用来友情提示! 104 function _empty($param) { 105 echo ‘对不起,此方法不存在!‘; 106 } 107 108 } 109 110 ?> 111 112 113 114 <script type="text/javascript" > 115 /*获取captcha_img 的图片*/ 116 var captcha_img = $(‘.user_main_input‘).find(‘img‘); 117 //return captcha_img的src 118 var verifyimg = captcha_img.attr("src"); 119 captcha_img.attr(‘title‘, ‘点击刷新‘); 120 //点击事件 121 captcha_img.click(function() { 122 if (verifyimg.indexOf(‘?‘) > 0) { 123 124 //&random= 拼接验证码图片 125 $(this).attr("src", verifyimg + ‘&random=‘ + Math.random()); 126 } else { 127 $(this).attr("src", verifyimg.replace(/\?.*$/, ‘‘) + ‘?‘ + Math.random()); 128 } 129 }); 130 </script> 131 132 133 134 135 136 137 <?php 138 139 Common文件下面的function.php (新建) 140 /** 141 * 验证码检查 142 * 加入全局函数 143 */ 144 function check_verify($code, $id = "") { 145 $verify = new \Think\Verify(); 146 return $verify->check($code, $id); 147 } 148 ?> 149 150
标签:
原文地址:http://www.cnblogs.com/ajason/p/5005901.html