用来获取浏览器通过GET方法提交的数据
GET方法它是通过把参数数据加在提交表单的action属性所指的URL中,值和表单内每个字段一一对应,然后在URL中可以看到,但是有如下缺点
1. 安全性不好,在URL中可以看得到
2. 传送数据量较小,不能大于2KB
用来获取浏览器通过POST方法提交的数据。
POST方法它是通过HTTP POST机制,将表单的各个字段放置在HTTP HEADER内一起传送到action属性所指的URL地址中,用户看不到这个过程。
他提交的大小一般来说不受限制,但是具体根据服务器的不同,还是略有不同。相对于GET方式安全性略高。
php中$_REQUEST可以获取以POST方法和GET方法提交的数据,但是速度比较慢
REQUEST["参数”]具有POST["参数"] GET["参数"]的功能,但是REQUEST["参数"]比较慢
通过post和get方法提交的所有数据都可以通过$_REQUEST数组["参数"]获得
案例:
";
echo "第二个参数是$arg2
";
?>
$_SERVER 收到的数据,上一个数组类型的数据
数组中的元素,是基于关键字的方式进行索引
HTTP_HOST:客户端访问的域名
HTTP_USER_AGENT:客户端的浏览器
QUERY_STRINT:客户端传递的参数列表
REMOTE_ADDR:客户端的ip地址
SERVER_POST:服务器的端口号
SERVER_ADDR:服务端的地址
REQUEST_METHOD:客户端发生请求的方法:post和get
HTTP_REFERER:记录是从哪个页面跳转过来的
案例:
";
echo "第二个参数是$arg2
";
echo $_SERVER['SERVER_ADDR'];
echo "
";
echo $_SERVER['QUERY_STRING'];
echo "
";
?>
http协议的特定
http协议是一个无状态的协议
无状态导致的问题:浏览器/服务器端无法记录客户端的登录状态
PHP session 变量用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session 变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的。
Session 用法说明
通过为每个独立用户分配唯一的会话 ID,可以实现针对不同用户分别存储数据的功能。会话通常被用来在多个页面请求之间保存及共享信息。一般来说,会话 ID 通过 Cookie 的方式发送到浏览器,并且在服务器端也是通过会话 ID 来取回会话中的数据。如果请求中不包含会话ID信息,那么 PHP 就会创建一个新的会话,并为新创建的会话分配新的 ID。
会话的工作流程很简单。当开始一个会话时,PHP 会尝试从请求中查找会话 ID(通常通过会话Cookie),如果请求中不包含会话 ID 信息,PHP 就会创建一个新的会话。会话开始之后,PHP 就会将会话中的数据设置到 $_SESSION 变量中。当 PHP 停止的时候,它会自动读取 $_SESSION 中的内容,并将其进行序列化,然后发送给回话保存处理程序来进行保存。
默认情况下,PHP使用内置的文件会话保存处理程序(files)来完成会话的保存。也可以通过配置项session.save_handler 来修改所要采用的会话保存处理程序。对于文件会话保存处理程序,会将会话数据保存到配置项 session.save_path 所指定的位置。
可以通过调用函数 session start() 来手动开始一个会话。如果配置项 session.auto start 设置为1,那么请求开始的时候,会话会自动开始。
PHP脚本执行完成之后,会话会自动关闭。同时,也可以通过调用函数 session write close() 来手动关闭回话。
在PHP中$_SESSION 的使用方法
php中的session的常用操作:
session的写入、读取、注册与删除。
1. session 的开始
在您把用户信息存储到PHP session 中之前,首先必须启动回话。
注释:session_start() 函数必须位于标签之前:
这个代码会向服务器注册用户的会话,以便您开始保存用户信息,同时会为用户会话分配一个UID。
2. 存储 Session 变量
存储和取回 session 变量的正确方法是使用 PHP $_SESSION 变量:
xxxxxx
在下面的实例中,我们创建了一个简单的 page-view 计数器。isset()函数检测是否已设置“views”变量。如果已设置“views”变量,我们累加计数器。如果“views”不存在,则创建“views”变量,并把它设置为1:
销毁 Session
如果您希望删除某些Session数据,可以使用 unset() 或 session_destroy() 函数。
unset() 函数用于释放指定的 session 变量:
也可以通过调用 session_destroy() 函数彻底销毁 session:
实现效果
- index.html:前台登录页面
- login.php:检查用户密码是否正确
- msg.php:登录成功后显示的页面
- logout.php:实现退出登录的文件
1. index.html
首页
账号:
密码:
2. login.php
3. msg.php
";
echo "这是后台页面
";
// 添加退出按钮
echo '';
// 如果还没登录,那么就为假
} else {
echo "请先登录";
// 跳转到登录页面
echo "5s后返回登录页面";
header("refresh:5;url=http://www.php001.com/index.html");
exit;
}
?>
4. logout.php