<html>
<head>
<title>
ajax验证
</title>
</head>
<body>
<input type="text" name="username" id="username"/>
<input type="button" name="button" value="检测" onclick="validation();" />
<div id="info"></div>
<script>
function validation(){
var name=document.getElementById('username').value; var data="username="+name+"&password="+pwd;
ajax("verify.php",data,function(result){
document.getElementById("info").innerHTML=result;
});
} function ajax(url,data,onsuccess){
var xmlhttp=new XMLHttpRequest;
xmlhttp.open("POST",url,true);
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState==4){
if(xmlhttp.status==200){
onsuccess(xmlhttp.responseText);
}else{
alert("ajax错误");
}
}
}
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlhttp.send(data);
} </script>
</body>
</html>

下面是服务端代码

<?php
$con=@mysql_connect('localhost','root','');
$user=$_POST['username'];
mysql_query('use ms');
$sql = "select `username` from `user` where `username` = '$user'";
$res=mysql_query($sql);
$test=mysql_fetch_array($res);
if($test){
echo "存在用户".$user;
}else{
echo "不存在此用户".$user;
} ?>

数据库用的是见了一个叫ms的数据库,然后一个标user

其中有几个地方新手需要注意

1.设置请求头
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); //这个设置不对的话会导致后台接收不到数据

2.sql语句里面的`号和'区分开来
正确语法
$sql = "select `username` from `user` where `username` = '$user'";

3.mysql_query请求返回的资源需要用mysql_fetch_array检测才能用if语句判断
$res=mysql_query($sql);
$test=mysql_fetch_array($res);
if($test){。。。。}

4.检查错误时,可以先print_r($_POST)看是不是客户端ajax未获取到数据

自学php一个月了,越发觉得自己需要多敲代码练习

AJAX验证用户是否存在的更多相关文章

  1. 使用Ajax验证用户是否已存在

    在服务器端使用Servlet,里面在集合里存了几个字符串,没有对数据库操作. 前台input页面和Ajax验证: <%@ page language="java" conte ...

  2. 03-22 Ajax验证用户登录

    在网页中一般是通过表单提交数据,而表单获取信息,抛弃当前页面重新加载一个新页面. 现在,在webform网页中可以通过JueryAjax提交.处理数据的方式,达到异步刷新页面. 表单提交数据和Juer ...

  3. 通过配置http拦截器,来进行ajax请求验证用户登录的页面跳转

    在.NET中验证用户是否登录或者是否过期,若需要登录时则将请求转向至登录页面. 这个流程在进行页面请求时是没问题的,能正确进行页面跳转. 然而在使用xmlhttprequest时,或者jq的getJs ...

  4. 使用 jQuery Ajax 异步登录,并验证用户输入信息(maven)

    使用 jQuery Ajax 异步登录,并验证用户输入信息(maven) 本篇内容: (1)上一篇是使用同步的请求实现登录,并由 Servlet 决定登陆后下一步做哪些事情,本篇使用 jQuery A ...

  5. 基于Ajax与用户认证系统的登录验证

    一.登录页面 from django.contrib import admin from django.urls import path from blog import views urlpatte ...

  6. easyui 自定义验证规则 验证用户是否已经存在 远程ajax验证

    easyui远程ajax验证 2014年09月30日 22:29:32 clj198606061111 阅读数:6130 标签: easyui 更多 个人分类: jqueryeasyui 版权声明:本 ...

  7. 无法在提交表单前通过ajax验证解决办法

    博主在一个小项目中,要实现注册表单无刷新验证用户名或密码,但是发现不管怎么样都无法在先通过ajax验证之前不提交表单. 例如:一个简单的验证函数 function check(){ $.post(&q ...

  8. 每日学习心得:CustomValidator验证控件验证用户输入的字符长度、Linq 多字段分组统计、ASP.NET后台弹出confirm对话框,然后点击确定,执行一段代码

    2013-9-15 1.    CustomValidator验证控件验证用户输入的字符长度 在实际的开发中通常会遇到验证用户输入的字符长度的问题,通常的情况下,可以写一个js的脚本或者函数,在ASP ...

  9. 利用jQuery实现的Ajax 验证用户名是否存在

    异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用jQuery框架实现的AJAX 验证用户名是否存在 jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJA ...

随机推荐

  1. Rstudio匹配中文

    之前在操作csv文件时一般是将中文字符在excel或用Perl将其中的中文转换成对应的英文,但是最近碰到不得不在R里面进行中文符操作,发现R里面的匹配是无法识别的中文符的.比如: df <- r ...

  2. bootstrap小例子等

    一个简单的表单样式: <div class="row"> <form action="#" class="form-horizont ...

  3. 客户端获取服务端自定义类数据 z

    客户端获取服务端自定义类数据 问题一:超时问题,在最后获取数据的时候突然提示服务超时,服务已断开 解决:配置文件添加: <bindings> <wsHttpBinding> & ...

  4. 已知ip地址和其子网掩码如何求网络号子网号主机号

    已知ip地址为10.130.89.95,其子网掩码为255.255.255.224,求其网络号.子网号和主机号. 要看子网掩码变长在第几节,255.255.255.224是在第四节借了位 把224转换 ...

  5. ruby的hash学习笔记例: 将字符串文本中的单词存放在map中

    text = 'The rain in Spain falls mainly in the plain.'first = Hash.new []second = Hash.new {|hash,key ...

  6. C# Winform常见的Editor

    常见Editor: 1)ArrayEditor,继承自CollectionEditor 2)BinaryEditor 3)CollectionEditor 4)DateTimeEditor 5)Mul ...

  7. 【转】windows和linux间共享互传文件

    原文:http://blog.guorunmin.cn/2015/09/16/windows%E5%92%8Clinux%E9%97%B4%E5%85%B1%E4%BA%AB%E4%BA%92%E4% ...

  8. The Ninth Hunan Collegiate Programming Contest (2013) Problem I

    Problem I Interesting Calculator There is an interesting calculator. It has 3 rows of button. Row 1: ...

  9. Android开发-API指南- Calendar Provider

    Calendar Provider 英文原文:http://developer.android.com/guide/topics/providers/calendar-provider.html 采集 ...

  10. 慕课网-安卓工程师初养成-2-11 Java常量

    来源:http://www.imooc.com/code/1256 所谓常量,我们可以理解为是一种特殊的变量,它的值被设定后,在程序运行过程中不允许改变. 语法:final 常量名 = 值; 程序中使 ...