DDR爱好者之家 Design By 杰米
今天给大家呈现一个原始的Ajax请求过程,虽然jquery的ajax要比原始的写法容易得多,我们还是应该了解原始的写法,下面我分为html、js、php三个小文件来展示,数据库自己写。
首先是html:
复制代码 代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>一次简单的Ajax请求</title>
<script language="javascript" src="/UploadFiles/2021-04-02/ajaxTest.js"></head>
<body>
用户名:<input id="userName" type="text"></input>
密码:<input id="passWord" type="password"></input>
<span id="showInputError" style="color:red;font-weight: bold;"></span><br>
<input type="button" value="登录" onclick="showSelect()">
</body>
</html>
然后是js:
复制代码 代码如下:
/**
* 普通Ajax的完整访问过程
*/
var xmlHttp
function showSelect()//登录按钮点击后执行这个方法
{
var userName=document.getElementById("userName").value;
var passWord=document.getElementById("passWord").value;
if (userName.length==0)//验证输入用户名是否为空
{
document.getElementById("showInputError").innerHTML="用户名不能为空";//提示用户名不能为空
return
}
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="ajaxTest.php"//设置要提交action到后台的那个处理请求的文件名
url=url+"?userName="+userName+"&passWord="+passWord//为这个路径加上参数用户名和密码
url=url+"&sid="+Math.random()//为这个路径加上一个随机数
xmlHttp.onreadystatechange=stateChanged//每当 readyState 改变时,就会触发 onreadystatechange 事件,readyState 属性存有 XMLHttpRequest 的状态信息
xmlHttp.open("GET",url,true)//定义请求的参数
xmlHttp.send(null)//发送请求
}
function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")//
//0: 请求未初始化
//1: 服务器连接已建立
//2: 请求已接收
//3: 请求处理中
//4: 请求已完成,且响应已就绪
{ var a= xmlHttp.responseText;//把相应数据赋值给a
if(a=="yes"){
self.location='Main.php';//跳转到Main.php
}else{
document.getElementById("showInputError").innerHTML="用户名或密码错误";//提示用户名或密码错误
}
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
最后是php:
复制代码 代码如下:
<?php
$userName=$_GET["userName"];
$pwd=$_GET["passWord"];
$con = mysql_connect("localhost","root","123456");
mysql_select_db("my_test", $con);
mysql_query("set names utf8");
$sql="SELECT * FROM Userinfo WHERE userName='".$userName."' AND pwd='".$pwd."'";
$result=mysql_query($sql);
$select=mysql_num_rows($result);
$a="no";
if ($select>0){$a="yes";}
echo $a;
mysql_close($con);
?>
首先是html:
复制代码 代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>一次简单的Ajax请求</title>
<script language="javascript" src="/UploadFiles/2021-04-02/ajaxTest.js"></head>
<body>
用户名:<input id="userName" type="text"></input>
密码:<input id="passWord" type="password"></input>
<span id="showInputError" style="color:red;font-weight: bold;"></span><br>
<input type="button" value="登录" onclick="showSelect()">
</body>
</html>
然后是js:
复制代码 代码如下:
/**
* 普通Ajax的完整访问过程
*/
var xmlHttp
function showSelect()//登录按钮点击后执行这个方法
{
var userName=document.getElementById("userName").value;
var passWord=document.getElementById("passWord").value;
if (userName.length==0)//验证输入用户名是否为空
{
document.getElementById("showInputError").innerHTML="用户名不能为空";//提示用户名不能为空
return
}
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="ajaxTest.php"//设置要提交action到后台的那个处理请求的文件名
url=url+"?userName="+userName+"&passWord="+passWord//为这个路径加上参数用户名和密码
url=url+"&sid="+Math.random()//为这个路径加上一个随机数
xmlHttp.onreadystatechange=stateChanged//每当 readyState 改变时,就会触发 onreadystatechange 事件,readyState 属性存有 XMLHttpRequest 的状态信息
xmlHttp.open("GET",url,true)//定义请求的参数
xmlHttp.send(null)//发送请求
}
function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")//
//0: 请求未初始化
//1: 服务器连接已建立
//2: 请求已接收
//3: 请求处理中
//4: 请求已完成,且响应已就绪
{ var a= xmlHttp.responseText;//把相应数据赋值给a
if(a=="yes"){
self.location='Main.php';//跳转到Main.php
}else{
document.getElementById("showInputError").innerHTML="用户名或密码错误";//提示用户名或密码错误
}
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
最后是php:
复制代码 代码如下:
<?php
$userName=$_GET["userName"];
$pwd=$_GET["passWord"];
$con = mysql_connect("localhost","root","123456");
mysql_select_db("my_test", $con);
mysql_query("set names utf8");
$sql="SELECT * FROM Userinfo WHERE userName='".$userName."' AND pwd='".$pwd."'";
$result=mysql_query($sql);
$select=mysql_num_rows($result);
$a="no";
if ($select>0){$a="yes";}
echo $a;
mysql_close($con);
?>
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2024年11月25日
2024年11月25日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]