>  기사  >  백엔드 개발  >  php ajax 등록 실시간 확인 function_php 예제

php ajax 등록 실시간 확인 function_php 예제

WBOY
WBOY원래의
2016-08-04 08:56:45889검색

Ajax의 실시간 확인 기술은 매우 성숙합니다. 일부 표준화된 웹사이트에는 등록 확인을 위한 템플릿이 있는 경우 반드시 ajax의 새로 고침이 아닌 확인이 필요합니다. 이는 사용자 등록 경험에 좋습니다. 비교 적시에 새로고침하지 않으면 백그라운드에 연결할 수 없는 인증 모드는 다시 새로고침으로 돌아가야 하므로 사용자 경험에 매우 불리합니다.

Ajax 모드는 거의 모든 사이트 애플리케이션에 대한 요구 사항입니다. 새로 고치지 않는 프런트 엔드 검증으로서 ajax는 asp ajax, php ajax, . net ajax 및 기타 조합 여기서의 주요 설명은 php ajax의 등록 확인입니다.

다음 검증은 웹사이트에 등록할 때 사용자 이름을 입력할 때 먼저 새로 고치지 않는 검증을 수행해야 합니다. 백그라운드 데이터베이스에 동일한 이름의 데이터가 있는지 확인해야 합니다. 존재하는 경우 새로 고침되지 않습니다. 여기에는 총 4개의 파일이 포함되어 있다는 메시지가 표시됩니다.

ajax.js:Ajax 기술의 핵심 파일입니다. 주로 수시로 확인 메시지를 표시합니다. 이 파일은 일반적으로 수정할 필요가 없으며 프런트 엔드에서만 호출하면 됩니다. .

var xmlHttp
function showHint(str)
{
if (str.length==0)
 { 
 document.getElementById("txtHint").innerHTML=""
 return
 }
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 } 
xmlHttp.onreadystatechange=stateChanged 

var geturl="conn.php?q="+str
//sid是增加一个随机数 防止页面启用缓存技术·
geturl=geturl+"&sid="+Math.random()
geturl=encodeURI(geturl);
geturl=encodeURI(geturl); 
xmlHttp.open("GET",geturl,true)
xmlHttp.send(null)
} 
function stateChanged() 
{ 
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("txtHint").innerHTML=xmlHttp.responseText 
 } 
}
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;
}

conn.php:이것은 웹사이트의 구성 파일입니다. 로컬 mysql 사용자 이름과 비밀번호를 구성하려면 PHP와 데이터베이스 간의 연결을 구성해야 합니다. PHP MYSQL 데이터베이스 연결 또한, PHP와 데이터베이스 간의 연결을 구성해야 하며, 수신된 데이터는 실시간으로 처리되어 표시됩니다. 확인할 문서가 여러 개인 경우 여기에서 다중 승인 및 확인을 수행할 수 있습니다.

<&#63;php
$q=$_GET["q"];
$q = urldecode($q);

if (strlen($q) > 0)
{
 $conn = @mysql_connect("localhost","root","1010") or die ("MySql连接错误");
 mysql_select_db("xin",$conn);
 mysql_query("set names 'utf8'");
 
 $sql = "SELECT username FROM message WHERE username = '$q'";
 $query = mysql_query($sql);
 @$row = mysql_fetch_array($query);
 
 if(!empty($row['username']))
 {
 $response = "<font color=red>已经被注册!</font>";
 }else
 {
 $response = "<font color=blue>恭喜!可以注册!</font>";
 }
 
 echo $response;
}

&#63;>

index.html:이 파일은 비교적 간단합니다. ajax.js 처리 파일을 호출하고 새로 고침되지 않는 파일을 conn.php에 제출합니다. 배경으로.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="ajax.js"></script> 
</head>
<body bgcolor="#999999">
<center>
<form> 
<table>
 <tr>
 <td>用户名:</td>
 <td><input type="text" id="txt1" onKeyUp="showHint(this.value)"></td>
 </tr>
 <tr align="center">
 <td colspan="2"><span id="txtHint"></span></td>
 </tr>
</table>
</form>
</center>
</body>
</html>

Library.txt:이 파일은 SQL 데이터베이스 파일입니다. 이 파일을 mysql 데이터베이스로 가져오세요.

DROP DATABASE IF EXISTS `xin`;
CREATE DATABASE `xin` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `xin`;


CREATE TABLE `message` (
 `id` int(11) NOT NULL auto_increment,
 `username` varchar(20) default NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

이러한 파일을 PHP 파일이 실행될 수 있는 루트 디렉터리에 저장하세요. 테스트 URL은 localhost/index.html입니다. 다음은 필요한 등록 모듈로 수정해 보세요. 비밀번호, 이름 등을 추가하는 등

소스코드 다운로드: http://xiazai.php.net/201607/yuanma/php ajaxzhuce(php.net).rar

위 글의 내용은 모두의 공부에 도움이 되길 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.