jQuery+Pdo编写login登陆界面


Posted in Javascript onAugust 01, 2016

Jquery是继prototype之后又一个优秀的Javascript库。而且它是轻量级的js库。共有两个版本的 jQuery 可供下载:一份是精简过的,另一份是未压缩的(供调试或阅读)。这两个版本都可从 jQuery.com 下载。所以开发学习建议使用压缩的。

当然啦,除了直接下载jquery.js文件外,还可以在html头中插入Google或者Microsoft的CDN来在网页加载时直接从网上获取库文件支持。

使用 Google 的 CDN:

<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs
/jquery/1.4.0/jquery.min.js"></script>
</head>

使用 Microsoft 的 CDN:

<strong style="font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 18px;"></strong>

<p style="margin-top: 12px; margin-bottom: 0px; color: rgb(51, 51, 51); line-height: 18px; font-family: Verdana, Arial, Helvetica, sans-serif; display: inline !important; background-color: rgb(249, 249, 249);"></p><pre name="code" class="html" style="color: rgb(51, 51, 51); font-weight: bold; line-height: 24px; display: inline !important;"><head> 

<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery /jquery-1.4.min.js"></script> 

</head>

但是最好是直接下载到自己的工程中来使用,不然有时会存在网络问题而无法提供支持。

Pdo是用来代替Mysql或者mysql等来处理数据库的。

只要在php.ini文件中去掉;extension=php_pdo......等被注释掉的有关pdo的.dll文件。同时从php5开始,php默认打开pdo驱动,所以你可能在php.ini文件中看不到php_pdo.dll(这是个人的理解或者说是猜测,网上教程说一定需要着个文件,但是我只是把其他与pdo相关的所有去注释掉了而已,最后也能运行。)

jQuery+Pdo编写login登陆界面

去掉注释后保存后就可以运行phpinfo来进行测试了之中可以看到有关pdo的相关信息。表示配置成功。

在上一篇文章中已经用ajax技术编写了一个login登陆界面,其实不用这么麻烦,可以试试用Jquery和PDO写写,感受感受。于是就粗略的学习了一下Jquery,这才发现只要一个$POST()函数就可以完成我之前所编写的两页的代码(当然啦!人家的是已经封装做好的,只需直接调用就行了),但是我依然很高兴直接写了ajax,这使我对异步认识的更加深刻。

好了直接上代码。

首先是登陆界面的代码(与之前的没多大的区别,有一些小小改动,但是细节出魔鬼,可以认真到什么程度,我就尽力吧!)

div.css

div.login
{

border: 1px solid #a0b1c4 ;
height:429px;
width:300px;
position: absolute;
left:1200px;
top: 150px;
 
}

login.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8 " />

<script type="text/javascript" src="/login_Jquery/js/jquery-2.2.1.js"></script> //引用Jquery.js文件<script src="/login_Jquery/js/ClickME.js"></script> //引用自己编写的.js文件<link rel="stylesheet" href="/login_Jquery/css/div.css" type="text/css" />

<title>登陆界面</title>
</head>

<body style=" text-align:center">
 <h1>登陆界面</h1> 
 <div class="login" > 
 <form action="#" method="post" name="myform" id="myform">
 <p>
 用户名:<input type="text" name="user" id="user" maxlength="20" />
 </p>
 <p>
 密 码:<input type="password" name="pwd" id="pwd" maxlength="20" />
 </p> 
 <p>
 <div id="serverResponse"></div>
 
 </p>
 
  <img id="login" src="/loginProject/pictrue/login.png" /> 
 </form>
 </div> 
</body>
</html>
 

ClickME.js

$(document).ready(function(){
 $("#login").click(function(){
 var user= document.getElementById("user").value;
 var pwd= document.getElementById("pwd").value;
 if(user==""||pwd=="")
 {
 alert("用户名与密码不能为空!")
 
 }
 else
 { //重点在这,对比之前写的xmlHttpRequest的代码量可以看到,在这只是调用了一个   //$.post()函数
 $.post(
 "/login_Jquery/php/check.php",
 $("#myform").serialize(),
 function(msg){ $("#serverResponse").html(msg);}
 );
  
 
 }
 });
});

<span style="font-size:32px;">$.post()函数,参数格式是:</span> 

<span style="font-size:32px;">$.post(url,data,call ,type)</span>

url是请求页面的地址,data是用传送的数据,callback是响应函数,type是返回内容的格式如text/xml等。就本代码来说,url为"/login_Jquery/php/check.php" data:$("#myform").serialize(),其中serialize()函数是将要传送的数据序列化便于传送数据。

callback:function(msg){$("#serverResponse").html(msg); } msg表示服务器回传的数据,然后在函数中对其进行处理,将其使用html()来内置id为serverResponse的文本值。

check.php

