先说一下xajax的步骤吧,如下:
require_once("xajax.inc.php"); //包含xajax类库
$xajax = new xajax(); //实例化xajax对象
$xajax->registerfunction("myfunction"); //注册PHP处理函数
$xajax->processrequests(); //对js传入的值进行处理
<?php $xajax->printjavascript(); ?> //这段加入到<head>和</head>之间,使xajax实例可以自己生成所需的js
<input type="button" name="button" value="检查用户名" οnclick="xajax_myfunction(document.site.siteurl.value);" /> //此点注意函数前要加上'xajax_'
xajax可以使用在smarty模板系统之中,仅仅需要创建一个smarty变量就可以包含xajax的javascript:
$smarty->assign('xajax_javascript', $xajax->getJavascript());
但是些时<head>和</head>之间要改成{$xajax_javascript}。
举个例子说明一下:
check.php文件如下:
<?php
require_once('main.php');//包含smarty类库
require('./xajax/xajax.inc.php');//包含xajax类库
require_once('admin/conn.php');
$xajax=new xajax();//实例化xajax对象
function checkurl($siteurl){//编写需要的PHP函数
$conn=@mysql_connect('localhost','root','') or die('不能连接到数据库服务器!可能是数据库服务器没有启动,或者用户名密码有误!');
@mysql_select_db('haodp',$conn) or die('选择数据库出错,可能是您指定的数据库不存在!');
$checkurl=$siteurl;
$query="select sitename,siteurl from site where siteurl='$checkurl'";
$result=mysql_query($query,$conn);
$row=mysql_num_rows($result);
if($row){
$checkurl="你的网站已经提交过了!!";
}
else
{
$checkurl="继续提交!!";
}
$objresponse=new xajaxResponse();
$objresponse->addassign("message","innerHTML",$checkurl);
return $objresponse;
}
$xajax->registerFunction("checkurl");
$xajax->processRequests();
$smarty->assign('xajax_javascript', $xajax->getJavascript('./xajax/'));
$smarty->display('bbb.htm');
mysql_close($conn);
?>
模板文件check.htm如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN">
<head>
<meta http-equiv="Content-Language" content="zh-cn" />
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta name="keywords" content="网店之家" />
<meta name="description" content="网店之家" />
<title>加入网店之家</title>
<link href="images/default.css" rel="stylesheet" type="text/css" />
<{$xajax_javascript}>
</head>
<body>
<{include file="header.htm"}>
<form action='addsite.php' method='post' name='site'>
<table align=center width=990 >
<tr>
<td width='16%' bgcolor="#ECF4DF">网站地址:</td>
<td bgcolor="#ECF4DF"> <input name='siteurl' type='text' value="http://" size='30' id='siteurl'>
注意:网址后面不要加“/” 例如:http://www.haodp.net
<input type="button" name="button" value="检查网站是否已经被提交"
onClick="xajax_checkurl(document.site.siteurl.value);" /></td>
</tr>
<tr>
<td colspan='2' align='center' bgcolor="#FFFFFF">
<div id='message' align='center'></div>
</td>
</tr>
</table>
</form>
<{include file="foot.htm"}>
</body></html>