




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章表单处理和PHP函数库64-1第4章表单处理和PHP函数库本章内容HTML表单与PHP处理程序 PHP函数 PHP的调试与解决方法 本章的主要案例请点击参考相关课件第4章表单处理和PHP函数库64-2教学目标理解HTML表单是静态网页和动态网页的结合点,HTML表单标记的主要成员的构成和数据属性,了解这些数据成分在向PHP程序变量转换过程中所产生的对应关系和变量形态了解PHP函数库的实质是一种通过CGI接口执行的网络应用指令集,掌握常用函数的一般性应用第4章表单处理和PHP函数库64-3表单概述在Web上浏览时可以看到各式各样的输入表单(Form)有些只有一个文本输入框(如G主页)和提交(submit)按钮有些则比较复杂(如电子邮箱的注册表单),除了文本输入框之外,还有单选按钮、复选框、下拉选单等虽然复杂程度不同,但表单的组成元素却是相同的第4章表单处理和PHP函数库64-4表单与CGIWeb的交互性是从使用HTML设计的表单将数据发送到Web服务器开始的,但是HTML不是程序设计语言,需要CGI作为一种中介CGI的功能包括审核用户从表单或HTTP请求的URL地址栏发来的数据、将数据存入数据库、或依据用户请求从数据库取出数据并通过动态网页发给浏览器等一系列工作进行处理第4章表单处理和PHP函数库64-5CGI的工作过程CGI动态网页机制包括两个部分:首先由用户从HTML网页向服务器发送输入数据用户数据被CGI程序处理并产生新的HTML网页第4章表单处理和PHP函数库64-6浏览器客户端发送数据两种方式可在浏览器的URL地址栏输入网页的名称和相关参数,而这种用户数据的输入方式显然是很不方便的。尤其不适合普通浏览器用户的使用。在HTML应用中,一般浏览器用户是通过表单完成数据输入与发送
第4章表单处理和PHP函数库64-7表单与PHP程序(举例)1-1第4章表单处理和PHP函数库64-8表单与PHP程序(举例)1-2第4章表单处理和PHP函数库64-9表单与PHP程序:1-1表单文件一个简单的HTML表单<HTML> <!--文件名:form.htm--><BODYBgColor=#FFFFFF><FORMAction="echo.php"Method="GET">
姓名:<INPUTType="Text"Name="Name"Size=20><P>
兴趣:<INPUTType="Text"Name="Love"Size=20><P><INPUTType=SubmitValue="传送"></FORM></BODY></HTML>第4章表单处理和PHP函数库64-10表单与PHP程序:1-1PHP程序处理表单数据的PHP程序<HTML> <!--文件名:echo.php--><HEAD><TITLE>Welcome!</TITLE></HEAD><BODYBgColor="#FFFFFF"><Center><H2><?echo"$Name欢迎您,您的兴趣爱好是$Love";?>!<HR></H2></Center></BODY></HTML>第4章表单处理和PHP函数库64-11HTML表单的要点含有表单的文件往往是一个“纯”HTML文件,比如上例的表单文档就是一个有“.htm”后缀的文件HTML表单是一个容器元素,即有开始<FORM>和结束</FORM>标记,在<FORM>中至少包含两个属性:“ACTION”和“METHOD”第4章表单处理和PHP函数库64-12表单的ACTION属性
<FORMACTION=URL>ACTION属性的值表示该表单的处理方法,也就是表单提交后需要执行的CGI程序名(包括路径)由于本教程的CGI程序用PHP编写,因此,一般ACTION属性中填写的就是对应的PHP程序或动态网页的名称。
<FORMAction="echo.php"Method="GET">
表示在用户提交表单后,由Web服务器上的echo.php程序来处理用户所提交的数据(该文档与form.htm在同一目录中)第4章表单处理和PHP函数库64-13表单的METHOD属性<FORMACTION=URLMETHOD="POST|GET|…">METHOD说明本表单向服务器发送输入信息时的使用方式一般有两种选择:POST和GET,默认的方式是GET第4章表单处理和PHP函数库64-14表单的METHOD属性(续)使用GET时,HTTP的客户端将表单上用户的输入信息作为字符串附加在ACTION所设定的URL后面,中间用“?”和“&”隔开,然后把整个字符串传送到服务器端PHP程序会用$QUERY_STRING内置变量获取表单所传入的信息但由于系统内置变量的长度限制了输入字符串的长度,因此,用GET方式所能传送的数据长度受到限制(一般为2k字节)第4章表单处理和PHP函数库64-15表单的METHOD属性(续)而使用POST方法时,HTTP会将表单的输入信息进行包装后发送,而不是附加在Action所设定的URL之后发送,CGI程序中可以用$CONTENT_LENGTH内置变量来确定传入数据的长度,并通过标准输入(stdin)将内容读出使用POST方法,用户数据的长度没有限制第4章表单处理和PHP函数库64-16Form元素的用法在<FORM>与</FORM>之间,可以使用除<FORM>以外的任何HTML的<BODY>容器元素中可以使用的标记,这使FORM变得非常灵活。要让浏览者能通过HTML网页输入信息,光一个<FORM>标记是不够的,还需要<INPUT>、<SELECT>、<TEXTAREA>这三个特殊标记的配合第4章表单处理和PHP函数库64-17Form元素的用法在HTML中,表单一般有如下结构:<FORMACTION="…"METHOD="…">…<INPUT>……<SELECT>…</SELECT>…<TEXTAREA>…</TEXTAREA>…</FORM>第4章表单处理和PHP函数库64-18表单中常用元素与PHP的关联
表单是HTML文档与PHP程序的重要数据输入接口(实际上是所有动态文档的)在表单中所有具体数据的输入和提交都离不开三个重要的表单元素,它们分别是,<INPUT>、<SELECT>和<TEXTAREA>
PHP(和其他CGI程序)的重要任务是将数据从HTML网页中解析出来,并处理成本身程序的变量PHP处理此项任务简单而快捷第4章表单处理和PHP函数库64-19INPUT元素INPUT是一个空元素,其格式如下:
<INPUTTYPE="…"NAME="…"…>…INPUT是输入单行文本时经常使用的元素。INPUT中常用的属性有六个:TYPE、NAME、SIZE、VALUE、MAXLENGTH、CHECKEDTYPE表示数据输入类型,也决定了INPUT元素的表现形式。其它五个属性因TYPE的值不同而不同第4章表单处理和PHP函数库64-20INPUT元素---TEXT类型说明用于文本字符输入的TEXT类型这是INPUT元素的默认类型如果输入类型设定为TEXT,INPUT的其它五种属性的含义分别是:NAME:将输入值传给CGI时与输入值相对应的名称SIZE:输入窗口的长度。默认值为20,以字节为单位VALUE:预先信息MAXLENGTH:最多输入的字节数。CHECKED:TEXT类型不能使用此属性
第4章表单处理和PHP函数库64-21INPUT元素---TEXT类型(样码)INPUT元素的属性示例<HTML> <!--文件名:form1.htm--><BODYBgColor=#FFFFFF><FORMAction="echo.php"Method="GET">姓名:<INPUTType="Text"Name="Name"Size=20><P>兴趣:<INPUTType="Text"Name="Love"SIZE=20MAXLENGTH=50VALUE="Nothing"><P><INPUTType=SubmitValue="传送"></FORM></BODY></HTML>第4章表单处理和PHP函数库64-22INPUT元素---TEXT类型(表单代码图例)第4章表单处理和PHP函数库64-23INPUT元素---TEXT类型(执行效果图例)第4章表单处理和PHP函数库64-24INPUT元素---PASSWORD类型与TEXT类型不同之处是用户输入时不显示输入内容,而是用星号“*”回显PASSWORD类型的INPUT元素的其它五种属性与TEXT类型相同使用“PASSWORD”类型时,口令字符的输入会被掩饰,可以起到一定的安全作用。但其在网络上仍以明码形式传输,容易为他人截获,必须加以注意第4章表单处理和PHP函数库64-25INPUT元素---单选的RADIO类型说明这种输入类型提供表单上单选按钮,用户可以在网页上列出一组(两个或两个以上)单选按钮选项,每个选项前有一个圆形按钮用户只能在这一组选项中选其中一项。由于选择是唯一的,同组<INPUTTYPE=RADIO…>元素的“NAME”属性必须取相同的值,但相应的“VALUE”属性值各不相同第4章表单处理和PHP函数库64-26INPUT元素---单选的RADIO类型参数<INPUT>的类型为“RADIO”时,其它五种属性的含义分别是:NAME:输入值传给CGI时的对应名称SIZE: RADIO不用此属性VALUE: 每个选项对应的值MAXLENGH: RADIO不用此属性CHECKED: 预选项第4章表单处理和PHP函数库64-27<HTML><!--文件名:form2.htm--><HEAD><TITLE>单选按钮例程</TITLE></HEAD><BODYBGCOLOR=#FFFFFF><H2ALIGN=CENTER>单选钮应用示例<HR></H2><FORMAction=echo2.phpMethod=GET>性别:<INPUTType=RadioName=sexValue="male"Checked>男<INPUTType=RadioName=sexValue="female">女<P>血型:<INPUTType=RadioName=bloodValue="A"Checked>A
<INPUTType=RadioName=bloodValue="B">B
<INPUTType=RadioName=bloodValue="AB">AB
<INPUTType=RadioName=bloodValue="O">O<P><INPUTType=SubmitValue="送出"></FORM></BODY>INPUT元素---单选的RADIO类型源码第4章表单处理和PHP函数库64-28RADIO类型表单项(图例)第4章表单处理和PHP函数库64-29RADIO表单项执行过程(图例)第4章表单处理和PHP函数库64-30<!--文件名:echo2.php--><?if($sex=="male")$sex="男";else$sex="女";?><HTML><HEAD><TITLE>单选按钮例程</TITLE></HEAD><BODYBGCOLOR=#FFFFFF><H2ALIGN=CENTER>单选按钮数据输送示例<HR></H2>
<CENTER>您是<?echo$sex;?>性,血型<?echo$blood;?>型。
</CENTER></BODY></HTML>处理Radio按钮的PHP程序案例第4章表单处理和PHP函数库64-31INPUT元素---CHECKBOX类型说明这种类型提供复选按钮进行多项选择设计时可以在网页上布置一个或一个以上复选按钮选项,每个选项的前面有一个方框,用鼠标点中方框,该选项即被选中用户可以根据需要选择多个复选项,当然也有可能一项也不选由于每一项都可能被选中,因此,在同属一组的每个<INPUTTYPE="CHECKBOX"…>标记中,各自的NAME属性值必须是唯一的第4章表单处理和PHP函数库64-32INPUT元素---CHECKBOX类型参数当INPUT元素为“CHECKBOX”时,其它五种属性的含义分别是:NAME:将输入值传给CGI时相对应的名称SIZE: CHECKBOX不用此属性VALUE: 每个选项对应的值MAXLENGTH:CHECKBOX不用此属性CHECKED:预选项第4章表单处理和PHP函数库64-33INPUT元素---CHECKBOX执行过程(图例)第4章表单处理和PHP函数库64-34复选按钮表单源码<HTML><HEAD><TITLE>复选按钮例程</TITLE></HEAD><BODYBGCOLOR=#FFFFFF><H2ALIGN=CENTER>复选钮应用示例<HR></H2><FORMACTION="echo3.php"METHOD="GET"><h3>请选择您擅长的一种或几种编程设计语言:</h3><p><INPUTTYPE="checkbox"NAME="choose[]"VALUE="C++">C++ <INPUTTYPE="checkbox"NAME="choose[]"VALUE="PHP"CHECKED>PHP <INPUTTYPE="checkbox"NAME="choose[]"VALUE="Shell">Shell  <INPUTTYPE="checkbox"NAME="choose[]"VALUE="VB"CHECKED>VBscript<P><INPUTType=SubmitValue="传送"></FORM></BODY></HTML>第4章表单处理和PHP函数库64-35复选按钮数据传送及处理PHP代码<!--文件名:echo3.php--><HTML><BODYBGCOLOR=#FFFFFF><H2ALIGN=CENTER>复选框数据传送效果显示<HR></H2>
<?if(count($choose)==0)echo"您没有选择您所擅长的语言!";else{echo"您选择的语言是<UL>";for($I=0;$I<count($choose);$I++){echo"<LI>".($choose[$I]);}echo"</UL>";}?></BODY></HTML>第4章表单处理和PHP函数库64-36INPUT元素---SUBIMT类型(提交按钮)这种INPUT元素在表单网页上产生一个提交按钮。单击该按钮,用户输入的信息即被传送给服务器。一般表单中提交按钮是必不可少的。SUBMIT类型的INPUT元素,须设置VALUE以说明按钮的用途,如VALUE="传送"
。如果不设VALUE的属性值,在中文IE中提交按钮上会自动出现“提交查询内容”的字样第4章表单处理和PHP函数库64-37INPUT元素---RESET类型(复位按钮)这种类型让浏览器产生一个重置按钮。单击该按钮,用户在表单中已输入的信息被全部清除,以便用户重新输入。与SUBMIT类型一样,RESET类型也只有VALUE属性。如果不指定VALUE属性,在中文IE中,按钮上会出现"重置"字样第4章表单处理和PHP函数库64-38INPUT元素---HIDDEN类型这种属性将INPUT元素的区域和其中所携带的信息隐藏起来,信息并不显示在屏幕上那么,定义HIDDN类型这样一个表单元素的作用是什么?第4章表单处理和PHP函数库64-39INPUT元素-HIDDEN类型(应用场景)假设我们创建了一个简单的表单form1form1提交后,PHP程序根据form1提供的信息创建了第二个表单form2,并将form2发送给用户用户提交form2,而处理form2的PHP程序同时需要form1和form2提交的信息来做出应答由于HTTP协议的特点,浏览器和服务器之间只能用请求-应答的方式通讯、它们彼此之间没有持久的连接,那么如何才能把form1中的信息传递到处理form2的PHP程序中去呢?第4章表单处理和PHP函数库64-40用户可以考虑采用以下两种方法:把form1中的信息写到服务器中的某个临时文件中,当需要时,处理form2的PHP程序可以读取临时文件中的数据,等处理完后,即可删除临时文件,以免浪费服务器的磁盘空间处理form1的PHP程序在创建form2的同时把form1中的信息加到form2中。当然,这些信息不必让用户再次看到,所以应当把它们放在HIDDEN类型的INPUT区域中INPUT元素-HIDDEN类型(应用场景)第4章表单处理和PHP函数库64-41表单---SELECT元素
在FORM中使用SELECT元素可在浏览器中显示一个下拉列表或带有滚动条的列表框,用户可在列表中选择一或多个选项。这一点和INPUT元素中的单选按钮和多选按钮作用相似,只是形式上有所不同。SELECT有开始和结束标记,全部选项必须包含在开始<SELECT>和结束</SELECT>标记中第4章表单处理和PHP函数库64-42SELECT元素格式<SELECT…><OPTION>…<OPTION>……</SELECT>
在<SELECT>元素的开始和结束标记之间,有几个OPTION元素,就会在表单的下拉列表中出现几个选项。选项的具体内容应该写在每个OPTlON之后。OPTION有SELECTED属性,表示该选项已经预选。若在<SELECT>元素中设定MULTlPLE属性,则可以有多个OPTION元素带有SELECTED属性第4章表单处理和PHP函数库64-43SELECT元素属性SELECT元素带有NAME、SIZE和MULTIPLE三个属性:NAME属性和INPUT中的同样,当FORM被提交时,作为<SELECT>所携数据的名称SIZE属性控制同时显示在列表中的选项条数,如果没有指定SIZE属性,则默认值为1,即平时只显示一条选项;只有用鼠标单击栏框右边向下的箭头后才出现下拉列表的全部选项MULTIPLE属性允许用户一次选中多个选项。如果不指定MULTIPLE属性,则一次只能选一项第4章表单处理和PHP函数库64-44表单中的SELECT元素(图例)第4章表单处理和PHP函数库64-45<HTML><HEAD></TITLE>SELECT元素的用法</TITLE></HEAD><BODY><FORMACTION="echo4.php"METHOD="GET"><P>请选择您最擅长编程设计语言:<SELECTNAME="choose_lang"><OPTION>C++<OPTIONSELECTED>PHP<OPTION>Shell<OPTION>VBScript</SELECT></FORM></BODY></HTML>表单中的SELECT元素(源码)第4章表单处理和PHP函数库64-46SELECT元素的PHP程序处理在使用PHP对单选的<SELECT>元素属性参数进行处理时与其处理单选按钮传送的数据类似,多选的<SELECT>元素数据处理与复选按钮类似第4章表单处理和PHP函数库64-47表单:TEXTAREA元素载FORM中使用该元素,浏览器窗口中便会出现一个可以输入多行文字的输入框,用户即可在该输入框中留言TEXTAREA元素有开始和结束标记,使用时类似于TEXT类型的INPUT框,区别仅在于INPUT只能输入单行文本,而TEXTAREA为用户提供了输入多行文本的途径第4章表单处理和PHP函数库64-48TEXTAREA元素的属性TEXTAREA元素有三个属性:NAME、ROWS和COLS。NAME:提交FORM时PHP程序需要的输入信息名称ROWS:输入窗口的行数COLS:输入窗口的列数第4章表单处理和PHP函数库64-49TEXTAREA元素表单示例<!--文件名:form5.htm--><HTML><HEAD><TITLE>TEXTAREA元素的用法</TITLE></HEAD><BODY><FORMACTION="echo5.php"METHOD="POST"><P>如果您有什么建议,敬请留言:<P>
<TEXTAREANAME="comment"ROWS=3COLS=50></TEXTAREA><P><INPUTType=SubmitValue="传送"></FORM></BODY></HTML>第4章表单处理和PHP函数库64-50TEXTAREA与FORM的METHOD由于客户留言的字数往往难以预料,所以,使用“Method=POST”要稳妥一些。在使用PHP对<TEXTAREA>元素属性参数进行处理时其处理方法与文本类型的<INPUT>元素类似第4章表单处理和PHP函数库64-51TEXTAREA元素表单(图例)第4章表单处理和PHP函数库64-52PHP程序调试由于PHP程序灵活多变,因此在编制过程中很容易出错通常,对于一个PHP程序来说,很少有一次录入就能完全正确的运行,一般都会出现错误,需要进行修改NuspherePHPed和DW8支持PHP程序调试第4章表单处理和PHP函数库64-53PHP函数概述PHP函数库是一种通过CGI接口执行的网络应用指令集CGI程序实际上与Shell程序类似,而PHP强大的功能很大一部分源于它丰富的函数库在PHP4中,这些函数可以分为100余类,共计一千多个,而且还在不断的扩展之中用户可以把PHP函数看成动态网页的重要构件,只要使用得当,使用函数进行程序设计可以收到事半功倍的效果第4章表单处理和PHP函数库64-54PHP函数分类一(电子手册参考)第4章表单处理和PHP函数库64-55PHP函数分类二第4章表单处理和PHP函数库64-56常用PHP公共、数据库、环境函数普通程序设计语言共有的函数数学/数组函数字符串处理函数时间日期函数文件函数数据库专用函数(Informix、MySQL、Oracle8、PostgreSQL、UnifiedODBC
)环境函数(PHP、Sessionhandling、COMsupportfunctionsforWindows
)第4章表单处理和PHP函数库64-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课题开题报告:西南民族建筑中人体尺法营造的体系构成与形成机制研究
- Module 3 Unit1 Collecting stamps is my hobby (教学设计) -2024-2025学年外研版(三起)英语六年级上册
- 6飞向蓝天的恐龙 教学设计-2023-2024学年语文四年级下册统编版
- 《第一单元 网络信息辨真伪 第2课 搜索引擎查信息》教学设计-2024-2025学年闽教版(2020)信息技术四年级上册
- 第六单元《回忆往事》第一课时 教学设计-2024-2025学年语文六年级下册统编版
- 14《小蜗牛》(教学设计)2024-2025学年一年级上册语文统编版
- 八年级英语下册 Unit 4 Why don't you talk to your parents第一课时 Section A(1a-2d)教学实录(新版)人教新目标版
- 学生情商与思维能力的协同发展
- 学前儿童餐点安排与健康饮食关系探讨
- Unit 4 Section A 1a-1c 教案 2023-2024学年人教版八年级英语下册
- 2024年娄底市公安局警务辅助人员招聘考试真题
- PLC应用技术课件 任务6. S7-1200 PLC控制电动机正反转
- 华能武汉发电限责任公司2025年度应届毕业生招聘高频重点模拟试卷提升(共500题附带答案详解)
- 16《大家排好队》第1课时 课件
- 《教育强国建设规划纲要(2024-2035年)》解读与培训 (五)
- 浙江首考2025年1月普通高等学校招生全国统考化学试题及答案
- 2025年中国科协所属单位招聘19名应届生历年高频重点模拟试卷提升(共500题附带答案详解)
- 《中医养生学》课件-八段锦
- 【2025年卫生健康宣传日】世界防治结核病日
- 2024年镇江市高等专科学校高职单招职业适应性测试历年参考题库含答案解析
- 2025年人教版数学五年级下册教学计划(含进度表)
评论
0/150
提交评论