<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post/1169/</link>
<title><![CDATA[smarty结合xajax检测用户名简单实例,AJAX结合PHP代码实现登录]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Mon, 28 Jul 2008 07:28:01 +0000</pubDate> 
<guid>http://www.jackxiang.com/post/1169/</guid> 
<description>
<![CDATA[ 
	http://tech.ddvip.com/2007-02/117049614319269.html<br/>http://hi.baidu.com/suchshow/blog/item/8aeb9523c6a26a579822edc8.html<br/>&nbsp;&nbsp; 在原创那边写了几个php＋ajax的应用例子，今天和新手谈谈smarty+xjax，希望对新手有帮助，xajax是用PHP写的ajax开发框架，可以生成JS代码，这样使用起ajax就比较简单了，今天结合模板引擎smarty，来实现一个检测用户名合法性的小程序，大家有兴趣的话还可以扩展这个程序到自己的应用中，嗯，这里写出核心代码，里面注释很详细，不过建议大家看之前还是看看这个http://blog.csdn.net/fhiesc/archive/2006/07/04/873441.aspx，相信你会很快明白xajax是什么东东，及如何使用，最后依然是效果图和源代码下载。好的，看代码吧：<br/>&lt;?php<br/><br/>&nbsp;&nbsp;/*****************************************<br/><br/>&nbsp;&nbsp; Title :smarty结合xajax检测用户名简单实例<br/>&nbsp;&nbsp; Author:leehui1983(辉老大)<br/>&nbsp;&nbsp; Finish Date&nbsp;&nbsp;:2006-12-09<br/><br/>&nbsp;&nbsp;*****************************************/<br/><br/>&nbsp;&nbsp;//为避免中文乱码，需要在 xajax.inc.php 需要改一下默认的encoding:define (&#039;XAJAX_DEFAULT_CHAR_ENCODING&#039;, &#039;gbk&#039; )UTF8编码格式文件不需要更改<br/><br/>&nbsp;&nbsp;require_once(&#039;./libs/Smarty.class.php&#039;);//包含smarty类库<br/>&nbsp;&nbsp;require(&#039;./xajax/xajax.inc.php&#039;);//包含xajax类库<br/><br/>&nbsp;&nbsp;function checkusername($textvalue){//编写需要的PHP函数<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $checkresult=($textvalue==&#039;test&#039; ? &#039;&lt;font color=red&gt;该用户名已经注册&lt;/font&gt;&#039; :&#039;&lt;font color=red&gt;可以注册&lt;/font&gt;&#039;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $objresponse=new xajaxResponse();//实例化xajaxresponse对象<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $objresponse-&gt;addassign(&quot;result&quot;,&quot;innerHTML&quot;,$checkresult);//指定ID为result的元素中添加内容$checkresult<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return $objresponse;//返回结果文本<br/>&nbsp;&nbsp;}<br/><br/>&nbsp;&nbsp;$xajax=new xajax();//实例化xajax对象<br/>&nbsp;&nbsp;//$xajax-&gt;debugOn();//打开xajax调试<br/>&nbsp;&nbsp;$smarty=new Smarty();//实例化smarty对象<br/>&nbsp;&nbsp;$smarty-&gt;template_dir = &quot;./templates&quot;;//设置模板目录<br/>&nbsp;&nbsp;$smarty-&gt;compile_dir = &quot;./templates_c&quot;; //设置编译目录<br/>&nbsp;&nbsp;$smarty-&gt;caching = false; //设置缓存方式<br/>&nbsp;&nbsp;/*****************************************************<br/>&nbsp;&nbsp;左右边界符，默认为{}，但实际应用当中容易与JavaScript<br/>&nbsp;&nbsp;相冲突，所以建议设成&lt;{}&gt;或其它。<br/>&nbsp;&nbsp;*****************************************************/<br/>&nbsp;&nbsp;$smarty-&gt;left_delimiter = &quot;&lt;{&quot;; <br/>&nbsp;&nbsp;$smarty-&gt;right_delimiter = &quot;}&gt;&quot;;<br/><br/><br/>&nbsp;&nbsp;$xajax-&gt;registerFunction(&quot;checkusername&quot;);//注册checkusername函数<br/>&nbsp;&nbsp;$xajax-&gt;processRequests();//调用xajax用于接管请求<br/>&nbsp;&nbsp;<br/>&nbsp;&nbsp;$smarty-&gt;assign(&#039;xajax_javascript&#039;, $xajax-&gt;getJavascript(&#039;./xajax/&#039;));//输出JS代码,注意(&#039;./xajax/&#039;)中参数为xajax.inc.php父目录，在同意目录下可不同填写，否则必须填写<br/>&nbsp;&nbsp;$smarty-&gt;assign(&#039;title&#039;,&#039;smarty结合xajax检测用户名简单实例&#039;);//替换模板内容<br/>&nbsp;&nbsp;$smarty-&gt;display(&#039;index.tpl&#039;);//显示模板内容<br/>?&gt; <br/><br/><br/>模板代码：<br/><br/><br/>&lt;html&gt;<br/>&lt;head&gt;<br/>&lt;title&gt;&lt;{$title}&gt;&lt;/title&gt;<br/>&lt;{$xajax_javascript}&gt;&lt;{*使smarty支持xajax*}&gt;<br/>&lt;/head&gt;<br/><br/>&lt;body&gt;<br/>&lt;form&nbsp;&nbsp;name=&quot;check&quot; &gt;<br/>请输入用户名：<br/>&nbsp;&nbsp;&lt;input type=&quot;text&quot; name=&quot;username&quot; /&gt;<br/>&nbsp;&nbsp;&lt;input type=&quot;button&quot; name=&quot;button&quot; value=&quot;检查用户名&quot;&nbsp;&nbsp;/&gt;<br/>&nbsp;&nbsp;&lt;div id=&quot;result&quot;&gt;&lt;/div&gt;<br/>&lt;/form&gt;<br/>&lt;/body&gt;<br/>&lt;/html&gt; <br/><br/>本人测试了一下： 需要在按钮后面加入：<br/>&lt;input type=&quot;button&quot; name=&quot;button&quot; value=&quot;检查用户名&quot;&nbsp;&nbsp;onclick=&quot;xajax_checkusername(&#039;test&#039;)&quot;&nbsp;&nbsp;/&gt;&nbsp;&nbsp;在前面的php文件中的函数名称：function checkusername($textvalue){//编写需要的PHP函数 ，加入xajax_ 来进行调用。。。（这点很关键）<br/><br/>tpl模板调通后如下：<br/><br/>&lt;html&gt;<br/>&lt;head&gt;<br/>&lt;title&gt;&lt;{$title}&gt;&lt;/title&gt;<br/>&lt;{$xajax_javascript}&gt;&lt;{*使smarty支持xajax*}&gt;<br/>&lt;/head&gt;<br/><br/>&lt;body&gt;<br/>&lt;form&nbsp;&nbsp;name=&quot;check&quot; &gt;<br/>请输入用户名：<br/>&nbsp;&nbsp;&lt;input type=&quot;text&quot; name=&quot;username&quot; /&gt;<br/>&nbsp;&nbsp;&lt;input type=&quot;button&quot; name=&quot;button&quot; value=&quot;检查用户名&quot; onclick=&quot;my_ajax()&quot; /&gt;<br/>&nbsp;&nbsp;&lt;div id=&quot;result&quot;&gt;&lt;/div&gt;<br/>&lt;/form&gt;<br/>&lt;/body&gt;<br/>&nbsp;&nbsp;&lt;script language=&quot;JavaScript&quot;&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;function my_ajax()<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;&nbsp;value= document.getElementById(&quot;checkvalue&quot;).value;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xajax_checkusername(value);<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;/script&gt;<br/>&lt;/html&gt;<br/><br/>////////////////////////////////////////////////////<br/><br/>下面是另一网友的实例化：<br/><br/>扩展了部分功能: <br/>1.检测数据库的用户名.&nbsp;&nbsp; <br/>2.当鼠标离开用户名输入框,并点击用户名输入框外或点击下一下输入框时,自动检测用户名是否已经注册,而不用自己去点击&quot;检测用户名&quot;.<br/><br/>我的运行环境:apache2.0+php5.1.16+MySQL5.0.17+samrty+xajax<br/><br/>一、文件目录（见下面图片）<br/>二、建立数据库<br/>CREATE TABLE `checkusername` (<br/>`id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,<br/>`username` CHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL <br/>) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;<br/><br/>三、文件代码<br/><br/>1、index.php<br/><br/>&lt;?php<br/>/****************************************************************<br/>* File name :&nbsp;&nbsp;index.php<br/>* Title : use smarty and xajax<br/>* author : *<br/>* Created on 2006-12-18<br/>***************************************************************/<br/><br/>error_reporting(E_ALL);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//show mysql error,when file finished,you can change it <br/>define(&#039;ROOT_PATH&#039; , &#039;&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //define root file<br/>define(&#039;XAJAX_DEFAULT_CHAR_ENCODING&#039;,&#039;utf-8&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //set the character of xajax<br/>header(&#039;Content-Type: text/html;charset = utf-8&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//set the character <br/><br/>require_once(ROOT_PATH . &#039;includes/config.inc.php&#039;);&nbsp;&nbsp;&nbsp;&nbsp; //define database<br/>require_once(ROOT_PATH . &#039;includes/function.inc.php&#039;);&nbsp;&nbsp; //some functions<br/><br/>//use xajax<br/>require_once(&#039;xajax/xajax.inc.php&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//include xajax Class<br/><br/>//function check username<br/>function checkusername($testvalue)<br/>{<br/>&nbsp;&nbsp;$sql = &quot;SELECT id FROM `checkusername` WHERE `username`=&#039;{$testvalue}&#039;&quot;;&nbsp;&nbsp;<br/>&nbsp;&nbsp;$query_id = mysql_query($sql);<br/>&nbsp;&nbsp;if(!mysql_errno())<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp; $rows = mysql_num_rows($query_id);<br/>&nbsp;&nbsp; $checkresult = ($rows ? &#039;&lt;font color=red&gt;该用户已经注册&lt;/font&gt;&#039; : &#039;&lt;font color=red&gt;可以注册&lt;/font&gt;&#039;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$objreponse = new xajaxresponse();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$objreponse-&gt;addAssign(&#039;result&#039;,&#039;innerHTML&#039;,$checkresult);&nbsp;&nbsp;&nbsp;&nbsp;//return result<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return $objreponse;<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;else <br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp; print_mysql_error();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //this function in config.inc.php<br/>&nbsp;&nbsp;}<br/>}<br/><br/>mysql_connect(DB_HOST , DB_USER , DB_PASSWORD) or die(&#039;连接&#039; . DB_HOST . &#039;失败&#039;);<br/>mysql_select_db(DB_NAME) or die(&#039;连接&#039; . DB_NAME . &#039;失败&#039;);<br/><br/>//set xajax<br/>$xajax = new xajax();<br/>$xajax-&gt;registerFunction(&#039;checkusername&#039;);<br/>$xajax-&gt;processRequests();<br/><br/>//close database<br/>mysql_close();<br/><br/>//set smarty<br/>$template_name = &#039;first&#039;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//the templates address<br/>require_once(ROOT_PATH . &#039;includes/smarty/Smarty.class.php&#039;);<br/>$smarty = new smarty;<br/>$smarty-&gt;compile_check = true;<br/>$smarty-&gt;debugging = false;<br/>$smarty-&gt;caching = false;<br/>$smarty-&gt;template_dir = &quot;template/{$template_name}&quot;;<br/>$smarty-&gt;compile_dir = &#039;template_c&#039;;<br/>$smarty-&gt;left_delimiter = &#039;[##&#039;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//smarty&#039;s left delimiter,you can also use &#039;&lt;{&#039;<br/>$smarty-&gt;right_delimiter = &#039;##]&#039;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//smarty&#039;s right delimiter<br/><br/>//assign smarty<br/>$smarty-&gt;assign(&#039;xajax_javaScript&#039;,$xajax-&gt;getJavascript(&#039;xajax/&#039;));<br/>$smarty-&gt;assign(&#039;title&#039;,&#039;smarty and xajax check username&#039;);<br/><br/>//print smarty<br/>$smarty-&gt;display(&#039;index.tpl&#039;);<br/><br/>2、config.inc.php<br/><br/>&lt;?php<br/>/****************************************************************<br/>* File name : config.inc.php<br/>* Title : set database define<br/>* author : <br/>* Created on 2006-12-18<br/>***************************************************************/<br/><br/>define(&#039;DB_HOST&#039; , &#039;localhost&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//the server<br/>define(&#039;DB_USER&#039; , &#039;root&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //the username<br/>define(&#039;DB_PASSWORD&#039; , &#039;&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //the password<br/>define(&#039;DB_NAME&#039; , &#039;checkusername&#039;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//the database<br/><br/>define(&#039;IN&#039; , true);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//the check right<br/><br/>3、function.inc.php<br/><br/>&lt;?php<br/>/****************************************************************<br/>* File name : function.inc.php<br/>* Title :&nbsp;&nbsp;functions<br/>* author :&nbsp;&nbsp;<br/>* Created on 2006-12-18<br/>***************************************************************/<br/><br/>//print mysql_error<br/>function print_mysql_error()<br/>{<br/>&nbsp;&nbsp;echo &#039;mysql errno: &#039; . mysql_errno() . &#039;&lt;br /&gt;&#039;;&nbsp;&nbsp;&nbsp;&nbsp;//error number<br/>&nbsp;&nbsp;echo mysql_error();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //error content<br/>&nbsp;&nbsp;mysql_close();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //close server<br/>&nbsp;&nbsp;die();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//exit<br/>}<br/><br/>4、index.tpl<br/><br/>&lt;html&gt;<br/>&lt;head&gt;<br/>&lt;title&gt;[##$title##]&lt;/title&gt;<br/>&lt;meta http-equiv=&quot;Content-Type&quot; c&gt;<br/>[##$xajax_javaScript##]<br/>&lt;/head&gt;<br/>&lt;body&gt;<br/>&lt;form name=&quot;check&quot;&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;用户名:&lt;input name=&quot;username&quot; &gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;div id=&quot;result&quot;&gt;&lt;/div&gt;<br/>&lt;/form&gt;<br/>&lt;/body&gt;<br/>&lt;/html&gt;<br/><br/>四、对文件index.tpl的说明<br/>&nbsp;&nbsp;<br/>index.tpl，并没有按纽“检测用户名”。用了onBlur事件处理<br/>onBlur事件:当用户离开输入框时，一个模糊（blur)事件能够检查输入。<br/><br/><br/>
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post/1169/#blogcomment51546</link>
<title><![CDATA[[评论] smarty结合xajax检测用户名简单实例,AJAX结合PHP代码实现登录]]></title> 
<author>qa &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Tue, 23 Mar 2010 02:51:09 +0000</pubDate> 
<guid>http://www.jackxiang.com/post/1169/#blogcomment51546</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post/1169/#blogcomment51547</link>
<title><![CDATA[[评论] smarty结合xajax检测用户名简单实例,AJAX结合PHP代码实现登录]]></title> 
<author>qa &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Tue, 23 Mar 2010 02:51:22 +0000</pubDate> 
<guid>http://www.jackxiang.com/post/1169/#blogcomment51547</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post/1169/#blogcomment51580</link>
<title><![CDATA[[评论] smarty结合xajax检测用户名简单实例,AJAX结合PHP代码实现登录]]></title> 
<author>gg &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Wed, 23 Jun 2010 02:59:59 +0000</pubDate> 
<guid>http://www.jackxiang.com/post/1169/#blogcomment51580</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>