标签:报文 ade 通知 login 基本操作 else 管理系统 无法读取 获取数据
注册功能思路:
展示功能思路:
删除功能思路:
详情展示功能
更新数据思路:
更新数据的思路=先渲染 再 提交
隐藏域表单:和其他表单标签一样,只是看不到而已
<input type="hidden" name="id" value="<?php echo $data['id'] ?>">
会话:浏览器与服务器之间的数据交流。
无状态的, 多次请求之间没有相关性
即同一用户请求同一网站的不同页面,服务器无法识别是否是同一用户发起的请求。因此,用户无法进行连续的业务逻辑。
如:登录,已在A页面登录,请求B页面,提示未登录。
在浏览器端的 存储数据的 容器
可以使用js对cookie进行操作
cookie 允许服务器脚本(PHP脚本)在浏览器端存储数据
cookie特点:在cookie中数据设置后,浏览器再次请求服务器指定页面时,会自动携带cookie中的数据到服务器,在服务器中可以获取cookie中的数据;
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UfMcyRIf-1581678598612)(img/cookie.png)]
// 设置cookie
document.cookie = 'name=zs';
document.cookie = 'pwd=123';
// 获取cookie中的值
document.cookie;
//向页面中引入插件js文件,基于jquery的
$.cookie('weight',100,{expires:7});//设置 expires 过期时间
$.cookie('name');//获取
$.removeCookie('name');//删除
$.cookie(键,值,{expires:过期天数})
$.cookie(键) //获取
//设置cookie
setcookie('名称','值');
setcookie('名称','值','有效期');
//删除cookie 将过期时间设置为之前的时间即可
setcookie('名称','',time()-1000);
//获取cookie
//$_COOKIE是PHP的超全局变量,内部存放有浏览器传过来的cookie数据,$_COOKIE只能用于获取数据
$_COOKIE['名称'];
注意点:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vNA4b4yo-1581678598613)(img/session.png)]
开启session机制(使用session前必须调用此方法)
session_start(); //开启session会话或者重用已经创建的会话。
注意点:
会在服务器中自动对每个第一次访问的用户, 随机生成一个sessionID
再根据 sessionID, 自动创建一个session会话文件,我们可以在其中存储该用户的数据
响应时, 在响应头中设置set-cookie, 存放该用户的sessionID
将来浏览器端根据响应头, 将sessionId 存到 cookie 中, 并在下一次请求时携带
下次访问时, 服务器端就会根据 sessionId 找到该用户的会话文件, 我们可以从session中读取用户信息, 实现会话保持
?
设置和获取session中的数据(通过超全局变量$_SESSION进行操作)
//设置
$_SESSION['键']='值';
//删除
unset($_SESSION['键']);
//清空session
$_SESSION=[];
//直接删除session会话文件,PHP脚本将无法读取session数据
session_destroy();
//获取session的id
session_id();
登录模块的基本思路:
如果用户登录成功,在服务器中记录用户的登录状态
session_start(), 对于第一次访问的用户, 会自动生成 sessionId, 并创建session文件,
我们需要在session文件中,记录当前用户的信息
通过响应头,给浏览器的cookie设置sessionID
if($name=='zs'&&$pwd=='666'){
// 登录成功, 将该用户唯一标识存到 session 中
// 该用户数据库中 id 为 1
$id = 1;
session_start();
$_SESSION['userid']=$id;
}
?
后续访问其他页面(个人中心),浏览器会自动发送cookie中存放的sessionID到服务器
是: 用户已登录 ,正常浏览
否:用户未登录,跳转到登录页
session_start();
if(!empty($_SESSION['userid'])){
//正常浏览
}else{
header('location:./04-login.html');
die();//后面代码不执行
}
标签:报文 ade 通知 login 基本操作 else 管理系统 无法读取 获取数据
原文地址:https://www.cnblogs.com/f2ehe/p/12308603.html