form methodpost action4 2 php input typetext nameuser

  • Slides: 95
Download presentation

获取用户登录表单中的内容 <form method="post" action="4 -2. php"> 用户 名: <input type="text" name="user. Name"> 密码: <input

获取用户登录表单中的内容 <form method="post" action="4 -2. php"> 用户 名: <input type="text" name="user. Name"> 密码: <input type="text" name="PS"> <input type="submit" value="登陆"> </form> 需用$_POST[] 获取数据 $_POST["PS"] 获取该表单的文件 必须是 4 -2. php $_POST[" user. Name "]

服务器获取表单信息的过程 HTTP请求 user PS tang 123 Apache $user=$_POST["user"] 浏览器

服务器获取表单信息的过程 HTTP请求 user PS tang 123 Apache $user=$_POST["user"] 浏览器

练习 v 怎样获取下面表单提交的数据 <form method="post" action="tit. php"> 用户名: <input type="text" name="user" id="name"> 密 码

练习 v 怎样获取下面表单提交的数据 <form method="post" action="tit. php"> 用户名: <input type="text" name="user" id="name"> 密 码 : <input type="text" name="PS" id="pwd"> <input type="submit" value="登陆"> <textarea name="intro" rows="2" cols="20"></textarea> </form>

5. 1. 2使用$_GET[]获取表单数据 <form method=“get" action="4 -7. php"> 用户 名: <input type="text" name="user. Name">

5. 1. 2使用$_GET[]获取表单数据 <form method=“get" action="4 -7. php"> 用户 名: <input type="text" name="user. Name"> 密码: <input type="text" name="PS"> <input type="submit" value="登陆"> </form> 需用$_GET[] 获取数据 $_GET["PS"] 获取该表单的文件 必须是 4 -7. php $_GET[" user. Name "]

GET方式与POST方式提交的区别 v GET方式会将表单中的数据以URL字符串的形式 发送给服务器 v GET方式 § http: //localhost/4 -7. php? user=tang&PS=123 v POST方式

GET方式与POST方式提交的区别 v GET方式会将表单中的数据以URL字符串的形式 发送给服务器 v GET方式 § http: //localhost/4 -7. php? user=tang&PS=123 v POST方式 § http: //localhost/4 -1. php

服务器获取URL字符串信息的过程 HTTP请求 4 -9. php owen page 4 -9. php Apache 浏览器 $owen=$_GET["owen"];

服务器获取URL字符串信息的过程 HTTP请求 4 -9. php owen page 4 -9. php Apache 浏览器 $owen=$_GET["owen"];

练习 v <a href="search. php? key=Web标准 &page. No=5">查询结果第 5页</a> v 如何获取? v <form method="post"

练习 v <a href="search. php? key=Web标准 &page. No=5">查询结果第 5页</a> v 如何获取? v <form method="post" action="? flag=1"> v 如何获取?

