一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php的ajax框架xajax入門與試用介紹

php的ajax框架xajax入門與試用介紹

2019-11-13 12:10php教程網 PHP教程

xajax功能很簡單,但很靈活!~它不象其它一些大的框架,功能確實強大,但執行速度不敢恭維。。功能雖多,但不夠靈活。api多,學起來簡直如同學習一門新的語言。

一、xajax與其它ajax框架的比較 
xajax功能很簡單,但很靈活!~它不象其它一些大的框架,功能確實強大,但執行速度不敢恭維。。功能雖多,但不夠靈活。api多,學起來簡直如同學習一門新的語言。 
二、xajax功能介紹 
xajax的功能比較簡單,但就因為簡單,所以靈活。同時,這也要求使用者要對javascrīpt / vbs 客戶端腳本有一定的了解。因為它的功能是比較活的。可以說單純使用xajax,什么也做不出,但配合js / vbs 又什么都做的出。 
xajax主要是使用xajaxResponse這個類,它提供了一些方法,舉例如下: 
1、addAlert($sMsg) 
彈出警告 
2、addscrīpt($sJS) 
執行某段js 
3、$objResponse->addAssign("","","") 
給頁面中的某個元素附值,或者修改其屬性 
等等。。。。 

所以xajax不是死的,它不能做出XXX XXX功能來,但是它可以靈活的控制客戶端的js / vbs,去完成我們要實現的效果。 

三、xajax安裝配置 
不需要特別的安裝和配置,只要下載其文件包,解壓到網站目錄中 
下載地址: 
http://www.xajaxproject.org/ 

四、用xajax做會員注冊和登陸 
1、數據庫 
采用mysql5.0,數據庫名zl 表名zl_user 表結構 
id int(11) auto_increment 
zl_user varchar(50) 
zl_pwd varchar(50) 
email varchar(50) 

http://blog.knowsky.com/ 

2、reg.php 注冊文件(內有說明) 

復制代碼代碼如下:


<?php 
require_once("inc/xajax.inc.php"); 
//使用xajax則必須首先引入xajax.inc.php 
$xajax = new xajax("inc/signup.php"); 
//創建一個xajax對象,為singup.php 
$xajax->registerFunction("processForm"); 
//使用singup.php里的processForm函數 
?> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<link rel="stylesheet" href="http://blogbeta.blueidea.com/css/style.css" _fcksavedurl=""http://blogbeta.blueidea.com/css/style.css"" type="text/css"> 
<title>無標題文檔</title> 
<?php $xajax->printJavascrīpt('inc/'); ?> 
<scrīpt type="text/javascrīpt"> 
function submitSignup() 

xajax.$('submitButton').disabled=true; 
xajax.$('submitButton').value="http://blogbeta.blueidea.com/wait..."; 
//修改id為submitButton的屬性 
xajax_processForm(xajax.getFormValues("signupForm")); 
//這里xajax_ 后面跟要使用哪個函數這里是 processForm,后面跟的是signupForm這個表單各項的集合 
return false; 

</scrīpt> 
</head> 
<body><form id="signupForm" action="javascrīpt:void(null);" ōnSubmit="submitSignup();"> 
<div id="main"> 
<div id="m1">用 戶 注 冊</div> 
<div id="formDiv"> 
<table width="100%" border="0" cellspacing="0" cellpadding="5"> 
<tr> 
<td align="right"> </td> 
<td> </td> 
</tr> 
<tr> 
<td width="31%" align="right">用戶名:</td> 
<td width="69%"><input name="usr" type="text" id="usr" /> 
*</td> 
</tr> 
<tr> 
<td align="right">密碼:</td> 
<td><input name="pwd" type="password" id="pwd" /> 
*</td> 
</tr> 
<tr> 
<td align="right">密碼:</td> 
<td><input name="pwd2" type="password" id="pwd2" /> 
*</td> 
</tr> 
<tr> 
<td align="right">Email:</td> 
<td><input name="email" type="text" id="email" /> 
* 可用于找回密碼</td> 
</tr> 
<tr align="center"> 
<td colspan="2"><input type="submit" name="submitButton" value="提交" class="button" /> 
<input type="reset" name="Submit2" value="重置" class="button" /></td> 
</tr> 
</table> 
</div> 
</div> 
</form> 
</body> 
</html> 


點提交后執行singup.php里的processForm函數 

3、inc/singup.php 

復制代碼代碼如下:


