如何用Ajax和数据库连接,实现验证输入值

如何用Ajax和数据库连接,实现验证输入值,第1张

我是搞java的 所以这里用jsp

数据层(sqlserver)

在dao中

public boolean checklogin(String username,String password){

/****具体的数据库驱动和url自己应该能搞定把**/

boolean chelogin=false

//用户名不存在则返回false 存在返回true 代码省略

return chelogin

}

在 UserServlet中 的doget()中

PrintWriter out=response.getWriter()

//调用dao中的checklogin()

String username=request.getparameter("username")

String password=request.getparameter("password")

boolean checklogin=new checklogin(username,password)

if(checklogin==true){

out.print("用户名验证正确,登陆成功")//这个是为了返回给ajax的XMLHttpRequest.response一个文本信息

}

else{

out.print("用户名或密码错误(用户名不存在)")

}

在页面js中

<script>

var httpreq

//创建XMLHttpRequest对象

function createXmlHttpReq(){

if(window.ActiveXObject){

httpreq=new ActiveXObject("Microsoft.XMLHTTP")

}

else if(window.XMLHttpRequest){

httpreq=new XMLHttpRequest()

}

}

//发送请求

function sendinfo(){

//获得页面上的用户名和密码

var username=document.getElementById("username").value

var password=document.getElementById("password").value

//1.创建XMLHttpRequest对象

createXmlHttpReq()

//2.写请求路径,并设置是GET还是POST,最后是否异步 true为异步,

var url="UserServlet?username="+username+"&password="+password

httpreq.open("GET",url,true)

//3.设置回调函数

httpreq.onreadystatechange=callback

//4.发送请求

httpreq.send(null)

}

//回调函数

function callback(){

if(httpreq.ReadyState==4){

alert(httpreq.responseText)

}

}

</script>

最后在页面中就调用sendinfo()这个js函数就行了

$(document).ready(function(){

$('#pwd').blur(function() {

var password = $('#pwd').val()//通过id获取你输入的密码值

$.ajax({

type:'post',

url:'checkpass.php',//URL

data:{pass:password},

dataType:'json',

success:function(return) {

if(return.status == 1) {

alert('输入密码和数据库中的密码一致!')

} else {

alert(''输入密码错误!)

}

}

})

})

})

<?php

$password = $_POST['pass']

$arr = array()

//通过连接数据库,在把$password当做条件,看查询的结果。有值就返回true

if(return) {

$arr['status'] = 1

} else {

$arr['status'] =0

}

echo json_encode($arr)

?>

如果只要写前台的话,要做的只是:

1、验证表单信息是否完善(格式是否正确)

2、如果验证失败,友好的提示错误

3、否则,通过ajax将用户名,密码等相关信息存入一个对象(data)发送给后台(当然得知道后台验证登录信息的url)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10100411.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存