<span style="font-size:24px;color:#330000;"><?php

 $mark=0;
 $user=$_REQUEST['user'];
 $pwd=$_REQUEST['pwd'];

 
 $host='localhost';
 $dbname='databaseweb';
 $dsn = "mysql:host=$host;dbname=$dbname";
 $root='root';
 $mysql_pwd='数据库密码';
 try
 {
  $pdo = new PDO($dsn, $root, $mysql_pwd);
 }
 catch(PDOException $e)
 {
  echo "数据库连接失败";
 }
 $row_column= $pdo->query("select * from user where name='$user' and password='$pwd' ");
 
 //$row_column是从数据库传回的list(rows),不能做布尔型的判断。
 //但是我们可以通过list中的object元素的个数来做布尔判断其中fetchColumn()函数用于获取row的个数
 
 if($row_column->fetchColumn() >0 )
 { echo "匹配成功!";
 return;
 } 
 else
 {
 echo "用户".$user."不存在"; 
 return;
 }
 
 
 ?></span>

就check.php文件而言,就是使用了PDO代替了Mysqli而已,但是这是处理数据库的趋势。学学吧!

对了一直没上自己界面的图片,这次补上。

登陆界面:

jQuery+Pdo编写login登陆界面

账户密码为空 alert提醒:

jQuery+Pdo编写login登陆界面

账户密码与数据库异步匹配无误:

jQuery+Pdo编写login登陆界面

账户密码与数据库匹配有误:

jQuery+Pdo编写login登陆界面

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
学习ExtJS form布局
Oct 08 Javascript
Javascript 通过json自动生成Dom的代码
Apr 01 Javascript
TextArea设置MaxLength属性最大输入值的js代码
Dec 21 Javascript
三种检测iPhone/iPad设备方向的方法
Apr 23 Javascript
JQuery实现展开关闭层的方法
Feb 17 Javascript
JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果
Nov 26 Javascript
AngularJS用户选择器指令实例分析
Nov 04 Javascript
jQuery插件ajaxFileUpload使用详解
Jan 10 Javascript
解决vue-cli中stylus无法使用的问题方法
Jun 19 Javascript
理解 JavaScript EventEmitter
Mar 29 Javascript
浅谈mvvm-simple双向绑定简单实现
Apr 18 Javascript
vue读取本地的excel文件并显示在网页上方法示例
May 29 Javascript
AngularJS基础 ng-dblclick 指令用法
Aug 01 #Javascript
jQuery简单实现点击文本框复制内容到剪贴板上的方法
Aug 01 #Javascript
Three.js学习之几何形状
Aug 01 #Javascript
AngularJS基础 ng-cut 指令介绍及简单示例
Aug 01 #Javascript
JavaScript学习小结之被嫌弃的eval函数和with语句实例详解
Aug 01 #Javascript
jQuery简单设置文本框回车事件的方法
Aug 01 #Javascript
AngularJS基础 ng-csp 指令详解
Aug 01 #Javascript
You might like
PHP5中虚函数的实现方法分享
2011/04/20 PHP
thinkPHP中验证码的简单使用方法
2015/12/26 PHP
Joomla框架实现字符串截取的方法示例
2017/07/18 PHP
Laravel数据库读写分离配置的方法
2019/10/13 PHP
用js实现的仿sohu博客更换页面风格(简单版)
2007/03/22 Javascript
jQuery hover 延时器实现代码
2011/03/12 Javascript
JS和jquery获取各种屏幕的宽度和高度的代码
2013/08/02 Javascript
javascript拖拽上传类库DropzoneJS使用方法
2013/12/05 Javascript
jquery实现非叠加式的搜索框提示效果
2014/01/07 Javascript
js中window.open()的所有参数详细解析
2014/01/09 Javascript
javascript获取form里的表单元素的示例代码
2014/02/14 Javascript
浅谈javascript中return语句
2015/07/15 Javascript
JS与jQuery遍历Table所有单元格内容的方法
2015/12/07 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
vue-axios使用详解
2017/05/10 Javascript
vue-star评星组件开发实例
2018/03/01 Javascript
浅谈vue加载优化策略
2019/03/19 Javascript
JS实现水平遍历和嵌套递归操作示例
2019/08/15 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
python中执行shell命令的几个方法小结
2014/09/18 Python
python使用range函数计算一组数和的方法
2015/05/07 Python
python字符串编码识别模块chardet简单应用
2015/06/15 Python
python3中int(整型)的使用教程
2017/03/23 Python
Python实现的拟合二元一次函数功能示例【基于scipy模块】
2018/05/15 Python
Pandas DataFrame中的tuple元素遍历的实现
2019/10/23 Python
使用Python FastAPI构建Web服务的实现
2020/06/08 Python
Python requests及aiohttp速度对比代码实例
2020/07/16 Python
基于python实现简单网页服务器代码实例
2020/09/14 Python
html5写一个BUI折叠菜单插件的实现方法
2019/09/11 HTML / CSS
HTML5 canvas实现的静态循环滚动播放弹幕
2021/01/05 HTML / CSS
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
英国票务网站:Ticketmaster英国
2018/08/27 全球购物
管理站站长岗位职责
2013/11/27 职场文书
老龙头导游词
2015/02/11 职场文书
校园歌手大赛主持词
2015/07/03 职场文书
食堂管理制度范本
2015/08/04 职场文书