登录注册验证(JavaScript)-PHP教学.ppt_第1页
登录注册验证(JavaScript)-PHP教学.ppt_第2页
登录注册验证(JavaScript)-PHP教学.ppt_第3页
登录注册验证(JavaScript)-PHP教学.ppt_第4页
登录注册验证(JavaScript)-PHP教学.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PHP+MySQL 动态网页技术教程,主编:王彦辉,5.1 项目导引:用户注册验证,大家在网站登录注册时是不是有这样的体会? 如果有必填项而没有填写,网站会提示我们此项目不能为空; 如果设置密码的长度不够,网站会提示我们密码长度不够; 如果注册密码与确认密码不一致,网站会提示我们密码不一致; 如果信息格式输入不正确(如邮箱地址、手机号码),网站会提示我们格式不正确。 那么这些功能是如何实现的呢? 通过JavaScript客户端脚本可以对用户输入的数据进行检查,5.2 项目分析,JavaScript脚本语言是一种面向浏览器的网页脚本编程语言,JavaScript脚本在客户端浏览器执行。 用户注册过程中的主要验证包括: 用户名、密码和邮箱地址等内容的非空验证; 密码长度为6-20个字符,且是英文字母、数字及符号的组合; 注册密码与确认密码是否一致; 电子邮箱格式是否正确。,5.3 技术准备,5.3.1 JavaScript基础 JavaScript语句的基本语法规则与PHP语法类似,每条语句以“;”为结束符,注释语句有单行注释(/)和多行注释(/*/)两种,变量、函数名以及关键词都是区分大小写的。 1在网页中加入JavaScript (1)直接嵌入HTML文档 (2)引用方式 例5-1,5.3 技术准备,5.3.1 JavaScript基础 2数据类型,5.3 技术准备,5.3.1 JavaScript基础 3变量 变量名是一种标识符,由字母、数字、下划线(_)或美元符号($)构成的字符序列组成,但首字符不能是数字,也不能包含空格、+、-等特殊字符。 JavaScript中通过var关键字来声明变量 var 变量名=初值,变量名=初值, 例5-2,5.3 技术准备,5.3.1 JavaScript基础 4运算符与表达式 JavaScript中运算符与表达式与php基本相同 JavaScript中字符串连接运算符与php不同,JavaScript中把“+”或“+=”作为字符串连接运算符。 例5-3,5.3 技术准备,5.3.2 JavaScript流程语句 1条件语句(if.else) if () else 例5-4,5.3 技术准备,5.3.2 JavaScript流程语句 2循环语句 (1)while语句 其语法格式如下所示: while () (2)do.while语句: 其语法格式如下所示: do while (),5.3 技术准备,5.3.2 JavaScript流程语句 2循环语句 (3)for语句: 其语法格式如下所示: for(初值表达式,循环判定表达式,更新表达式) 例5-5、例5-6 、例5-7,5.3 技术准备,5.3.3浏览器对象 JavaScript是一种基于对象(Object)的编程语言,可以使用内置对象、浏览器对象和自定义对象。 JavaScript语言提供的内置对象主要包括:数学对象(Math)、日期对象(Date)、字符串对象(String)和数组对象(Array)等 浏览器对象(BOM)用于访问与操纵浏览器窗口 窗口对象(window) 文档对象(document) 地址对象(location) 浏览器对象(navigator) 屏幕对象(screen) 历史对象(history)。,5.3 技术准备,5.3.3浏览器对象 1window对象 window对象表示整个浏览器窗口,通过对象的方法我们可以定制、打开和关闭浏览器窗口。其常用方法如表所示。,5.3 技术准备,5.3.3浏览器对象 1window对象 (1)使用对话框 使用window对象的alert()、confirm()和prompt()方法,可以弹出警示、确认和提示对话框。 例5-8、例5-9 (2)打开和关闭窗口 使用window对象的open()、close()方法可以打开、关闭窗口。 例5-10 (3)使用定时器 使用window对象的setInterval()方法,可以实现让一段程序每隔一段时间就执行一次的定时机制。 例5-11,5.3 技术准备,5.3.3浏览器对象 2Document 对象 Document对象表示在浏览器窗口中显示的页面文档。除了提供文档整体信息的属性外,Document对象还有很多的重要属性,这些属性提供文档内容信息。如,forms集合属性存放的Form对象是文档中的所有表单,images集合属性和links集合属性存放的是文档中的所有图像和超链接对象。 (1)表单的访问 如下面的HTML页面: 用户: 引用该文档中的表单可以使用document.forms“login“或document.login。,5.3 技术准备,5.3.3浏览器对象 2Document 对象 (2)表单元素的访问 设置了一个表单元素的name属性,就创建了一个引用该元素的Form对象的新属性,这个属性的名字就是name属性的值。通过此属性能够从表单中读取用户输入的数据。 若访问上例中的用户元素,则需为用户元素添加name属性,如,则访问用户元素代码可写为: document.login.username 例5-12、例5-13,5.3 技术准备,5.3.3浏览器对象 3location对象 location对象的主要作用是分析和设置页面的URL地址。 通过设置location.href属性可以跳转到新的页面,如:location.href=““。 例5-14 4history对象 history 对象可以用来访问浏览器窗口已浏览过的历史页面。 例5-15,5.3 技术准备,5.3.4 JavaScript事件 JavaScript是基于对象的语言。而事件编程是JavaScript中最吸引人的地方,因为它提供了一个平台,让用户不仅能够浏览页面中的内容,而且还可以和页面元素进行交互。 1事件的基本概念 通常鼠标或热键的动作我们称之为事件(event),而由鼠标或热键引发的一连串程序的动作,称之为事件驱动(event driver)。而对事件进行处理的程序或函数,我们称之为事件处理程序。 事件绑定:是指将一个函数与某个 HTML 元素的事件属性关联起来,使得当相应事件发生时就会触发该函数的执行。,5.3 技术准备,5.3.4 JavaScript事件 2静态绑定事件 是指将处理事件的程序代码直接指定为 HTML 元素的事件属性值。语法格式为 ,如: 问侯先生 函数调用形式:如果触发事件时要执行的语句比较多,则可以将代码放到函数中,然后在事件属性中写入函数调用的语句,如: 问侯小姐 例5-16,5.3 技术准备,5.3.4 JavaScript事件 3事件的类型 (1)鼠标事件,5.3 技术准备,5.3.4 JavaScript事件 3事件的类型 (2)表单事件 例5-17、例5-18,5.3 技术准备,5.3.5正则表达式 1正则表达式介绍 正则表达式(regular expression)描述了一种字符串匹配的模式。元字符就是指那些在正则表达式中具有特殊含义的专用字符,可以用来指定各种匹配关系。 在程序语言中引入正则表达式,可以测试字符串是否匹配某个模式,从而实现数据格式的有效性验证。例如,对用户在Web表单中输入的电子邮件地址格式进行确认(必须有和.字符),这称为数据验证。,5.3 技术准备,5.3.5正则表达式 2正则表达式的语法 3 RegExp对象 JavaScript提供了一个RegExp对象来完成有关正则表达式的操作和功能,每一条正则表达式模式对应一个RegExp实例。JavaScript使用RegExp对象封装与正则表达式相关的功能和操作,每一个该对象的实例对应着一条正则表达式。和其他对象一样,在使用之前必须取得其引用或新建一个对象实例。 例5-19 、例5-20,5.4 项目实施,在用户注册页面中,对用户名、密码和邮箱地址的必填验证就是检查输入表单元素的值是否为空;对于登录密码与确认密码一致性验证就是判断两个输入表单元素的值是否相等;而用户注册页面数据验证的难点在于对用户名、密码和邮箱地址的格式进行合法性验证,通常这种对复杂格式数据的合法性验证通常借助正则表达式实现。我们对用户注册过程中数据的合法性验证遵循由易到难,循序渐进的过程进行。即:第一步,实现必填字段的验证;第二步,实现复杂格式数据的验证。,5.4 项目实施,1制作注册页面 2非空性验证程序 3复杂格式数据的验证 用户注册时除了非空验证之外,通常的验证还包括: 注册帐号只能以字母开头,长度在6-18之间,只能包含字符、数字和下划线; 登录密码只能是6-20位英文字母或者数字建议采用易记的英文数字组合; 邮箱地址格式是否正确。 登录密码与确认密码是否一致;,5.5 技术拓展,5.5.1数组对象 简单地说,数组就是由名称相同的多个值构成的一个集合。集合中的每个值都是这个数组的元素。数组中数组元素的个数称为数组长度。 1数组对象的创建与使用 数组对象的创建有三种格式: 格式1:数组对象名称=new Array(元素个数) 格式2:数组对象名称=new Array(元素1,元素2,.) 格式3:数组对象名称=元素1,元素2,. 例5-25、例5-26,5.5 技术拓展,5.5.2 String对象 在JavaScript中,使用String对象来处理字符串,它是JavaScript最重要的核心对象之一,也是在编程过程中使用最多的对象。 1String对象的创建 String对象的创建有两种方式: 方式一:new 运算符 newstring = “This is a new string.“ 方式二:直接赋值字符串 newstring =new String(“This is a new string.“) 2字符串对象的常用属性 3字符串对象的常用方法 例5-27,5.5 技术拓展,5.5.3 Math对象 Math对象主要是执行数学计算任务,Math对象的属性是数学中常用的常量,Math对象的方法是数学中常用的函数。 在JavaScript程序中,关键字Math是对一个已创建好的Math对象的引用,因此使用Math对象时不必先使用new运算符创建它。也就是,在调用Math对象的属性和方法时,直接写成“Math.属性”和“Math.方法”即可。 例5-28,5.5 技术拓展,5.5.4 Date对象 Date对象主要提供获取和设置日期与时间的方法。 1Date对象的创建 语法格式:var 变量名=new Date(参数) 2Date对象获取时间的常用方法 3Date对象设置时间的常用方法 例5-29,5.6 本章小结,本章主要介绍了JavaScript事件驱动编程的方法,主要包括向 html 页面添加 JavaScript、JavaScript脚本的基本语法、JavaScript常用对象的用法、如何创建对事件的响应、正则表达式、egExp对象的有关知识等。通过本章学习,读者应当对JavaScript中的事件驱动、数据验证部分有一个比较全面的了解,并初步掌握使用事件驱动机制与正则表达式相关知识编写表单数据验证程序。,5.7 强化练习,一、选择题 1 下列方法一定会被调用的是( ) Af1( ) Bf2( ) Cg1( ) Dg2( ) 2在JavaScript中,如果不指明对象直接调用某个方法,则该方法默认属于哪个对象( ) Adocument Bwindow Cform Dlocation 3下列正则表达式中描述有误的是( ) A :匹配范围内的任意一个字符 Bn:匹配n次 Cw:匹配任意字母、数字、下划线、符号 Dd:匹配0-9之间的任意数字,5.7 强化练习,一、选择题 1 下列方法一定会被调用的是( ) Af1( ) Bf2( ) Cg1( ) Dg2( ) 2在JavaScript中,如果不指明对象直接调用某个方法,则该方法默认属于哪个对象( ) Adocument Bwindow Cform Dlocation 3下列正则表达式中描述有误的是( ) A :匹配范围内的任意一个字符 Bn:匹配n次 Cw:匹配任意字母、数字、下划线、符号 Dd:匹配0-9之间的任意数字,5.7 强化练习,一、选择题 4一年有12个月。现要求月份的正确格式为:1,2,.9,10,11,12。以下哪个正则表达式可以符合要求?( ) A/1-12$/ B/1-9d?$/ C/(1-910-2)$/ D/d111210$/ 5下列与表达式/d3,5$/相符的是( ) A a345 B 345a Ca D345 6下列选项中,哪一条语句可以打开一个无状态栏的页面?( ) Awindow.open(“myPage.html”) Bwindow.open(“myPage.html”,”mywindow”,”toolbars=0,scrollbars=0,location=0, location=0,status=1,menubar=0,resizable=0,width=320,height=380”) Cwindow.open(“myPage.html”,”mywi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论