`
Jummy
  • 浏览: 61268 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Ajax实现客户端验证(连接数据库检查用户名&ID是否唯一)

阅读更多

继续我的文章,这一篇本应该周末贴的。结果忙了点 ( 忙着玩了 ) ,也不是什么旨在提高 Blog 流量,要流量我找一插件随便刷个十几二十分钟不下一千。写来一则为了巩固一些知识,熟能生巧而已。二则为了一些新手们提供点建议 ( 文章只针对 Rookies 如果你丫功力深厚还望多多指教 )

   老规矩,看例子说话 ( 记得小时候总有什么看图说话,看图写作文等等类似考题,还美其名曰:发散思维 )

   Ajax 不是个什么新东西,只不过将一些原有的东西加以整合焕发第二春而已。其中比较重要或者说用的比较多还是 7 种知识中的 3 个知识点: XMLHttpRequest,readyState, 以及 JavaScript( 个人观点 )

  最大的用途一般现在就是用在客户端填写的同时进行同步验证,所谓的局部刷新。不在需要重复提交,以及防止表格数据因刷新而丢失。对用户来说无非是一大利好。当然是客户端编程始终保持着它的老习惯:不安全,以及浏览器的兼容性问题。安全性我们不做多打考虑毕竟在好的系统都会被攻破 ( 有钱买好的硬件防火墙吧 ) ,兼容性上 Ajax 分别对主流浏览器做了兼容 ( Maxthon 啊什么其他浏览器他们都是 IE 内核所以不算浏览器的一个种类。一般就 Microsoft IE FireFox 其实一般做 Soft 的两个都会装滴。 )

  简单的例子,简单言语,让你简单的理解原理, Here we go…

  先简单介绍下程序:一个输入框,输入 username 当鼠标光标离开输入框时实现用户名唯一性检查。将输入的数据与数据库中的 user 表进行比较,对已经存在的用户名返回提示“用户名已存在”,对不存在重复的用户名提示“用户名可以使用” . 完整的演示程序 ( 如果你还不怎么理解 Ajax ,那你就照着程序写,可以运行后得出结果然后你在慢慢去研究,编程么,从模仿开始 …)

<!----><!----><!---->   程序结构:两个页面 index.jsp checkUser.jsp 一个连接数据库类 Test.java( 其中包括 checkUser() 唯一性判断 ) :看具体源码吧

 

   Index.jsp( 具体源码看附件 ) :类似于编写 JavaScript 脚本语言,首先得获得 XMLHttpReuquest ,此时为了兼容不同浏览器需要分别获得

if (window.XMLHttpRequest)

          {

              xmlhttp_request = new XMLHttpRequest();// 响应 FireFox

          }

          else if (window.ActiveXObject)

          {

              xmlhttp_request = new ActiveXObject( "Microsoft.XMLHTTP" );

          }// 响应 IE

当用户鼠标光标离开输入框时,触发函数 getBackInfo().

<!---->1.  <!----> HTML 页面得到你需要的数据,可以采有 document.getElementById("") 方法。可以先判断是否为空

//2. 建立需要的 URL ,该 URL 就和在 FORM 里面的 method get 时并采用 submit 提交在地址栏里面到的一样

//3. 打开与服务器的连接,这里面有三个必要的参数,虽然文档规定只有两个,但是我个人觉得最好用三个,

//  第一个可以是 GET,POST 或者是 POST ,但常用的就是前面的两个,并且最好都用大写,因为有些浏览器如 FireFox 可能会报错,

//  第二个就是打报的 URL ,这肯定你是必须的。

//  第三个就是下面的看到的 true ,这里可以是 false true 表示同步处理,你提交后可以做其它的事情,

//  这就是 AJAX 里面的 A ,即 asynchronous; 如是 false ,那就得等到服务器的返回才能够做其它的事情。

//4. 等到服务器完成,并且确定返回执行了正确执行的提示,我们就可以做下面我们想做的事情。这些后面的事情就必须通过

//  Javascript 去完成了,因为 XMLHttpRequest 的唯一用途就是发送请求及接收服务器的响应结果。

//5. 上面都完成了后,就可以采用 send() 方法向服务器发送你需要发送的信息了,它的参数可以是任何类型,发送的数据格式必须为

         

doCentent() 函数中是对返回状态做判断,然后再显示信息(用户名是否被占用,逻辑判断放在了 Test 函数中)这里对 xmlhttp_request.readyState 简单说明一下:

//1. 一定要确定 readystate==4 的完成状态才做下面的事,否则会在建立连接即 readystate==1 的时候就开始,

    //  然后会在 readystate==2 readystate==3 readystate==4 的时候都会执行,不信你可以 alert("") 一个

    //  提示信息试试。

    //2. 服务器通知完成了,并且还要保证是正确完成的,得到的是我们需要的结果才能够继续,这里常用响应码有:

    //  200: 成功执行

    //  401: 未授权

    //  403: 禁止

    //  404: 没有找到文件

checkUser.jsp:

   这是用来显示判断信息的,在 index.jsp 中通过添加:< td >< dd id = "disCheckResult" ></ dd >/ td >

然后通过 :         document.getElementById( "disCheckResult" ).innerHTML=xmlhttp_request.responseText 得到。关于 ineerHTML 不多提了可以自行了解。

  你可以通过添加 alert(xmlhttp_request.responseText) 实验一下 responseText 得到的是一张 HTML 页面。在整个 checkUser.jsp 我只是通过引用 Test 实例来进行验证,逻辑全部写在了 Test 类中。

Test.java

  这是数据库连接的简单操作,然后通过 select 语句判断是否存在页面输入用户名,存在返回 true 否则为 true 。简单 ….

  整个判断到此全部结束,需要的 Rookies 可以下载了附件 运行了看看。可以运行,数据库为 oracle 9i( 需加载驱动当然你可以换成 mysql 数据表简单 两个字段而已 自己看着该下 Test 里的数据源和表名吧 )

  为了大家共同的进步。。。。。。。。更多文章请访问http://jummy.iteye.com/

分享到:
评论

相关推荐

    Ajax实现客户端验证(连接数据库检查用户名&ID是否唯一)终版.pdf

    Ajax 实现客户端验证(连接数据库检查用户名 & ID 是否唯一)终版 Ajax 是一种在客户端验证的技术,它可以实现在客户端对用户名和 ID 的唯一性进行验证,而不需要提交整个表单。这种技术可以大大提高用户体验,减少...

    ajax验证用户名是否存在

    "Ajax验证用户名是否存在"是一个常见的功能,它使得用户在输入用户名时可以即时得到反馈,无需频繁地提交表单来检查用户名是否已被占用。这个功能通过利用Ajax(异步JavaScript和XML)技术实现,极大地提升了交互性...

    ajax_servlet检查用户名是否可用

    3. **Servlet处理**:在服务器端,`ajax_servlet`接收到请求后,从请求参数中获取用户名,然后查询数据库(例如,使用JDBC连接MySQL)检查用户名是否存在: ```java @WebServlet("/ajax_servlet") public class ...

    ajax+php验证用户名是否注册

    在Web开发中,确保用户名的独特性是至关重要的,这通常涉及到客户端与服务器之间的实时交互,以便在用户输入时检查用户名是否已经被其他人注册。本教程将详细介绍如何使用Ajax和PHP技术来实现这一功能,这对于初学者...

    Ajax案例(验证用户名,登录,获取服务器时间)

    服务器端的脚本查询数据库,判断用户名是否已被占用,然后返回结果。客户端接收到响应后,根据结果提示用户,这样用户可以即时得到反馈,无需等待完整的表单提交。 案例三:通过Ajax进行登录 传统的登录方式是用户...

    JS 客户端验证JS 客户端验证JS 客户端验证JS 客户端验证JS 客户端验证

    JavaScript(JS)客户端验证是Web开发中的重要环节,它主要用于在用户提交数据前对输入进行检查,确保数据的完整性和正确性,减少服务器端的压力,提高用户体验。客户端验证通过JavaScript脚本实现,可以在用户填写...

    javawe实现登录注册验证界面连接MYSQL数据库

    在这个特定的项目中,"javawe实现登录注册验证界面连接MYSQL数据库" 涉及到几个关键的技术点,包括用户界面设计、后端逻辑处理以及数据库交互。 首先,登录注册验证界面是用户与应用交互的第一步。这通常包括输入...

    基于ajax+php+mysql数据库实现用户注册登录

    7. **无刷新验证**:Ajax的最大优点就是能够实现页面无刷新验证,用户在填写表单时,实时检查输入内容的正确性,如用户名是否已存在,密码是否符合规定等,提高了用户体验。 8. **前端交互**:前端界面通常会使用...

    Asp.Net+Ajax 用户名检测.txt

    在服务器端,我们采用Asp.Net处理来自客户端的请求,并执行数据库查询操作来验证用户名是否存在。 1. **代码逻辑**: - 定义一个名为`checkusername`的Asp.Net页面,该页面继承自`System.Web.UI.Page`。 - 在`...

    异步ajax验证用户名(防止重名)

    为了避免用户名重复的问题,开发人员经常使用Ajax技术来实现实时的用户名验证功能。这种方式不仅提高了用户体验,还增强了系统的安全性。 #### 技术原理 Ajax(Asynchronous JavaScript and XML)是一种在无需重新...

    jsp+ajax实现无刷新(鼠标离开文本框即验证用户名)实现思路.docx

    本文将详细介绍如何使用`JSP`和`Ajax`来实现在用户离开文本框时无刷新地验证用户名是否可用。 首先,我们需要创建一个输入页面,例如`input.jsp`,这是用户与应用交互的地方。在这个页面上,我们需要一个文本框让...

    html+Servlet+ajax实现登录修改

    在登录和修改场景下,Servlet接收HTML表单提交的数据,进行验证(如检查用户名和密码是否有效),然后可能与数据库进行交互,比如通过MySQL数据库验证用户凭证或更新用户信息。 MySQL是一个流行的开源关系型数据库...

    asp ajax 判断用户名是否存在

    总结起来,通过ASP和AJAX的结合,我们可以创建一个实时验证用户名是否存在的功能,提供给用户即时反馈,提高用户体验。这种方法减少了不必要的页面刷新,使得交互更加流畅。在实现过程中,我们还需要考虑数据库操作...

    Ajax+Jsp+mysql+servlet实现验证注册以及省市联动

    在本项目中,Ajax将用于用户输入验证,如检查用户名是否已存在,避免用户反复提交表单。 2. **JSP(JavaServer Pages)**:JSP是Java的一种动态网页技术,它允许开发者在HTML代码中嵌入Java代码。在服务器端执行...

    ASP连接数据库等功能

    综上所述,ASP连接数据库是实现动态网站功能的基础,而在线投票、在线客服和登录功能则是在此基础上构建用户交互的关键环节。通过ASP,开发者可以创建出丰富的Web应用程序,满足各种业务需求。然而,为了确保应用...

    php与jquery校验用户名

    当用户提交表单时,我们可以使用PHP来检查用户名是否已经存在于数据库中,避免用户名冲突。以下是一个简单的PHP示例: ```php // 假设已经有连接到数据库的代码 $conn = mysqli_connect('localhost', 'username', ...

    Java项目 JSP实现在线订餐系统 数据库系统

    例如,根据用户ID查询其订单历史,或者验证订单信息并更新数据库。 4. 数据交互:后端代码与数据库进行交互,可能涉及到CRUD(创建、读取、更新、删除)操作。例如,新增订单信息到订单表,或者根据订单ID从订单详情...

    C# 自动检测用户名是否存在

    总结来说,实现"C# 自动检测用户名是否存在"的功能,涉及到了ASP.NET的页面生命周期、数据库操作、AJAX通信以及前端交互等多个方面。这个过程包括了后端C#代码处理HTTP请求,与数据库交互查询用户名,以及前端...

    Ajax注册验证[借鉴].pdf

    在实际应用中,你需要在此处编写代码,比如查询数据库以检查用户名是否已被占用。 - **返回响应**:Servlet通过`PrintWriter`对象(第4行导入)来向客户端发送响应。在`doPost()`方法中,你需要生成一个适当的响应...

    ajax验证用户名和密码的实例代码

    在本文中,我们将通过一个实例来了解如何使用AJAX(Asynchronous JavaScript and XML)技术来实现用户登录时的异步验证过程。AJAX允许在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容。这种技术...

Global site tag (gtag.js) - Google Analytics