




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
十二、表单处理与会话控制,,PHPChina 工作室,知识回顾,异常处理相关函数 面向对象的异常处理方式 表单元素控件 JavaScript操作表单控件,内容摘要,PHP表单处理 文件上传 会话控制 COOKIE SESSION,GET与POST,GET 所有输入的数据被加载到请求的URL地址后面 浏览的结果放在缓冲区内 只能传递文本,数据量大小有限,安全性差 next.php?username=free&password=123 POST 把表单的数据打包放入请求中 不缓存结果,数据量大,表单处理,提交过来的对象可以用$_GET, $_POST, 或$_REQUEST获得其name=value 自动封装为数组 多个同名的控件或可能提交多个值的控件在命名时需要加表明它的值本身就是个数组,提交内容,处理提交,echo “您的用户名是:$_REQUESTusername“; echo “您的密码是:$_POSTpassword“; echo “您的性别是:$_GETsex“; echo “您的爱好是:“; foreach ($_GETfav as $v) echo $v.、; ,文件上传,Form表单属性设置 enctype=“multipart/form-data“ method=“post“ 通过设置MAX_FILE_SIZE隐含域控制上传文件的大小,上传文件涉及到的参数,file_uploads 是否允许通过HTTP上传文件,默认为ON即是开 upload_tmp_dir 用来说明PHP上传的文件放置的临时目录 upload_max_filesize 允许上传文件大小的最大值,默认为2M post_max_size 控制在采用POST方法进行一次表单提交中PHP所能够接收的最大数据量。,上传文件涉及到的参数,max_input_time 以秒为单位对通过POST、GET以及PUT方式接收数据时间进行限制。 memory_limit 指定单个脚本程序可以使用的最大内存容量变量 max_execution_time 设置了在强制终止脚本前PHP等待脚本执行完毕的时间,此时间以秒计算。,文件上传相关属性,使用$_FILE来接收上传的文件 $_FILESuserfilename 客户端机器文件的原名称。 $_FILESuserfiletype 文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。 $_FILESuserfilesize 已上传文件的大小,单位为字节。 $_FILESuserfiletmp_name 文件被上传后在服务端储存的临时文件名。 $_FILESuserfileerror 和该文件上传相关的错误代码,上传错误代码,值:0; 没有错误发生,文件上传成功。 值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。 值:2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。 值:3; 文件只有部分被上传。 值:4; 没有文件被上传。,上传代码1, this is a file.html upload this file ,上传代码2,“.“文件路径:$img_path“; else exit (“out“); ?,Header函数,用于设置一些文件的头信息 页面重定向: header(“Location: otherurl”); 禁止缓存: header(“Cache-Control: no-cache”); / HTTP/1.1 header(“Expires: Mon, 26 Jul 1997 05:00:00 GMT”); /过去的时间 设置内容类型: header(Content-type: application/pdf);,$_SERVER变量,能够返回服务器端的一些有用的信息 PHP_SELF :当前文件的虚拟路径信息 SCRIPT_FILENAME :当前文件的全路径信息 SERVER_NAME :服务器名 QUERY_STRING :查询字符串 DOCUMENT_ROOT :服务器根路径 REMOTE_ADDR :用户的IP地址,会话控制,会话控制COOKIE和SESSION 当静态网站发展到动态网站时我们需要维护某种状态,逐渐的出现了会话控制 什么是会话控制 http是一个无状态的协议,http协议无法来维护两个事务之间的联系 当一个用户在请求一个页面后在请求另外一个页面时,http将无法告诉我们这两个请求是来自同一个变量,会话控制,会话控制思想就是能够在网站中跟踪一个变量 我们可以跟踪变量,就可以做到对用户的支持 根据授权和用户身份显示不同内容,不同页面 php 的会话是通过会话ID 来实现 用户在每次登陆的过程中得到会话ID 是唯一的,它可以保存在用户的机器里或者通过URL 在网络上传输,会话控制,会话ID 像一把钥匙,他允许我们注册特定的变量 我们称为会话变量 这些变量的内容保存在服务器端而会话ID 就是客户端唯一可见的信息,如果在网络连接中客户端通过COOKIE 或URL 确定了会话的ID ,那么就可以访问会话保存在服务器上的会话变量,会话控制,cookie 和session 都可以暂时保存在多个页面中使用的变量 cookie 存放在客户端浏览器中 session 保存在服务器上 WEB 技术发展史Cookie技术的出现是一个重大的变革 最先是Netscape在它的Netscape Navigator浏览器中引入Cookie 技术 经过微软的大力推广即在微软的Internet Explorer 浏览器中完全支持Cookie技术 现在绝大多数浏览器都支持Cookie技术,什么是cookie,cookie 是在http 协议下,服务器或脚本可以维护客户端信息的一种方式 cookie 是web 服务器保存在用户浏览器上的小甜饼(文件), 她可以包含有关用户的信息 当用户访问服务器时,服务器可以访问到cookie 的信息如果浏览器上Cookie 太多,超过了系统所允许的范围,浏览器将自动对它进行删除,设置cookie,PHP 用setcookie 函数来设置cookie Cookie 在传输过程中是HTTP 协议头的一部分用于浏览器和服务器之间传递信息 setcookie 函数定义了一个cookie 并且把它附加在HTTP头中,Setcookie函数,int setcookie(string name,string value,intexpire,string path,string domain,int secure); name 参数是设置cookie的名字. value 设定了cookie的值. expire 参数是一个标准的Unix时间标记,可以用time()函数取得,以秒为单位 可选参数path, domain, secret path :服务器端的有效路径 domain :设定有效域名 secret :设置是否仅在https安全连接时才设定,接收和处理cookie,PHP 对cookie 有很好的支持和form 表单一样在接收的时候PHP 会自动从web 服务器接收HTTP 头并且分析它接收的时候和表单接收一样 $_COOKIE 或者$_HTTP_COOKIE_VARS 接收 在设置cookie的当前页面无法马上访问到cookie信息,COOKIE失效,到达cookie 的生命周期后cookie 就会失效 设置一个cookie 时失效时间为time( ) 那么在页面浏览完之后就被删除 使用cookie 的限制 不同的浏览器版本,浏览器型号对cookie 的处理不同 客户端可以禁用cookie ,浏览器也会限制cookie 的数量 cookie 本身不存在危险,SESSION,PHP 对session 的支持 php 3 的缺陷:session php4 以后的版本可以实现session 的功能 session 的作用是: 在购物网站中记录变量,保存变量的值 能够让顾客在不同页面,网站中跳转而所购买的商品能够保存,SESSION,PHP 会自动完成session 文件的创建 $_SESSION 数组用于确定session 的名称和保存session 的数值 关键是我们能够灵活的使用$_SESSION 数组,来分析解决实际的问题 不同的PHP版本的php.ini的设置有所不同,应该养成分析配置文件的能力,更好的使用PHP带来的功能 理解程序SESSION并且发现程序的问题,修改程序,SESSION相关配置,在PHP.INI文件中有着大量的关于session的配置信息 session.save_path :session信息在服务器端的存储路径 session.auto_start :是否自动启用session,默认不自动。如果设置为1,则不用每次访问时都先session_start() session.use_cookies :是否使用cookie来保存session id,默认是,SESSION相关函数,session_start( ) 创建一个新session,或重新启用一个已定义的session。要访问s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 剪纸培训班试题及答案
- 药物动力学核心考点试题及答案
- 医院基础知识试题及答案
- 色彩挑战赛试题及答案
- 美学欣赏考试题及答案
- 英译汉试题及答案大学
- 聚焦2024西医临床考题及试题及答案
- 掌握激光技术工程师考试中的难点试题及答案
- 药品使用不良反应考题及答案
- 激光工程师团队协作考题试题及答案
- (一模)桂林市、来宾市2025届高考第一次跨市联合模拟考试英语试卷(含答案详解)
- 2025深圳市房产交易居间合同
- 2025年心理b证笔试试题及答案
- 玉盘二部合唱简谱
- 装修单项项目确认单
- 华为员工准则手册
- 2020版中国阿尔茨海默病痴呆诊疗指南(全文)
- GDFJ005修改个人信息申请表
- 《电工与电子技术基础》试题库及答案
- 毕业论文(设计)液压滑台设计
- 小学数学四年级下册小数点移动练习题(共2页)
评论
0/150
提交评论