第6章 PHP的数据采集.

Slides:



Advertisements
Similar presentations
Java Web 开发 授课人:张鸽. 第三讲 JSP 内置对象  JSP 有以下九种内置对象,包括:  ·request ,请求对象  ·response ,响应对象  ·pageContext ,页面上下文对象  ·session ,会话对象  ·application ,应用程序对象.
Advertisements

第14章 表单 在制作动态网页时,要实现信息交互,常常用到表单。 常见的表单有搜索表单、用户登录注册表单、调查表 单、留言簿表单等。本章节将和大家一起探讨在表单 的基本概念和各个元素,以及在Dreamweaver CS4中 如何创建表单,并通过实例掌握表单制作的方法。
《计算机网络技术》 动态网页制作技术 常用HTML控件课程积件 杨 姝.
第六章 网页设计与制作基础.
白玉苦瓜 余光中.
动态Web开发技术--JSP.
第 4 章 PHP 基本語法.
第五章 JSP内置对象 第4章学习了页面组成元素和使用方法。本章学习JSP内置对象的使用。使用JSP内置对象,可以方便操作页面,访问页面环境,实现页面内、页面间、页面与环境之间的通讯。 学习目标 熟悉主要内置对象的概念 理解主要内置对象的作用域和生命期 理解主要内置对象的作用和关系 熟悉主要内置对象的使用方法.
基于JSP搭建Web应用程序.
第5章 HTML 標籤介紹.
汇报大纲 一、报送系统总体介绍 二、自查及检查评分报送流程 三、自查及检查方法及关键点 四、建议及注意事项.
第8讲 HTML与PHP基础 静态网页 vs. 动态网页.
HTML概念 HTML(Hyper Text Markup Language 超文本标识语言) 是一种用来制作超文本文档的简单标记语言。
实训十四、IE浏览器的基本应用.
第13章 FTP檔案上傳、 自動傳送 報告人 M9153314 李育旻.
第五单元课1-3 层叠样式表.
第3章 HTML语言 3.1 HTML文档的基本结构 3.2 文字排版 3.3 图片排版 3.4 超级链接 3.5 表格 3.6 框架窗口
模块1 网页设计基础 实训1 体验HTML文档 1.1 网页基础知识 1.2 网站配色方案 1.3 网站设计常用软件
認證與檔案上傳 學習目標 基本原理 資料庫連線與選擇 執行查詢 取回答案 SQL Injection.
一、登录界面 (一)登录方式 1、访问广东工程咨询网 ( 动态里,“咨询师登记工作”专栏 2、 IE地址栏中直接键入管理系统 地址(
数据访问页.
網際網路的應用服務 – Web 概念與網頁語言
HTML.
ASP动态网页设计实用教程 主讲教师: 开课单位:.
第3章 超文本标记语言(HTML) 3.1 基本结构标记 3.2 文本格式标记 3.3 超链接标记<A></A>
建國技術學院資訊管理學系 饒瑞佶 2004/7/5 彰化縣政府補助辦理網頁設計資料庫應用班 建國技術學院資訊管理學系 饒瑞佶 2004/7/5.
Google 自訂搜尋 淡江大學資訊中心 專案發展組 朱家璁 2009/10/6.
PHP程式設計 二、HTML & PHP基本語法 建國科技大學 資訊管理學系 饒瑞佶.
Hello World 體驗實作第一個JSP程式.
Chap5 PHP程式設計進階 授課講師:.
【PHP程式設計】 實作一:計算BMI.
第四章 網頁表單與資料傳遞.
留言版 1.先Create一個留言板的table
Introduction to PHP part3
Beyond Technology JavaScript(Ver1.0).
PHP +MySQL快速入門 Lesson 4.
Ch11 檔案上傳及電子郵件 WEB程式設計.
第2章 超文本标记语言HTML.
Cookie 存取Cookie Cookie有效時間 Session 存取Session session 函數
Lesson 5 :基礎應用二(留言版) (2004/08/20).
進階 WWW 程式設計 -- PHP Regular Expression 靜宜大學資訊管理學系 蔡奇偉副教授 2004
無障礙網頁 公關室.
第六讲 JSP中的文件操作(2) 教学目的 本讲继续讲述JSP中使用Java输入、输出流实现文件的读写操作 。 1 文件上传 2 文件下载
PHP+MySQL互動式網頁程式設計班 檔案上傳程式設計 講師:林業峻 CSIE, NTU 7 / 3, 2010.
檔案上傳 所謂檔案上傳,就是將檔案由客戶端的主機,藉 由瀏覽器傳送到伺服器的資料夾上。
PHP 程式流程控制結構.
Speaker: Wei-Lin Chen Date: 2010/07/13
PHP 變數、常數與運算子 變數 常數 運算子
网站设计 前端 选择器(复习),表单.
表單(Form).
Python联合服务器的使用.
Web前端开发 第23章:网站发布 阮晓龙 / 河南中医药大学管理科学与工程学科
架站實做—AppServ
网页设计与制作教程第5版 机械工业出版社同名教材 配套电子教案.
HTML 103 互動式網頁.
蓝色图示 — 无动画版.
Ch09 在網頁之間傳遞資訊 網頁程式設計.
表單(Form).
第六章 迴圈與陣列.
表格(HTML – FORM).
HTTP 1.1 Method OPTIONS GET HEAD POST PUT DELETE TRACE CONNECT
HTML 103 互動式網頁 助教:黃毓瑩.
表格(HTML – FORM)
目 录: 一、网络存储系统的登录 二、网络存储系统的基本使用 三、学生提交作业功能的使用 四、教师开放资源功能的使用.
PHP程式設計 五、程式流程控制結構 建國科技大學 資訊管理學系 饒瑞佶.
黑龙江省科学基金 项目验收填报培训 黑龙江省计算中心 2015年09月.
项目一 了解网站的概念 项目二 创建个人网站“鸿渐工作室” 项目三 制作“鸿渐工作室”的主页 项目四 HTML语言 项目五 制作“家乡特产”网页 项目六 制作“给我留言”网页 项目七 制作“应用技巧”网页 项目八 模板制作及应用.
HTML表单 JSP借由标签所构成的表单区块中,取得用户在其中特定字段输入的数据內容 。 JSP 动态网页新技术.
表单页面 表单是用户利用浏览器对Web站点网络数据库进行查询的一种界面,用户利用表单可以输入信息或选择选项等,然后将这些信息提交给服务器进行处理。通过表单,既可以将浏览器的信息发送到Internet服务器上,同时表单也可以使用户与站点的浏览者交互或从浏览者那里收集信息。它是网页的设计者和使用者相互交流的工具。表单对象包括文本域(单行、多行、密码)、列表、菜单、复选框、单选框、按钮等。
教师:李金双 网页制作 教师:李金双
Presentation transcript:

第6章 PHP的数据采集

6.1 浏览器端数据的提交方式 6.1.1 GET提交方式 GET提交方式是将“请求”数据以查询字符串格式附在URL之后“提交”数据。例如: http://localhost/2/register.php?userName=victor&password=1234&confirmPassword=1234。 在这个URL中,问号“?” 表示查询字符串的开始,问号“?”后面的字符串参数“userName=victor&password=1234 &confirmPassword=1234”为查询字符串。可以看出:查询字符串可以包含多个参数,每个参数以“参数名=参数值”的格式定义,参数之间使用“&”相连,最后再将查询字符串使用“?”附在URL之后。另外,FORM表单也提供了GET提交方式。 除此以外,使用超链接<a></a>标签也可以实现浏览器端GET提交方式。

6.1.2 POST提交方式 POST数据提交方式一般通过FORM表单实现,由于默认情况下FORM表单的数据提交方式为GET方式,必须在FORM表单的<form />标签中加入属性:method="post",将数据提交方式修改为POST方式。

6.1.3 GET和POST混合提交方式 还可以使用FORM表单实现GET和POST混合提交方式,即向WEB服务器某PHP程序发出“GET请求”的同时,还向该PHP程序发出“POST请求”。

6.1.4 两种提交方式的比较 POST提交方式比GET提交方式安全。这是由于GET提交方式提交的数据将出现在URL查询字符串中,并且这些带有查询字符串的URL可以被浏览器缓存到历史记录中。因此诸如用户注册、登录等系统,不建议使用GET提交方式。 POST提交方式可以提交更多的数据。理论上讲POST提交方式提交的数据没有大小限制,而GET提交方式提交的数据由于出现在URL查询字符串中,而URL的长度是受限制的(例如IE浏览器对URL长度的限制是2083字节)。例如:新闻发布系统中提交篇幅较长的新闻信息时,不建议使用GET提交方式;带有文件上传功能的FORM表单则必须使用POST提交方式。 不同的“提交”方式对应的服务器端数据“采集”方式不同。

6.2 相对路径和绝对路径 6.2.1 绝对路径 绝对路径是与相对路径相对立的,通常是一个完整的URL,该URL由两个部分构成: scheme:用来描述寻找数据所采用的机制,即:协议。如http协议和ftp协议等 位置(Location):用来描述到哪儿去寻找数据的资源 这两部分使用“://”分隔,例如:http://www.php.net/index.php就是一个绝对路径URL,它表明了这样一个含义:使用http协议从一个域名为www.php.net的WEB服务器上获取index.php页面资源信息。 由于绝对路径无论出现在哪儿都代表相同的内容,因此绝对路径通常在访问系统外部资源时才使用,而访问系统内部资源时一般使用相对路径,方便程序的移植。

6.2.2 相对路径 相对路径可以分为两类:server-relative路径与page-relative路径。 server-relative路径是以斜杠“/”开头的相对路径。在HTML中,以斜杠“/”开头的相对路径表示从WEB服务器的根目录下开始查找相应的资源文件。使用默认配置安装WAMP后,目录“C:/wamp/www”为Apache服务器的根目录,因此使用相对路径“/index.php”访问资源时,访问的是目录“C:/wamp/www”下的index.php页面;使用相对路径“/6/register.html”访问资源时,访问的是目录“C:/wamp/www”中的目录“6”下的register.html文件。

6.2.2 相对路径 page-relative路径不以斜杠开头。此时当文件1访问文件2(HTML页面、PHP程序或图片等)资源时,将从文件1的当前目录作为起点查找文件2资源。例如当目录“C:/wamp/www/6/”中的register.html文件使用超链接访问该目录下的register.php文件时,只需在register.html文件的超链接中直接指定register.php文件即可。

6.2.3 相对路径其它概念 (1)同一个目录下的资源访问 如果文件1和文件2在同一个目录,这两个文件间的相互访问直接使用文件名即可。 (2)如何表示当前目录 .表示文件的当前目录。 (3)如何表示上级目录 ../表示文件所在目录的上一级目录,../../表示文件所在目录的上上级目录,以此类推。 (4)如何表示下级目录 如果文件1访问下级目录中的文件2,直接指定该目录和文件2的文件名即可。

6.3 FORM表单实现浏览器端的数据采集 FORM表单由三部分组成: 表单标签:定义了表单处理程序及数据提交方式等信息。  表单控件:包括单行文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等表单控件。  表单按钮:包括提交按钮、复位按钮和一般按钮。

6.3.1 表单标签<form></form> 表单标签<form>常用的属性有action、method、enctype、title、name等。 (1)action属性设置当前表单数据“提交”的目的地址。当不设置action属性,或设置值等于空字符串(即action="")时,表单数据提交给当前页面。 (2)method属性设置表单数据的提交方式。method属性的值为GET或POST,默认为GET。 (3)title属性设置表单的提示信息。当用户的鼠标在表单处停留时,浏览器用一个黄色的小浮标显示提示文本。

(4)enctype属性设置提交表单数据时的编码方式。enctype属性的值为multipart/form-data或application/x-www-form-urlencoded,默认为"application/x-www-form-urlencoded"。当一个FORM表单中存在文件上传框时,必须将enctype属性设置为multipart/form-data编码方式。 (5)name属性为当前的FORM表单命名。

注意:表单控件嵌套在FORM表单中才有意义,且每个表单控件都要用一个name属性进行标识。这是因为WEB服务器将依据表单控件的name属性判断传递给服务器的每个值分别是由哪个表单控件产生。为了确保数据的准确采集,需要为每个表单控件定义一个独一无二的名称(同为一个组的单选框以及在表单控件中使用数组两种情况除外)。 6.3.2 表单控件 (1)单行文本框 (2)密码框 (3)多行文本框 (4)隐藏域 (5)复选框 (6)单选框 (7)文件上传框 (8)下拉选择框

6.3.3 在表单控件中使用数组 在一个HTML页面中,有时并不清楚某种表单控件的具体个数。例如:在进行多文件上传时,并不能确定浏览器用户究竟选择多少个上传文件,更无法确定页面中需要多少个文件上传框。在表单控件中使用数组可以解决类似的问题。 在表单控件的name属性值后面加上方括号“[ ]”从而实现在表单控件中使用数组。使用表单控件数组后,当表单提交时,相同name属性的表单控件则以数组的方式向WEB服务器提交多个数据。

6.3.4 表单按钮 (1)提交按钮 (2)图像提交按钮 (3)重置按钮 (4)自定义按钮

6.3.5 FORM表单综合应用 <form action="register.php" method="post" enctype="multipart/form-data"> 用 户 名: <input type="text" name="userName" size="20" maxlength="15" value="必须填写用户名" /> @ <select name="domain">   <option value="@163.com" selected>163.com</option>   <option value="@126.com">126.com</option> </select> <br/> 登录密码: <input type="password" name="password" size="20" maxlength="15" /> 确认密码: <input type="password" name="confirmPassword" size="20" maxlength="15" /> 选择性别: <input name="sex" type="radio" value="male" checked />男 <input name="sex" type="radio" value="female" />女 <br/> 个人爱好: <input name="interests[]" type="checkbox" value="music" checked />音乐 <input name="interests[]" type="checkbox" value="game" checked />游戏 <input name="interests[]" type="checkbox" value="film" />电影 个人相片: <input type="hidden" name="MAX_FILE_SIZE" value="1024" /> <input type="file" name="myPicture" size="25" maxlength="100" /> 备注信息 : <textarea name="remark" cols="30" rows="4">请填写备注信息</textarea> <br/> 提交按钮: <input type="submit" name="submit1" value="普通提交按钮" /> 图片按钮: <input type="image" name="submit2" src="http://www.google.cn/intl/zh-CN/images/logo.gif" height="40" /> 重置按钮: <input type="reset" name="cancel" value="重新填写" /> </form>

6.4 使用$_GET和$_POST“采集”表单数据 当浏览器向WEB服务器某PHP程序提交数据后,该PHP程序应该根据其“提交”方式决定使用何种数据“采集”方法。当浏览器以GET方式提交的数据时,服务器端PHP程序应当使用预定义变量$_GET“采集”提交数据;当浏览器以POST方式提交的数据时,服务器端PHP程序应当使用预定义变量$_POST“采集”提交数据;当以POST方式提交的请求数据中包含上传文件时,服务器端PHP程序应当使用预定义变量$_FILES“采集”上传文件。

6.5 上传文件的“数据采集” 6.5.1 与上传相关的配置 6.5.2 PHP文件上传流程 6.5.3 预定义变量$_FILES 可以适当的修改php.ini配置文件中的配置选项以满足特定的文件上传需要。 6.5.2 PHP文件上传流程 6.5.3 预定义变量$_FILES

6.6 WEB服务器端其它数据采集方法 6.6.1 预定义变量$_REQUEST 使用预定义变量$_REQUEST即可以采集GET方式提交的URL查询字符串中的参数信息,也可以采集FORM表单POST方式提交的参数信息。以前程序中所有使用$_GET或$_POST采集的参数信息都可以替换成使用$_REQUEST采集。即:$_REQUEST = array_merge ( $_GET , $_POST )。 注意:使用GET和POST混合方式提交数据时,若一个参数名既存在于GET请求中又存在于POST请求中,使用$_REQUEST采集该参数名对应的参数值时,将造成数据的丢失。

6.6.2 预定义变量$_SERVER 使用预定义变量$_SERVER可以得到浏览器端和服务器端主机的一些相关信息,例如: $_SERVER["REMOTE_ADDR"]:定义了浏览器端主机的IP地址; $_SERVER["SERVER_ADDR"]:定义了服务器主机的IP地址; $_SERVER["PHP_SELF"]:定义了当前执行程序的文件名; $_SERVER['QUERY_STRING']:定义了URL的查询字符串; $_SERVER['DOCUMENT_ROOT']:定义了WEB服务器主目录; $_SERVER["REQUEST_URI"]:定义了除域名外的其余URL部分。