批改状态:合格
老师批语:
//COOKIE 存在浏览器中 存在用户电脑中的 储存大小限制//setcookie(name, value, expire, path, domain, secure);/* name -- cookie的名字* value -- cookie的值,存放在客户端,不要存放敏感数据* expire -- Cookie 过期的时间。这是个 Unix 时间戳,即从 Unix 纪元开始的秒数。* path -- Cookie 在服务器端的有效路径。* domain -- 该 cookie 有效的域名。* secure -- 指明 cookie 是否仅通过安全的 HTTPS 连接传送。* 当设成 TRUE 时,cookie 仅在安全的连接中被设置。默认值为FALSE。*///创建cookiesetcookie('name','ouyangke', time()+3600);//第一次存无法获取数据// 储存数组setcookie('php[id]',10);setcookie('php[name]','ouyangke');//Array ( [php] => Array ( [id] => 10 [name] => ouyangke )//删除setcookie('name','ouyangke', time()-3600);
//数组只能删除值
setcookie(‘php[id]’,’ouyangke’, time()-3600);
//SESSION 存在服务器上的 是基于COOKIE储存大小无限制//在您把用户信息存储到 PHP session 中之前,首先必须启动会话。//session_start() 函数必须位于 <html> 标签之前//启动会话session_start();//存储 Session 变量$_SESSION['views']=1;$_SESSION['name']='Joy';//Array ( [views] => 1 [name] => Joy )//销毁 Session//如果您希望删除某些 session 数据,可以使用 unset() 或 session_destroy() 函数。unset($_SESSION['views']);//unset() 函数用于释放指定的 session 变量session_unset(); //先清空了变量的值 释放内存中的变量 session 被注销了//通过调用 session_destroy() 函数彻底销毁 sessionsession_destroy(); //先注销了 再删除但是内存中变量和值是存在的// 常用函数//1.session_start — 启动新会话或者重用现有会话//2.session_status() —用于返回当前会话状态。//返回值//PHP_SESSION_DISABLED 会话是被禁用的。//PHP_SESSION_NONE 会话是启用的,但不存在当前会话。//PHP_SESSION_ACTIVE 会话是启用的,而且存在当前会话。////3.session_abort()----放弃会话数组更改并完成会话//4.session_id ()—获取会话id//5.session_name ();返回当前会话名称。如果指定 name 参数,那么此函数会更新会话名称,并且 返回 原来的 会话名称//6.session_unset ();无参数释放当前会话注册的所有会话变量// 其他函数//session_cache_expire — 返回当前缓存的到期时间//session_cache_limiter — 读取/设置缓存限制器//session_commit — session_write_close 的别名//session_create_id — Create new session id//session_decode — 解码会话数据//session_destroy — 销毁一个会话中的全部数据//session_encode — 将当前会话数据编码为一个字符串//session_gc — Perform session data garbage collection//session_get_cookie_params — 获取会话 cookie 参数//session_module_name — 获取/设置会话模块名称//session_regenerate_id — 使用新生成的会话 ID 更新现有会话 ID//session_register_shutdown — 关闭会话//session_reset — Re-initialize session array with original values//session_save_path — 读取/设置当前会话的保存路径//session_set_cookie_params — 设置会话 cookie 参数//session_set_save_handler — 设置用户自定义会话存储函数//session_write_close — Write session data and end session
//判断是否登录if(empty($_COOKIE['id'])){echo '<script>window.location.href="login.php";</script>';exit;}
//登录页面<!doctype html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>用户登录</title><link rel="stylesheet" href="list.css"></head><body><h2>用户登录</h2><form action="" method="post" ><!-- <form action="" method="post" onsubmit="return false">--><div class="adds"><div class="tli" id="tips" style="color: red"> </div><div class="tli"><label for="name">账号:</label><input type="text" id="name" name="name" placeholder="请输入用户名" required autofocus value=""/></div><div class="tli"><label for="name">密码:</label><input type="password" id="pass" name="pass" placeholder="请输入密码" required value=""/></div><div class="tli"><button type ="button" onclick="check(this.form)">登录</button></div></div></form></body></html><script>function check(ele){//1、获取表单上的账号和密码let acc= ele.name.value.trim();let pass= ele.pass.value.trim();if(acc.length === 0|| pass.lenth === 0){document.getElementById('tips').innerHTML = "请输入账号和密码";return false;}//2、把账号密码加密成json数据let user =JSON.stringify({name:acc,pass:pass});//3、把数据提交到接口中fetch('check.php',{method:'post',body : user}).then(response=>response.json()).then(json=>{if(json.status != 0){document.getElementById('tips').innerHTML = json.msg;return false;}document.getElementById('tips').innerHTML = "登录成功,等待跳转";setTimeout($=>(window.location.href="list.php"),1000)})}</script>
//验证页面<?phpheader('Content-Type:application/json');require_once 'fun.php';$data = trim(file_get_contents('php://input'));//print_r($data);$user= json_decode($data,true);$find= find('user','*','name="'.$user['name'].'"');if(empty($find)){echo json_encode(['status'=>1,'msg'=>'账号错误']);exit;}//print_r($find['id']);//if($find['name']!= $user['name']){// echo json_encode(['status'=>1,'msg'=>'账号错误']);//}elseif($find['pass']!= md5($user['pass'])){echo json_encode(['status'=>1,'msg'=>'密码错误']);exit;}else{echo json_encode(['status'=>0,'msg'=>'登录成功']);setcookie('id',$find['id']);setcookie('name',$find['name']);}?>
//退出页面<?phpif(empty($_COOKIE['id'])){echo '<script>window.location.href="login.php";</script>';exit;}else{setcookie('id',$_COOKIE['id'],time()-3600);setcookie('name',$_COOKIE['name'],time()-3600);echo '<script>window.location.href="login.php";</script>';}
session_start();// 开启会话//判断是否登录if(empty($_SESSION['id'])){echo '<script>window.location.href="login.php";</script>';exit;}
//登录页面<?phpsession_start();// 开启会话if(!empty($_SESSION['id'])){echo '<script>window.location.href="list.php";</script>';exit;}?><!doctype html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>用户登录</title><link rel="stylesheet" href="list.css"></head><body><h2>用户登录</h2><form action="" method="post" ><!-- <form action="" method="post" onsubmit="return false">--><div class="adds"><div class="tli" id="tips" style="color: red"> </div><div class="tli"><label for="name">账号:</label><input type="text" id="name" name="name" placeholder="请输入用户名" required autofocus value=""/></div><div class="tli"><label for="name">密码:</label><input type="password" id="pass" name="pass" placeholder="请输入密码" required value=""/></div><div class="tli"><button type ="button" onclick="check(this.form)">登录</button></div></div></form></body></html><script>function check(ele){//1、获取表单上的账号和密码let acc= ele.name.value.trim();let pass= ele.pass.value.trim();if(acc.length === 0|| pass.lenth === 0){document.getElementById('tips').innerHTML = "请输入账号和密码";return false;}//2、把账号密码加密成json数据let user =JSON.stringify({name:acc,pass:pass});//3、把数据提交到接口中fetch('check.php',{method:'post',body : user}).then(response=>response.json()).then(json=>{if(json.status != 0){document.getElementById('tips').innerHTML = json.msg;return false;}document.getElementById('tips').innerHTML = "登录成功,等待跳转";setTimeout($=>(window.location.href="list.php"),1000)})}</script>
//验证页面<?phpheader('Content-Type:application/json');session_start();// 开启会话require_once 'fun.php';$data = trim(file_get_contents('php://input'));//print_r($data);$user= json_decode($data,true);$find= find('user','*','name="'.$user['name'].'"');if(empty($find)){echo json_encode(['status'=>1,'msg'=>'账号错误']);exit;}//print_r($find['id']);//if($find['name']!= $user['name']){// echo json_encode(['status'=>1,'msg'=>'账号错误']);//}elseif($find['pass']!= md5($user['pass'])){echo json_encode(['status'=>1,'msg'=>'密码错误']);exit;}else{echo json_encode(['status'=>0,'msg'=>'登录成功']);// setcookie('id',$find['id']);$_SESSION['id']=$find['id'];// setcookie('name',$find['name']);$_SESSION['name']=$find['name'];}?>
//注销登录<?phpsession_start();// 开启会话//判断sessionif(empty($_SESSION['id'])){echo '<script>window.location.href="login.php";</script>';exit;}else{session_unset();echo '<script>window.location.href="login.php";</script>';}
//命名空间 namespacenamespace one;function php(){return '我是one 空间的php函数';}namespace two;function php(){return '我是two 空间的php函数';}echo \one\php(); //我是one 空间的php函数echo '<hr />';echo php(); //我是two 空间的php函数echo '<hr />';
// 变量,类,函数,命名空间 四大类namespace {$name = '小明';//跟空间命名function php(){return '我是根空间的php函数';}class Title{}}namespace one{$name = '小花';function php(){return '我是one空间的php函数';}class Title{}}namespace two{$name = '小花';function php(){return '我是two空间的php函数';}class Title{}echo '<hr />';echo \one\php();echo '<hr />';echo \php();//必须在{}内访问}//echo \one\php(); 无法在{}外访问
//一个文件,一个类,一个命名空间//命名空间namespace 放在代码第一行,但可以放在严谨函数下一行namespace one;$name = '小明';//跟空间命名function php(){return '我是根空间的php函数';}class Title{}
declare (strict_types = 1); //严谨模式namespace one{$name = '小明';//跟空间命名function php(){return '我是根空间的php函数';}class Title{}}namespace one\php{}namespace one\php\not{}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号