48.项目 1-博客前端:封装库--Ajax 登录

学习要点:

1.问题所在
2.设置代码

表单的目的就是实现用户的填写和提交,传统的提交需要提交到一个指定页面,需要卸
载当前页面,然后加载到另外一个服务器端页面进行处理,最后再跳转到指定的页面。这种
用户体验不是特别的很好。而 Ajax 则解决这些问题。

一.问题所在

QQ截图20190520093351.png

二.设置代码

HTML 代码

<div class="info"></div>
<div class="info"></div>

CSS 代码

#header .login, #header .reg, #header .info{
float:right;
width:35px;
height:30px;
line-height:30px;
cursor:pointer;
}
#header .info {
width:80px;
display:none;
}
#login div.info {
padding:15px 0 5px 0;
color:maroon;
text-align:center;
}

JS 代码

$('form').eq(1).form('sub').click(function () {
if (/[\w]{2,20}/.test(trim($('form').eq(1).form('user').value()))
&& $('form').eq(1).form('pass').value().length >= 6) {
var _this = this;
_this.disabled = true;
$(_this).css('backgroundPosition', 'right');
$('#loading').css('display', 'block').center(200, 40);
$('#loading p').html('正在尝试登录...');
ajax({
method : 'post',
url : 'is_login.php',
data : $('form').eq(1).serialize(),
success : function (text) {
$('#loading').css('display', 'none');
_this.disabled = false;
$(_this).css('backgroundPosition', 'left');
if (text == 1) {//失败
$('#login .info').html('登录失败,用户名或密码不正确!');
} else {//成功
setCookie('user', trim($('form').eq(1).form('user').value()));
$('#login .info').html('');
$('#success').css('display', 'block').center(200, 40);
$('#success p').html('登录成功...');
setTimeout(function () {
$('#success').css('display', 'none');
login.css('display', 'none');
$('form').eq(1).first().reset();
screen.animate({
attr : 'o',
target : 0,
t : 30,
step : 10,
fn : function () {
screen.unlock();
}
});
$('#header .reg').css('display', 'none');
$('#header .login').css('display', 'none');
$('#header .info').css('display', 'block').html(getCookie('user') +
',您好!');
}, 1500);
}
},
async : true
});
} else {
$('#login .info').html('登录失败,用户名或密码不合法!');
}
});

PS:由于登录也有一个 form,会导致之前的注册的 form 失效,必须精确的选择才行。
cookie 操作,直接复制基础课程封装的代码即可。

//判断用户名和密码
<?php
require 'config.php';
$_pass = sha1($_POST['pass']);
$query = mysql_query("SELECT user FROM blog_user WHERE
user='{$_POST['user']}' AND pass='{$_pass}'") or die('SQL 错误!');
if (!mysql_fetch_array($query, MYSQL_ASSOC)) {
echo 1;
}
mysql_close();
?>

感谢收看本次教程!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 学习要点: 1.问题所在2.设置代码 表单的目的就是实现用户的填写和提交,传统的提交需要提交到一个指定页面,需要卸...
    好像在哪见过你丶阅读 369评论 0 0
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,315评论 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 29,112评论 1 45
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 5,108评论 0 0
  • 是路口 也是出口 来者匆匆 去者亦匆匆 时光荏苒 过过便是下一条路 是通向光明 还只是到了 另一条荆棘的小路 路口...
    lin秀阅读 129评论 0 0

友情链接更多精彩内容