ThinkPHP实战之登录
2015-09-20 16:26
701 查看
一、模板页
用到JQ
登录表单有用户名、密码、验证码。
<form>
<p>
<label>用户名:</label>
<input type="text" id="username" name="username" size="20" class="login_input"/>
</p>
<p>
<label>密码:</label>
<input type="password" id="password" name="password" size="20" class="login_input"/>
</p>
<p>
<label>验证码:</label>
<input class="code" id="code" type="text" size="5"/>
<span><img id="get_code" src="/admin/user/verify" alt="" width="75" height="24"
onclick="this.src=this.src+'?'"/></span>
</p>
<div class="login_bar">
<input id="submit" class="sub" type="button" value=" "/>
</div>
</form>
JS部分
{literal}
<script type="text/javascript">
//AJAX
$("#submit").click(function(){
//alert('提交表单了');return false;
if($('#username').val()==''){
alert('请输入用户名');return false;
}
if($('#password').val()==''){
alert('请输入密码');return false;
}
if($('#code').val()==''){
alert('请输入验证码');return false;
}
if($('#code').val().length>0&&$('#code').val().length!=3){
alert('请输入3位英文/数字验证码');return false;
}
if($('#code').val()!=''){
var username=$('#username').val();
var password=$('#password').val();
var code=$('#code').val();
$.ajax(
{
url:'/admin/user/check_verify',
type:"post",
async:true,
data:{'username':username,'password':password,'code':code},
dataType:"html",
//timeout:"1000",
error:function(){
alert("服务加载出错");return false;
},
success:function(data)
{
//alert(data);
if(data==201){
alert('验证码错误');return false;
}else if(data==202){
alert('用户名/密码错误');return false;
}
else if(data==1){
window.location.href='/admin/';
}
}
}
);
}
});
</script>
{/literal}
二、控制器页
//核对验证码 1正确 201 验证码错误 202 用户/密码错误
public function check_verify(){
$code=addslashes($_POST['code']);
$username=addslashes($_POST['username']);
$password=addslashes(md5($_POST['password']));
//echo $code;exit;
$verify = new \Think\Verify();
if($verify->check($code, '')==false){
$data=201;
}else{
$arr['username']=$username;
$arr['password']=$password;
$User = D("User"); // 实例化User对象
if($User->check_admin($arr)==false){
$data=202;
}else{
$_SESSION['username']=$arr['username'];
$data=1;
}
}
echo $data;
}
稍微记录一下,不知道对大家有没有帮助。
用到JQ
<script src="/Public/admin/js/jquery-1.7.2.min.js" type="text/javascript"></script>
登录表单有用户名、密码、验证码。
<form>
<p>
<label>用户名:</label>
<input type="text" id="username" name="username" size="20" class="login_input"/>
</p>
<p>
<label>密码:</label>
<input type="password" id="password" name="password" size="20" class="login_input"/>
</p>
<p>
<label>验证码:</label>
<input class="code" id="code" type="text" size="5"/>
<span><img id="get_code" src="/admin/user/verify" alt="" width="75" height="24"
onclick="this.src=this.src+'?'"/></span>
</p>
<div class="login_bar">
<input id="submit" class="sub" type="button" value=" "/>
</div>
</form>
JS部分
{literal}
<script type="text/javascript">
//AJAX
$("#submit").click(function(){
//alert('提交表单了');return false;
if($('#username').val()==''){
alert('请输入用户名');return false;
}
if($('#password').val()==''){
alert('请输入密码');return false;
}
if($('#code').val()==''){
alert('请输入验证码');return false;
}
if($('#code').val().length>0&&$('#code').val().length!=3){
alert('请输入3位英文/数字验证码');return false;
}
if($('#code').val()!=''){
var username=$('#username').val();
var password=$('#password').val();
var code=$('#code').val();
$.ajax(
{
url:'/admin/user/check_verify',
type:"post",
async:true,
data:{'username':username,'password':password,'code':code},
dataType:"html",
//timeout:"1000",
error:function(){
alert("服务加载出错");return false;
},
success:function(data)
{
//alert(data);
if(data==201){
alert('验证码错误');return false;
}else if(data==202){
alert('用户名/密码错误');return false;
}
else if(data==1){
window.location.href='/admin/';
}
}
}
);
}
});
</script>
{/literal}
二、控制器页
//核对验证码 1正确 201 验证码错误 202 用户/密码错误
public function check_verify(){
$code=addslashes($_POST['code']);
$username=addslashes($_POST['username']);
$password=addslashes(md5($_POST['password']));
//echo $code;exit;
$verify = new \Think\Verify();
if($verify->check($code, '')==false){
$data=201;
}else{
$arr['username']=$username;
$arr['password']=$password;
$User = D("User"); // 实例化User对象
if($User->check_admin($arr)==false){
$data=202;
}else{
$_SESSION['username']=$arr['username'];
$data=1;
}
}
echo $data;
}
稍微记录一下,不知道对大家有没有帮助。
相关文章推荐
- java自动生成验证码插件-kaptcha
- kindeditor 批量上传 上传失败 thinkphp swfupload session
- 解决Ajax悬停效果,无法遮蔽FLASH的问题
- 再谈Jquery Ajax方法传递到action(补充)
- Dom在ajax技术中的作用说明
- 使用Ajax实时检测"用户名、邮箱等"是否已经存在
- 如何识别高级的验证码的技术总结第1/4页
- 探讨Ajax中同步与异步之间的区别
- 原生AJAX写法实例分析
- 探秘ajax跨域请求
- JQuery ajax返回JSON时的处理方式 (三种方式)
- Ajax中浏览器和服务器交互详解
- ajax实现点击不同的链接让返回的内容显示在特定div里
- ajax 动态传递jsp等页面使用id辨识传递对象
- AJAX简单应用实例-弹出层
- AJAX初级教程之初识AJAX
- Ajax无刷新分页的性能优化方法
- jquery对ajax的支持介绍
- jQuery基于ajax实现星星评论代码
- Ajax 说的比较清楚的一篇文章