<?php 
define ('XAJAX_DEFAULT_CHAR_ENCODING', 'gb2312' ); 
//注意這里,必須要設置gb2312,不然中文會亂碼 
require_once("xajax.inc.php"); 
require_once("function.php"); 
$xajax = new xajax(); 
$xajax->registerFunction("processForm"); 
//同reg.php文件 

function processForm($aFormValues) 

$objResponse = new xajaxResponse(); 
require_once("conn.php"); 
$usr=$aFormValues['usr']; 
$email=$aFormValues['email']; 
$pwd=$aFormValues['pwd']; 
$pw=Md5($pwd); 
$errmsg=""; 
//要過濾的非法字符 
$ArrFiltrate=array("'",";","union"); 

foreach($aFormValues as $key=>$value){ 
if (FunStringExist($value,$ArrFiltrate)){ 
$objResponse->addAlert("輸入的信息含有非法字符\"' ; union!\""); 
$objResponse->addAssign("submitButton","value","繼續"); 
$objResponse->addAssign("submitButton","disabled",false); 
return $objResponse; 



if (trim($usr) == "") 

$errmsg.="請輸入用戶名!\n"; 

if (trim($pwd) == "") 

$errmsg.="請輸入密碼!\n"; 

if ($pwd != $aFormValues['pwd2']) 

$errmsg.="兩次輸入的密碼不一致!\n"; 


if (!CheckEmailAddr($email)) 

$errmsg.="郵件地址不正確!\n"; 

$sql="select * from zl_usr where zl_usr='$usr'"; 
$result=mysql_query($sql,$db); 
if($myrow=mysql_fetch_array($result)){ 
$errmsg.="用戶名已經存在!\n"; 

if ($errmsg=="") 

$sForm = "注冊成功<br>用戶名:".$usr."<br>email:".$email.""; 
$sql="insert into zl_usr(zl_usr,zl_pwd,email) values('$usr','$pw','$email')"; 
$result=mysql_query($sql,$db); 
$objResponse->addAssign("formDiv","innerHTML",$sForm); 

else 

$objResponse->addAlert($errmsg); 
//彈出錯誤信息 
$objResponse->addAssign("submitButton","value","繼續"); 
//修改submitButton的value為繼續 
$objResponse->addAssign("submitButton","disabled",false); 
//修改submitButton這個按扭的屬性 


return $objResponse; 



$xajax->processRequests(); 
?> 


這個文件中對信息進行了有效性判斷,包括:用戶名是否已經注冊過、信息中是否有非法字符、郵件地址是否正確、兩次輸入的密碼是否一致,如果沒有錯誤則輸入到數據庫中,并 
$objResponse->addAssign("formDiv","innerHTML",$sForm); 
在formDiv中重新插入代碼,內容為$sForm 
$sForm = "注冊成功<br>用戶名:".$usr."<br>email:".$email.""; 

如果有錯誤信息則 
$objResponse->addAlert($errmsg); 
//彈出錯誤信息 
$objResponse->addAssign("submitButton","value","繼續"); 
$objResponse->addAssign("submitButton","disabled",false); 
//修改submitButton這個按扭的屬性 

3、login.php 登陸文件 

復制代碼代碼如下:


<?php 
require_once("inc/xajax.inc.php"); 
$xajax = new xajax("inc/login.php"); 
$xajax->registerFunction("processForm"); 
?> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<link rel="stylesheet" href="http://blogbeta.blueidea.com/css/style.css" _fcksavedurl=""http://blogbeta.blueidea.com/css/style.css"" type="text/css"> 
<title>無標題文檔</title> 
<?php $xajax->printJavascrīpt('inc/'); ?> 
<scrīpt type="text/javascrīpt"> 
function submitSignup() 

xajax.$('submitButton').disabled=true; 
xajax.$('submitButton').value="http://blogbeta.blueidea.com/wait..."; 
xajax_processForm(xajax.getFormValues("signupForm")); 
return false; 

</scrīpt> 
</head> 
<body><form id="signupForm" action="javascrīpt:void(null);" ōnSubmit="submitSignup();"> 
<div id="main"> 
<div id="m1">用 戶 登 陸</div> 
<div id="formDiv"> 
<table width="100%" border="0" cellspacing="0" cellpadding="5"> 
<tr> 
<td align="right"> </td> 
<td> </td> 
</tr> 
<tr> 
<td width="31%" align="right">用戶名:</td> 
<td width="69%"><input name="usr" type="text" id="usr" /> 
*</td> 
</tr> 
<tr> 
<td align="right">密碼:</td> 
<td><input name="pwd" type="password" id="pwd" /> 
*</td> 
</tr> 

<tr align="center"> 
<td colspan="2"><input type="submit" name="submitButton" value="提交" class="button" /> 
<input type="reset" name="Submit2" value="重置" class="button" /></td> 
</tr> 
</table> 
</div> 
</div> 
</form> 
</body> 
</html> 


4、inc/login.php 登陸用的處理文件 

復制代碼代碼如下:


<?php 
define ('XAJAX_DEFAULT_CHAR_ENCODING', 'gb2312' ); 
require_once("xajax.inc.php"); 
require_once("function.php"); 
$xajax = new xajax(); 
$xajax->registerFunction("processForm"); 

function processForm($aFormValues) 

$objResponse = new xajaxResponse(); 
require_once("conn.php"); 
$usr=$aFormValues['usr']; 
$email=$aFormValues['email']; 
$pwd=$aFormValues['pwd']; 
$pw=Md5($pwd); 
$errmsg=""; 
//要過濾的非法字符 
$ArrFiltrate=array("'",";","union"); 

foreach($aFormValues as $key=>$value){ 
if (FunStringExist($value,$ArrFiltrate)){ 
$objResponse->addAlert("輸入的信息含有非法字符\"' ; union!\""); 
$objResponse->addAssign("submitButton","value","繼續"); 
$objResponse->addAssign("submitButton","disabled",false); 
return $objResponse; 



if (trim($usr) == "") 

$errmsg.="請輸入用戶名!\n"; 

if (trim($pwd) == "") 

$errmsg.="請輸入密碼!\n"; 

$sql="select * from zl_usr where zl_usr='$usr' and zl_pwd='$pw'"; 
$result=mysql_query($sql,$db); 
if(!$myrow=mysql_fetch_array($result)){ 
$errmsg.="用戶名不存在,或密碼錯誤!\n"; 

if ($errmsg=="") 

$sForm = "登陸成功"; 
$objResponse->addAssign("formDiv","innerHTML",$sForm); 

else 

$objResponse->addAlert($errmsg); 
$objResponse->addAssign("submitButton","value","繼續"); 
$objResponse->addAssign("submitButton","disabled",false); 


return $objResponse; 



$xajax->processRequests(); 
?> 


登陸于注冊原理差不多,就不廢話了:) 

另外下面是兩個用到的文件代碼 conn.php function.php 
conn.php 

復制代碼代碼如下:


<?php 
$database="zl";//MYSQL數據庫名 
$db = mysql_connect("127.0.0.1", "root","123456");//MYSQL數據庫用戶名和密碼 
mysql_select_db($database,$db); 
?> 
function.php 

<?php 
function CheckEmailAddr($C_mailaddr) 

if (!eregi("^[_a-z0-9-] (.[_a-z0-9-] )*@[a-z0-9-] (.[a-z0-9-] )*$", 
$C_mailaddr)) 

return false; 

return true; 

//是否存在數組中的值 
function FunStringExist($StrFiltrate,$ArrFiltrate){ 
foreach ($ArrFiltrate as $key=>$value){ 
if (eregi($value,$StrFiltrate)){ 
return true; 


return false; 

?> 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日本 在线观看 | 日本免费一区二区三区 | kkkk4444在线看片免费 | 女人狂吮男人命根gif视频 | 亚洲男女网站 | 糖心vlog麻豆精东影业传媒 | 和日本免费不卡在线v | 国产精品久久久久久久久免费hd | 青草青草视频2免费观看 | 91赵邦贺 | 亚洲色图欧美偷拍 | 久久精品成人免费网站 | 国产欧美精品一区二区三区 | 国产自一区 | uoco福利姬网站 | 日本三级免费看 | 妇女澡堂淋浴性 | 四虎精品影视 | 免费网站看v片在线香蕉 | 亚洲日韩男人网在线 | 99久久精品国语对白 | 亚洲XXX午休国产熟女屁 | 免费看日产一区二区三区 | 久久婷婷五月综合色精品首页 | 欧美男同video | 美女视频一区二区三区在线 | 国产精品区一区二区免费 | www一区 | 精品欧美一区二区三区久久久 | 国产高清在线看 | 午夜精品久久久久久久2023 | 国产a高清| 99精品热线在线观看免费视频 | 视频一区在线观看 | 日韩av.com| 日韩视频免费一区二区三区 | 欧美成人免费观看的 | haodiaose在线精品免费观看 | 香蕉免费一区二区三区在线观看 | 国产草草视频 | 国产免费精彩视频 |