[原创]ajax 实现用户注册功能教程二

 更新时间:2016年11月25日 15:17  点击:2017

[原创]ajax 实现用户注册功能教程二','

//

本教程由本站原创,转载请注明来处

作者:www.111cn.net

邮箱:drise@163.com

QQ:271728967

//

上面第一个reg.php文件己经做好了,我就来做第二步

var xmlHttp = false;
function ajaxcreate(){//这里是创建xmlhttpt对像

try {
  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
 } catch (e) {

try {
   xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
 } catch (e2) {

  xmlHttp = false;
 }

 }


if (!xmlHttp && typeof XMLHttpRequest != \\\'undefined\\\') {


  xmlHttp = new XMLHttpRequest();


 }


if(!xmlHttp){alert(\\\'Create Xmlhttp Fail \\\');return false;}


}

function ajax(){//这里是接到reg.php onblur()事件后要进行的操作,

 ajaxcreate();

 var xmvalue=document.getElementById("xm").value;


 var url="/boke/blog/type.php?txt="+encodeURI(xmvalue);


 if (xmvalue== null || xmvalue.length>20 || xmvalue == "") return false;


 xmlHttp.open("POST",url,true); 


 xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");


 xmlHttp.send(xmvalue); 


 xmlHttp.onreadystatechange=returnstate; 


}


function returnstate(){


 if(xmlHttp.readyState != 4 ){


  document.getElementById("divxm").innerHTML="<div id=\\\'phperblog_showinfo_red\\\'><font color=red>正在验证中,请稍后...</font></div>";


 }

 if(xmlHttp.readyState == 4 ){


  document.getElementById("divxm").innerHTML=xmlHttp.responseText;


 }


}

//[原创]ajax 实现用户注册功能教程三

本教程由本站原创,转载请注明来处

作者:www.111cn.net

邮箱:drise@163.com

QQ:271728967

//

现在到了第三步,我们来写type.php文件,这个文件的作用是判断用户名是否存在,再然后数据给用户.

<?php
header("Content-type:text/html;charset=gb2312");//为了不让其出现乱码所以把文档编码设置为gb2312
$xm=Strreplace(isset($_GET['txt'])?$_GET['txt']:'null');//取得用户名
if(preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $xm)){//判断用户名第一个是否为汉字,
  echo("<div id='phperblog_showinfo_red'>对不起,不能使用中文作为用户名! </div>");
  exit();
  }
if($xm=='null' || $xm=='' || strlen($xm)>10 || strlen($xm)<3){//判断用户名的合法性
 echo("<div id='phperblog_showinfo_red'>对不起,你输入的用户名不合法,用户由3-10Aa_zZ及数字组成! </div>");
 exit();
}else{
 $result=mysql_query("select uname from tablename where uname='$xm' ") or die('Error !'."Error system busy.....plase wait!");
 if(!mysql_num_rows($result)){
  echo("<div id='phperblog_showinfo_reg'>恭喜你!用户名".$xm."还未注册,你可以注册! </div>");
 }else{
  echo("<div id='phperblog_showinfo_red'>对不起,用户己注册请选择其它名称!</div>");
 }
}
?>

//

本教程由本站原创,转载请注明来处

作者:www.111cn.net

邮箱:drise@163.com

QQ:271728967

//

 

第一步我们来创建一个注册文章reg.php

第二步就是写js文件

第三步就是在用户名框使用onblur()调用type.php文件

第四步就是check.php实现文件

下面废话就不多说了,我们来建立文章reg.php代码如下[测试页面http://www.111cn.net/reg.php]

<table width="100%" border="0" cellspacing="0">
                        <form name="form1" id="form1" method="post" action="/boke/blog/check.php">
                          <tr>
                            <td height="28" colspan="5"><div id="reglist">让你不再为写博客而写博客,我们让你写的文章变成你想要的东西!</div></td>
                          </tr>
                          <tr>
                            <td height="43" colspan="3" align="left" valign="bottom">&nbsp;<img src="/boke/blog/Pic/st-0136.gif" width="16" height="16" /><span class="style6">[注:带<span class="style1">*</span>号的为必须填项]</span> </td>
                            <td width="323">&nbsp;</td>
                            <td width="248">&nbsp;</td>
                          </tr>
                          <tr class="tb">
                            <td width="108" height="40" align="right" class="tb">用户名(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td colspan="2" align="left" class="tb"><input name="xm" type="text" id="xm" size="15" onblur="ajax();" />
                            </td>
                            <td width="323" class="tb"  ><div id="divxm">
                                <div id="bothlist">请填写你的帐号!</div>
                            </div></td>
                            <td width="248" class="tb"  >&nbsp;</td>
                          </tr>
                          <tr class="tb">
                            <td width="108" height="40" align="right" class="tb">性别(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td colspan="2" align="left" class="tb"><select name="sex" id="sex">
                                <option value="1">男</option>
                                <option value="0">女</option>
                            </select></td>
                            <td width="323" class="tb" ><div id="bothlist">请选择你的性别!</div></td>
                            <td width="248" class="tb" >&nbsp;</td>
                          </tr>
                          <tr>
                            <td width="108" height="40" align="right">用户密码(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td colspan="2" align="left"><input name="rpwd" type="password" id="rpwd" size="15"  onblur="checkuser();" /></td>
                            <td width="323" rowspan="2" id="divpwd" ><div id="bothlist">请填写您的密码,长度在6-10位之间!</div></td>
                            <td width="248" rowspan="2" id="divpwd" >&nbsp;</td>
                          </tr>
                          <tr>
                            <td width="108" height="40" align="right">再输入一次密码(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td colspan="2" align="left"><input name="rpwd1" type="password" id="rpwd1" size="15" onblur="checkuser();" /></td>
                          </tr>
                          <tr class="tb">
                            <td width="108" height="40" align="right" class="tb">密码提示问题(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td colspan="2" align="left" class="tb"><select name="safe" id="safe">
                                <option value="我最喜欢的动物是什么?">我最喜欢的动物是什么?</option>
                                <option value="我高中学校叫什么名字?">我高中学校叫什么名字?</option>
                                <option value="我女朋友的名字叫什么?">我女朋友的名字叫什么?</option>
                                <option value="我最喜欢的人是谁?">我最喜欢的人是谁?</option>
                            </select></td>
                            <td width="323" class="tb">&nbsp;</td>
                            <td width="248" class="tb">&nbsp;</td>
                          </tr>
                          <tr>
                            <td width="108" height="40" align="right">提示问题答案(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td colspan="2" align="left"><input name="safean" type="text" id="safean" size="15"  onblur="checkuser();" /></td>
                            <td width="323" id="divda" ><div id="bothlist">请填写您的答案,找回密码需要确认.例如:我叫张三!</div></td>
                            <td width="248" id="divda" >&nbsp;</td>
                          </tr>
                          <tr class="tb">
                            <td width="108" height="40" align="right" class="tb">您的电子邮箱(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td colspan="2" align="left" class="tb"><input name="email" type="text" id="email" size="15" onblur="checkuser();" /></td>
                            <td width="323" class="tb" id="divemail"><div id="bothlist">请正确填写你的邮箱地址!</div></td>
                            <td width="248" class="tb" id="divemail">&nbsp;</td>
                          </tr>
                          <tr>
                            <td width="108" height="40" align="right">验证码(<span class="style3"><span class="style1">*</span></span>):</td>
                            <td width="79" align="left"><input name="rver" type="text" id="rver" size="7"  onblur="checkuser();" /></td>
                            <td width="122" align="left"><img src="/boke/blog/inc/verlog.php" onclick="this.src='/boke/blog/inc/verlog.php';" /><span class="read">点击图片刷新</span></td>
                            <td width="323" id="divyz"><div id="bothlist">请按左边的图输入验证码,如不清楚可点击图片刷新验证码!</div></td>
                            <td width="248" id="divyz">&nbsp;</td>
                          </tr>
                          <tr align="left">
                            <td width="108" height="40" class="tb">&nbsp;</td>
                            <td height="40" colspan="4" class="tb"><input name="cbox" type="checkbox" id="cbox" value="1" checked="checked" />
                                <span class="phperblog_photo style4"><a href="#" class="name">&lt;&lt;我同意本站服务条款&gt;&gt;</a></span></td>
                          </tr>
                          <tr>
                            <td width="108" height="40">&nbsp;</td>
                            <td height="40" colspan="2" align="left"><input name="imageField" type="image" src="/boke/blog/Pic/an0159.gif" width="149" height="27" onclick=" return checkuser();" border="0" /></td>
                            <td width="323" height="40" align="left">&nbsp;</td>
                            <td width="248" align="left">&nbsp;</td>
                          </tr>
                                           <tr>
                            <td width="108" height="28">&nbsp;</td>
                            <td height="28" colspan="2">&nbsp;</td>
                            <td width="323" height="28">&nbsp;</td>
                            <td width="248">&nbsp;</td>
                          </tr>
                        </form>
          </table>

在多数WEB开发者眼中,ASP和JSP都被认为是领跑者,而PHP却被认为是个弱小的“挣扎者”,或者说它是一门被贬低为业余者才使用的语言,不值得参与企业WEB开发的竞争。在我看来,PHP没有被当作竞争者的理由是评论者缺乏对它的了解,而且也不了解用于WEB开发的其他操作系统。和一些观点相反,Windows不再占有WEB虚拟主机服务市场的最大份额,我猜想它在WEB开发这一领域里也在被摧城拔寨。

在企业开发里为什么没有PHP?

很显然,PHP被认为落后ASP和JSP太多,以至于它是没有什么用的,但是这恰恰与事实不符。PHP本身就是一门强大的语言。它事实上在每个发行版的Linux上都有,在Mac OS X上也有。获取开发和使用PHP代码的构件(building-block)工具和软件都是免费的。用于开发PHP应用程序的商业集成开发环境(commercial integrated development environments,IDES)也可以找到——这样的工具有Komodo(它运行在Linux和Windows上)和Zend Studio(这个应用程序能够运行在任何带有Java运行环境的操作系统上)。你几乎可以在每个WEB虚拟主机上运行由PHP建立的网站,而不要考虑服务器所运行的是什么操作系统,这一事实让PHP更加具有吸引力。
PHP能够提供什么?
先把PHP周围有什么忘掉一会儿,而考虑一下PHP自身能够提供什么。它是一门强健的服务器端语言,能够提供相当多的功能,而且能够迅速地为页面提供服务。
容易使用
使用C或者Perl或者具有类似风格和句法的另一种语言的任何用户都能够很快上手PHP。尽管它是设计用在WEB上的,但是它也能够作为命令行语言使用。你正在编写的WEB应用程序需要每个小时或者每天执行一次某些代码吗?使用cron或者类似的计划安排管理器,你可以计划安排PHP代码在你希望的时候执行,使用普通的命令解释脚本或者批处理文件就能够执行这样的代码。不需要自动调用浏览器就能够查看专门的网页,从而执行你的事件,也没有必要依赖来访者的点击来告诉你的系统:特定的代码需要在特定的时候被执行。PHP在这一领域可扩展性的事实是绝对具有吸引力的。
PHP的好处
我不是JSP或者ASP的老手,在此我也不想贬低这些语言。相反,我会把注意力放在PHP的好处上。
本地化
PHP让你能够为网站的访问者提供本地化的服务。当用户点击进入网站的时候,网站会根据他们浏览器的设置自动地以其母语向其提供页面。要实现这一点不需要使用用于语言翻译的烦杂文件,而是使用和本地化的C程序所具有的相同能力,通过一个叫做gettext的系统实现的。如果被请求的语言文件存在,那么用户所看到的文本就是其母语;如果语言文件不存在,那么文本就是缺省的英语或者其他任何你所指定的语言。许多本地化的UNIX应用程序都将gettext作为标准,它让第三方的翻译变得轻而易举。
轻易地使用命令行
PHP支持在需要的地方设置和执行命令行程序。使用标准的UNIX diff工具,它能够生成错误最后一次修改同要使用电子邮件发送到错误的所有者的当前注释之间的不同。PHP代码对在系统上所编写的两个文件执行diff,将其输出作为输入,再生成一个要发送的电子邮件。这封电子邮件是通过PHP自己来发送的。

其他好处
上面的只是我在自己程序里所用到的强大功能中的两个,而还其他的功能。例如,你可以:

即时创建简单的Flash动画。
即时创建PDF文档。
使用高级数学功能,以及面向对象的编程技术。
读取和写入到本地和IMAP邮箱。
在PHP里就可以使用任何标准的Internet协议。想要编写基于PHP的FTP、WEB或者新闻客户端?没有问题!只使用PHP你就完全能够编写出使用标准TCP/IP套接字的客户端和服务器,并以此创建自己的协议。
实现对加密的支持,以及对各种数据库服务器的支持。
缺乏远见的评论

我觉得,那些寻找顶级WEB开发语言而排除掉PHP的人是极其短见的。我使用PHP编写代码已经有很多年了,无论是像错误追踪系统这样的高级功能,还是简单地重复使用页眉和页脚这样的普通功能,我都使用PHP编写过。我用PHP编写过半静态的页面,也编写过全功能的多媒体演示。我不是唯一一个使用PHP的人。如果PHP不值得引起注意,如果它只是小儿科或者爱好者的语言,那它为什么会是在WEB开发上成长最快的语言呢?如果它没有ASP或者JSP那么强大,那么它为什么会被用在流量巨大WEB网站上?例如Yahoo,据说它就是由PHP建成的。


开发人员习惯用熟悉的产品

我敢肯定,ASP 和JSP有它们各自的强项,但是我相信人们是用它们不是因为它们能够提供比PHP更加强大的功能,而是因为人们已经了解了它们,并希望以自己习惯的方法编写代码。排除PHP只能表示对这一语言的无知。

ContentDigest directive
Syntax: ContentDigest on|off
Default: ContentDigest off
Context: server config, virtual host, directory, .htaccess
Override: Options
Status: experimental
Compatibility: ContentDigest is only available in Apache 1.1 and later
This directive enables the generation of Content-MD5 headers as defined in RFC1864 respectively RFC2068.
MD5 is an algorithm for computing a "message digest" (sometimes called "fingerprint") of arbitrary-length data, with a high degree of confidence that any alterations in the data will be reflected in alterations in the message digest.
The Content-MD5 header provides an end-to-end message integrity check (MIC) of the entity-body. A proxy or client may check this header for detecting accidental modification of the entity-body in transit. Example header:
     Content-MD5: AuLb7Dp1rqtRtxz2m9kRpA==
Note that this can cause performance problems on your server since the message digest is computed on every request (the values are not cached).
Content-MD5 is only sent for documents served by the core, and not by any module. For example, SSI documents, output from CGI scripts, and byte range responses do not have this header.
--------------------------------------------------------------------------------
CoreDumpDirectory directive
Syntax: CoreDumpDirectory directory
Default: the same location as ServerRoot
Context: server config
Status: core
This controls the directory to which Apache attempts to switch before dumping core. The default is in the ServerRoot directory, however since this should not be writable by the user the server runs as, core dumps won't normally get written. If you want a core dump for debugging, you can use this directive to place it in a different location.
--------------------------------------------------------------------------------
DefaultType directive
[!--infotagslink--]

相关文章

  • php 获取用户IP与IE信息程序

    php 获取用户IP与IE信息程序 function onlineip() { global $_SERVER; if(getenv('HTTP_CLIENT_IP')) { $onlineip = getenv('HTTP_CLIENT_IP');...2016-11-25
  • php语言实现redis的客户端

    php语言实现redis的客户端与服务端有一些区别了因为前面介绍过服务端了这里我们来介绍客户端吧,希望文章对各位有帮助。 为了更好的了解redis协议,我们用php来实现...2016-11-25
  • jQuery+jRange实现滑动选取数值范围特效

    有时我们在页面上需要选择数值范围,如购物时选取价格区间,购买主机时自主选取CPU,内存大小配置等,使用直观的滑块条直接选取想要的数值大小即可,无需手动输入数值,操作简单又方便。HTML首先载入jQuery库文件以及jRange相关...2015-03-15
  • JS实现的简洁纵向滑动菜单(滑动门)效果

    本文实例讲述了JS实现的简洁纵向滑动菜单(滑动门)效果。分享给大家供大家参考,具体如下:这是一款纵向布局的CSS+JavaScript滑动门代码,相当简洁的手法来实现,如果对颜色不满意,你可以试着自己修改CSS代码,这个滑动门将每一...2015-10-21
  • php简单用户登陆程序代码

    php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
  • jQuery+slidereveal实现的面板滑动侧边展出效果

    我们借助一款jQuery插件:slidereveal.js,可以使用它控制面板左右侧滑出与隐藏等效果,项目地址:https://github.com/nnattawat/slideReveal。如何使用首先在页面中加载jquery库文件和slidereveal.js插件。复制代码 代码如...2015-03-15
  • PHP+jQuery翻板抽奖功能实现

    翻板抽奖的实现流程:前端页面提供6个方块,用数字1-6依次表示6个不同的方块,当抽奖者点击6个方块中的某一块时,方块翻转到背面,显示抽奖中奖信息。看似简单的一个操作过程,却包含着WEB技术的很多知识面,所以本文的读者应该熟...2015-10-21
  • SQLMAP结合Meterpreter实现注入渗透返回shell

    sqlmap 是一个自动SQL 射入工具。它是可胜任执行一个广泛的数据库管理系统后端指印, 检索遥远的DBMS 数据库等,下面我们来看一个学习例子。 自己搭建一个PHP+MYSQ...2016-11-25
  • Ruby on Rails实现最基本的用户注册和登录功能的教程

    这里我们主要以has_secure_password的用户密码验证功能为中心,来讲解Ruby on Rails实现最基本的用户注册和登录功能的教程,需要的朋友可以参考下...2020-06-30
  • php根据用户语言跳转相应网页

    当来访者浏览器语言是中文就进入中文版面,国外的用户默认浏览器不是中文的就跳转英文页面。 <&#63;php $lan = substr(&#8194;$HTTP_ACCEPT_LANGUAGE,0,5); if ($lan == "zh-cn") print("<meta http-equiv='refresh' c...2015-11-08
  • php有效防止同一用户多次登录

    【问题描述】:同一用户在同一时间多次登录如果不能检测出来,是危险的。因为,你无法知道是否有其他用户在登录你的账户。如何禁止同一用户多次登录呢? 【解决方案】 (1) 每次登录,身份认证成功后,重新产生一个session_id。 s...2015-11-24
  • PHP实现今天是星期几的几种写法

    复制代码 代码如下: // 第一种写法 $da = date("w"); if( $da == "1" ){ echo "今天是星期一"; }else if( $da == "2" ){ echo "今天是星期二"; }else if( $da == "3" ){ echo "今天是星期三"; }else if( $da == "4"...2013-10-04
  • js检测用户输入密码强度

    一个用Javascript检测用户输入密码强度的效果代码,以下代码主要是从以下四个方面检测用户输入的密码的强度的,有兴趣的朋友可以自己添加或修改成自己想要的形式! 1. 如果输入的密码位数少于5位,那么就判定为弱。 2. 如果...2015-10-23
  • php ajax注册验证用户名是否存在代码

    这是注册程序是一款当用户输入完用户名是,就会自动去数据库中查询用户要注册的用户名是否己经被注册了,如果是返回提示否则提示可以注册。 conn.php文件 代...2016-11-25
  • 原生js实现fadein 和 fadeout淡入淡出效果

    js里面设置DOM节点透明度的函数属性:filter= "alpha(opacity=" + value+ ")"(兼容ie)和opacity=value/100(兼容FF和GG)。 先来看看设置透明度的兼容性代码: 复制代码 代码如下: function setOpacity(ele, opacity) { if (...2014-06-07
  • Android实现简单用户注册案例

    这篇文章主要为大家详细介绍了Android实现简单用户注册案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-05-26
  • Android中用HttpClient实现Http请求通信

    本文我们需要解决的问题是如何实现Http请求来实现通信,解决Android 2.3 版本以后无法使用Http请求问题,下面请看正文。 Android开发中使用HttpClient来开发Http程序...2016-09-20
  • 微信小程序用户授权最佳实践指南

    这篇文章主要给大家介绍了关于微信小程序用户授权最佳实践的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-08
  • mysql存储过程实现split示例

    复制代码 代码如下:call PROCEDURE_split('分享,代码,片段',',');select * from splittable;复制代码 代码如下:drop PROCEDURE if exists procedure_split;CREATE PROCEDURE `procedure_split`( inputstring varc...2014-05-31
  • 简单php cookie用户登录实例

    cookie 的用途之一是存储用户在特定网站上的密码和 id。另外,也用于存储起始页的首选项。在提供个人化查看的网站上,将要求阁下的网络浏览器利用阁下计算机硬驱上的少量...2016-11-25