php之cookie会话控制
通过cookie将用户资料记录在客户端而不需要每次都从服务器调用,这样能提高网页效率,降低服务器的压力
下面的例子模拟一个登录界面的操作,使用cookie的调用
界面显示(未进行美化)
根目录下创建需要的文件
index.php中,首先写出如图的表格形式输出
用户登录
用户登录 用户名
密码
因为要连接数据库,并调用数据库的数据,创建数据库并创建一个数据库调用的文件
创建一个users的表,并插入数据,这里数据插入信息包括用户名、密码和权限
在根目录下创建 conn.inc.php 用于存放数据库连接
conn.inc.php
num_rows > 0){ $row=$result->fetch_assoc(); $time=time()*1800; setcookie(username, $_post[name],$time); setcookie(uid, $row[id],$time); setcookie(islogin,1); header(location:index.php); //跳转界面 } echo 用户名密码有误; }?>
注意cookie保存数据时需要表明数据保存的时长,保存数据中返回 “username”,“uid”,“islogin
index.php 中涉及页面跳转,创建一个公共的跳转页面的类 comm.php
comm.php:如果传回的是 “islogin” 就进行跳转
fetch_assoc(); if($user[allow_1]){ echo 111111111111
; } if($user[allow_2]){ echo 222222222222
; } if($user[allow_3]){ echo 333333333333
; } if($user[allow_4]){ echo 444444444444
; } ?> 第二页
第三页
退出
最后第二页、第三页的写法跟 index.php 一样
登出 logout.php 需要注销用户信息
重新登录
完整代码:
login.php:
query($sql); //保存数据 if($result->num_rows > 0){ $row=$result->fetch_assoc(); $time=time()*1800; setcookie(username, $_post[name],$time); setcookie(uid, $row[id],$time); setcookie(islogin,1); header(location:index.php); //跳转界面 } echo 用户名密码有误; }?> 用户登录
用户登录 用户名
密码