5. 2. 2 使用header()函数重定向网页 vheader()函数可使浏览器自动转到另一个页面 <? header("location: http: //www. baidu. com"); header("location: 4 -8.

5. 2. 2 使用header()函数重定向网页 vheader()函数可使浏览器自动转到另一个页面 <? header("location: http: //www. baidu. com"); header("location: 4 -8. php"); header("location: ? flag=1"); $url='4 -1. php'; header("location: $url"); ? >

5. 3 使用$_SESSION 操作Session

5. 3 使用$_SESSION 操作Session

5. 3. 1 存储和读取Session信息 v 存储Session信息 § $_SESSION[“Session名”]=Session值 v 读取Session信息 § 变量=$_SESSION["Session名"]

5. 3. 1 存储和读取Session信息 v 存储Session信息 § $_SESSION[“Session名”]=Session值 v 读取Session信息 § 变量=$_SESSION["Session名"]

存储Session信息 v <? session_start(); $_SESSION["username"]="小泥巴"; $_SESSION["username"]="张三"; $_SESSION["age"]=21; $email='tang@163. com'; $_SESSION["email"]=$email; $_SESSION["user"] =array('name'=>'燕子 ', 'pwd'=>'111');

存储Session信息 v <? session_start(); $_SESSION["username"]="小泥巴"; $_SESSION["username"]="张三"; $_SESSION["age"]=21; $email='tang@163. com'; $_SESSION["email"]=$email; $_SESSION["user"] =array('name'=>'燕子 ', 'pwd'=>'111'); //将数组存入Session变量 v ? >

读取Session信息 v <? session_start(); echo $_SESSION["username"]; $age = $_SESSION["age"]; echo $_SESSION["email"]; ? >

读取Session信息 v <? session_start(); echo $_SESSION["username"]; $age = $_SESSION["age"]; echo $_SESSION["email"]; ? >

Session的应用过程(第一次访问网站) HTTP请求 Session. ID=345823423 $_session[‘user’]=“张三” 4 -1. php Session. ID=345823423 http: //localhost/4 -1. php

Session的应用过程(第一次访问网站) HTTP请求 Session. ID=345823423 $_session[‘user’]=“张三” 4 -1. php Session. ID=345823423 http: //localhost/4 -1. php 浏览器

Session的应用过程(第二次访问网站) HTTP请求 Session. ID 比较 9 -2. asp Session. ID=345823423 $_session[‘user’]=“张三” http: //localhost/4 -2.

Session的应用过程(第二次访问网站) HTTP请求 Session. ID 比较 9 -2. asp Session. ID=345823423 $_session[‘user’]=“张三” http: //localhost/4 -2. php “欢迎您”& $_session[‘user’]=“张三” 浏览器

设置Session的生命期 v Session生命期默认为 24分钟(1440秒) v 修改Session有效期为 60秒 session_start(); ini_set('session. save_path', '/tmp/'); ini_set('session. gc_maxlifetime', 60);

设置Session的生命期 v Session生命期默认为 24分钟(1440秒) v 修改Session有效期为 60秒 session_start(); ini_set('session. save_path', '/tmp/'); ini_set('session. gc_maxlifetime', 60); setcookie(session_name(), session_id(), time() + 60, "/"); 提示:不能单独对某个用户的Session设置生命期

5. 3. 4 删除和销毁Session v <? session_start(); v unset($_SESSION["username"]); v session_unset(); //删除所有session变量 v ?

5. 3. 4 删除和销毁Session v <? session_start(); v unset($_SESSION["username"]); v session_unset(); //删除所有session变量 v ? > v session_unset只能删除$_SESSION数组中的 所有元素,并不能删除对应的Session ID,也不 能删除保存Session. ID的文件 v session_destroy()函数就能删除Session ID, 并销毁Session文件

注销登录的实现 v 原理:清空和删除Session(4 -16. php) <? if($_GET['action'] == "logout"){ session_start(); //启动会话 setcookie("user", "", time()-60);

注销登录的实现 v 原理:清空和删除Session(4 -16. php) <? if($_GET['action'] == "logout"){ session_start(); //启动会话 setcookie("user", "", time()-60); session_unset(); session_destroy(); header("Location: 4 -14. php"); } ? >

5. 4 使用$_COOKIE读取 Cookie

5. 4 使用$_COOKIE读取 Cookie

创建Cookie v 一般用setcookie函数 v setcookie(name, value, expire, path, domain, secure) § § Name:cookie的变量名 Value:cookie变量值

创建Cookie v 一般用setcookie函数 v setcookie(name, value, expire, path, domain, secure) § § Name:cookie的变量名 Value:cookie变量值 Expire:cookie的有效期; path、domain、secure分别用来规定cookie的 有效目录、有效域名和是否采用HTTPS来传输 cookie

创建cookie示例 <? setcookie('tmpcookie', '这是个临时cookie'); setcookie('user. Name', '小泥巴', time()+60); setcookie('age', 21, time()+60); setcookie('sex', '女', time()+60,

创建cookie示例 <? setcookie('tmpcookie', '这是个临时cookie'); setcookie('user. Name', '小泥巴', time()+60); setcookie('age', 21, time()+60); setcookie('sex', '女', time()+60, '', false); //设置setcookie的所有参数 ? >

使用header函数设置Cookie v 在PHP中,还能使用header函数设置Cookie。 例如: v header("Set-Cookie: nickname=小泥巴; expires=". gmstrftime("%A, %d-%b-%Y %H: %M: %S GMT",

使用header函数设置Cookie v 在PHP中,还能使用header函数设置Cookie。 例如: v header("Set-Cookie: nickname=小泥巴; expires=". gmstrftime("%A, %d-%b-%Y %H: %M: %S GMT", time() + (86400 * 30)));

4. 4. 2 读取Cookie v 通过$_COOKIE数组 v <? v $user=$_COOKIE['user. Name']; v $age=$_COOKIE['age']; v

4. 4. 2 读取Cookie v 通过$_COOKIE数组 v <? v $user=$_COOKIE['user. Name']; v $age=$_COOKIE['age']; v $sex=$_COOKIE['sex']; v echo $user. $age. '岁, 性别'. $sex; v ? >

练习:获取下面程序写入的Cookie v <% response. Cookies("age"). expires= #2012 -1 -1# v Response. Cookies("age")=24 v Response.

练习:获取下面程序写入的Cookie v <% response. Cookies("age"). expires= #2012 -1 -1# v Response. Cookies("age")=24 v Response. Cookies("User")("User. Name")=" 小泥巴" v Response. Cookies("User")("age")=21 v Response. Cookies("User"). Expires=#2012 -11# %>

5. 4. 3 Cookie数组 写入Cookie数组 <? setcookie("user[name]", "张三", time()+600); setcookie("user[id]", "zhang 3", time()+600); setcookie("user[sex]",

5. 4. 3 Cookie数组 写入Cookie数组 <? setcookie("user[name]", "张三", time()+600); setcookie("user[id]", "zhang 3", time()+600); setcookie("user[sex]", "男", time()+600); setcookie("user[age]", 23); ? > Cookie数组元素的 索引不要加引号

5. 4. 3 Cookie数组 读取Cookie数组 <? foreach($_COOKIE['user'] as $key=>$value){ echo $key. '=>'. $value. '

5. 4. 3 Cookie数组 读取Cookie数组 <? foreach($_COOKIE['user'] as $key=>$value){ echo $key. '=>'. $value. ' '; } echo $_COOKIE['user']['name']; ? >

Cookie的应用过程(第一次访问网站) HTTP请求 Visnum=1 9 -2. asp IIS 为空 vis=request. Cookies(“visnum") http: //localhost/9 -2. asp

Cookie的应用过程(第一次访问网站) HTTP请求 Visnum=1 9 -2. asp IIS 为空 vis=request. Cookies(“visnum") http: //localhost/9 -2. asp 浏览器

Cookie的应用过程(第二次访问网站) HTTP请求 Visnum=1 Visnum=2 4 -2. php IIS http: //localhost/4 -2. php 不为空 Visnum=Visnum+1

Cookie的应用过程(第二次访问网站) HTTP请求 Visnum=1 Visnum=2 4 -2. php IIS http: //localhost/4 -2. php 不为空 Visnum=Visnum+1 vis=request. Cookies(“visnum") 浏览器

5. 5. 1 添加上传文件的表单 <form action="4 -24. php" method="post" enctype="multipart/form-data"> <input type="file" name="upfile" />

5. 5. 1 添加上传文件的表单 <form action="4 -24. php" method="post" enctype="multipart/form-data"> <input type="file" name="upfile" /> <input type="submit" value=" 上 传 " /> </form>

$_FILES['upfile']数组 v 可以输出$_FILES['upfile']数组的内容: <? var_dump($_FILES['upfile']); ? > v 则选择上传文件guangxue. gif,单击上传按钮后, 执行结果如下: array(5){["name"]=> string(12) "guangxue.

$_FILES['upfile']数组 v 可以输出$_FILES['upfile']数组的内容: <? var_dump($_FILES['upfile']); ? > v 则选择上传文件guangxue. gif,单击上传按钮后, 执行结果如下: array(5){["name"]=> string(12) "guangxue. gif" ["type"]=> string(9) "image/gif" ["tmp_name"]=> string(26) "C: WINDOWSTEMPphp 11 C. tmp" ["error"]=> int(0) ["size"]=> int(44863) }

5. 5. 4同时上传多个文件 <form action="4 -26. php" method="post" enctype="multipart/form-data"> 文件 1:<input type="file" name="upfile[]" />

5. 5. 4同时上传多个文件 <form action="4 -26. php" method="post" enctype="multipart/form-data"> 文件 1:<input type="file" name="upfile[]" /> 文件 2:<input type="file" name="upfile[]" /> 文件 3:<input type="file" name="upfile[]" /> <input type="submit" value=" 上 传 " /> </form>