【Ajax】PHP中ajax的基本知识点
Ajax常用属性和方法:
属性:
readyState: 0(开始创建ajax对象)1(调用open方法)2(调用send方法)3(正在返回数据)4(返回数据结束)
responseText/responseXML: 接受服务器返回信息
onreadystatechange: ajax状态readyState发生变化,触发该事件运行
status:200/404····
方法:
open(请求方式,请求地址,同步异步标志):创建一个新的http请求
send():发送http请求
setRequestHeader():设置HTTP头协议信息
get和post请求注意事项:
(1)get在url中直接传递数据,post在send方法中传递
(2)传递中文信息时get需要对中文进行编码而post不需要
(3)进行post方式请求时候,也可以传递get参数信息,在服务器端可以使用$_GET接受
同步和异步区别:
同步就是阻塞式,一个IO请求完成之前不能进行下一个,异步则是非阻塞式的,体现形式是在open(请求方式,地址,true异步/false同步)
缓存处理:
(1)在请求地址后加随机数字,保证每次请求都是新的
(2)在服务器端给php程序设置header信息,禁止浏览器缓存当前页面
实战代码:
(1)test.html
<input type="text" id="username" class="input-block-level" placeholder="旧用户名(必须填写)" name="old_username" onblur="checkname()"><!-- 在失去焦点函数中进行ajax请求 -->
<span id="usernamespan" style="color: #811501;">对不起用户名已存在!</span> <script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#usernamespan").hide();
});
function checkname() {
var obj = new XMLHttpRequest();//创建ajax对象
obj.onreadystatechange = function() {//当ajax对象状态发生变化时触发以下事件
if(obj.readyState == && obj.status == ) {
if(obj.responseText == '')
$("#usernamespan").show();//如果返回值为1的时候span显示
}
}
var name = $("#username").val();
obj.open("get", './ajax.php?username=' + name);//默认为异步请求
obj.send(null);
} </script>
(2)ajax.php
<?php
$a = array("tom", "jerry", "marry");//这里没有做与数据库交互,其实做一下也很简单,根据上一篇博客db.php可以很快做出来
$name = $_GET['username'];//获取get请求内容
if(in_array($name, $a)) {
echo '';
}else{
echo "";
}
效果如下:

【Ajax】PHP中ajax的基本知识点的更多相关文章
- Ajax—web中ajax的常用方式
什么Web2.0的特点? 1:注重用户贡献度 2:内容聚合RSS协议(每小块都个性化,单独加载单独请求,不用全部刷新--Ajax) 3:更丰富的用户体验 Ajax的概念? "Asynchro ...
- Ajax——jq中ajax的使用
格式化表单 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- jquery中ajax 从前端到后端 完整过程解析
几个原则: 1.get方式访问浏览器时,常加参数缘由: GET访问浏览器是等幂的,就是一个相同的URL只有一个结果[相同是指整个URL字符串完全匹配],所以第二次访问的时候如果 URL字符串没变化,浏 ...
- AJAX、JQUERY 工作遇到的知识点
泽浜商城关联公司知识点总结 1.关联公司的时候,根据用户ID,在数据库中用户表中关联公司ID,公司的列表通过查找公司表 ,然后抓取所有公司的名称和ID.关联的时候只需要根据公司name和ID进行关联. ...
- AJAX请求中出现OPTIONS请求
背景 有一个前后端分离的VUE项目来发送ajax请求, 查看Nginx日志或使用Chrome Dev Tools查看请求发送情况时, 会看到每次调后台API的请求之前, 都会发送一个OPTIONS请求 ...
- JQuery中ajax的相关方法总结
前提条件 话说是jquery中的ajax方法,那么前提条件当然是引入jquery啦. <script src="http://libs.baidu.com/jquery/1.9.0/j ...
- jquery中ajax用return来返回值无效
jquery中,ajax返回值,有三种写法,只有其中一种是成功的 /** * async:false,同步调用 * 返回1:2 * 失败 * 分析:ajax内部是一个或多个定义的函数,ajax中ret ...
- Ajax开发中服务端Response的Content-Type
转自http://www.cnblogs.com/hyl8218/archive/2010/03/10/1681484.html ajax开发中在请求服务器端的响应时, 对于每一种返回类型 规范的做法 ...
- Asp.net MVC 中Ajax的使用 [分享]
文章转自 http://www.huiyoumi.wang/upload/forum.php?mod=viewthread&tid=75&extra= Asp.net MVC 抛弃了A ...
- prototype.js 和 jQuery.js中 ajax 的使用
这次还是prototype.js 和 jQuery.js冲突的问题,前面说到过解决办法http://www.cnblogs.com/Joanna-Yan/p/4836252.html,以及上网说的大部 ...
随机推荐
- [Leetcode] Merge k sorted lists 合并k个已排序的链表
Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. 思 ...
- SqlServer中临时表的应用
一.变通处理WHERE后面IN的参数过多 WHERE后面的条IN操作符里的参数比较小时,可以直接使用IN(1,2,3)这样处理,当个数不确定(可能超过1000)时,应该考虑使用临时表关联查询: SEL ...
- MFC随机数
void CMFCDemoDlg::OnClickedGetrand() { wchar_t str[]; //srand((unsigned)time(NULL)); int num = rand( ...
- 近期对于windows服务的理解
1.APP.config的作用 在开发环境下时,根目录下的APP.config里面会填写一些参数之类的.当生成之后,这些参数将会被自动生成在*.exe文件目录中.如图: 其中,.exe文件为Win ...
- jQuery操纵DOM
一.基本操作 1.html() - 类似于原生DOM的innerHTML属性 *获取 - html(); *设置 - html("html代码"); 2.val() - 类似于原生 ...
- Android 性能优化 - 详解内存优化的来龙去脉
前言 APP内存的使用,是评价一款应用性能高低的一个重要指标.虽然现在智能手机的内存越来越大,但是一个好的应用应该将效率发挥到极致,精益求精. 这一篇中我们将着重介绍Android的内存优化.本文的篇 ...
- mysql七:数据备份、pymysql模块
阅读目录 一 IDE工具介绍 二 MySQL数据备份 三 pymysql模块 一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https:/ ...
- java小工具——timer
定时器Timer 用途:做定时器用的. public static void main(String[] args) { Timer timer = new Timer(); timer.schedu ...
- 转载:document.execCommand()的用法小记
首先要说明的是在firefox下支持不好.2D-Position 允许通过拖曳移动绝对定位的对象. AbsolutePosition 设定元素的 position 属性为“absolute”(绝对). ...
- shell里面比较大小
#!/bin/bashif [ $1 -gt $2 ]then echo "$1>$2"else echo "$2>$1"fi# 数字判断一些命令 ...