当前位置: 首页 > news >正文

网站建设组织discuz 网站搬家

网站建设组织,discuz 网站搬家,网站 用cms 侵权,网站搭建合同模板1、会话的基本知识 # 会话## 1.会话是什么#xff1f;客户端与服务器之间的对话交流## 2.为什么需要会话#xff1f;-http 协议是无状态的#xff08;六亲不认#xff09;-同一用户多次访问同一网站#xff0c;对网站来说#xff0c;每次都是全新的-网站不能识别用户身份…1、会话的基本知识 # 会话## 1.会话是什么客户端与服务器之间的对话交流## 2.为什么需要会话-http 协议是无状态的六亲不认-同一用户多次访问同一网站对网站来说每次都是全新的-网站不能识别用户身份不能为用户提供个性化服务 -用户需要被关怀被尊重-相同的操作不应该换个页面就重复进行例如登录、注册-用户信息应该在多个页面间共享例如购物车## 3.会话的基本步骤 和人与人之间的交流几乎一样1.开启会话初次见面相互介绍递个名片请多关照 2.访问网站再次见面报上姓名原来是你欢迎光临 3.数据交换对话交流及时反馈谈话内容立刻存档 4.销毁对话相谈甚欢恋恋不舍谈判破裂关门送客## 4.会话存储位置1.客户端cookie 2.服务端session## 5.PHP对应的操作变量 1.$_COOKIE 2.$_SESSION2、客户端会话 ?php namespace _0822;//客户端会话存储(cookie)//1.设置(正常情况下,会把中文的值变为Unicode编码,如果想显示中文,就用setrawcookie) //raw是原始的意思// setcookie(site,php中文网); setrawcookie(site,php中文网);//2.查看($_COOKIE是一个超全局变量,无作用域,任何地方都能用) echo $_COOKIE[site] ?? 未定义site. hr;//3.设置多个(建议使用数组语法) setcookie(user[name],admin); setcookie(user[email],adminqq.com); setcookie(user[age],40);if(isset($_COOKIE[user])){foreach($_COOKIE[user] as $key $value){printf([%s] %sbr,$key,$value);} }else{echo 未定义user; }//4.删除(setcookie的第三个参数是过期时间) //给一个已过期的时间就可以了 setcookie(welcome,hello world,time()-3600);/*** 将过多信息存储在客户端,并不合适* 1.数量受限:30个* 2.空间受限:4k* 3.安全隐患:天生不可避免* * 所以,会话信息推荐存储在服务器端* 客户端只需要保存一个会话id,用于标识访问身份即可*/3、服务端会话  ?phpnamespace _0822;//服务器端会话(session)//1.启动会话 session_start();/*** 启动会话做了二件事* 1.浏览器:创建会话IDPHPSESSID一串md5加密的字符串* 2.服务器:创建与浏览器会话ID对应的会话文件一个会话文件对应一个用户*///1.设置 $_SESSION[email] adminphp.cn; //sha1是40位字符串md5是32位 $_SESSION[password] sha1(md5(123456) . phpcn123);//session //email|s:12:adminphp.cn;password|s:40:8dc7df199a6642d631c11de069b2357e4b470cd0; //!email指变量名,s指字符串,12指它值的长度(adminphp.cn的长度) //把用户的session信息进行了序列化,序列化就是把这些变量,数组,或对象转换为字符串形式,这样的话就方便存储到数据库中,继而便于通过网络进行传输,或者各个语言间的数据交换//2.更新 $_SESSION[email] peterphp.cn;//3.删除 // unset($_SESSION[email]); // unset($_SESSION[password]);//一个一个删除太low了,更优雅地删除(一次性删除全部的session信息) session_unset();//更狠地删除(直接把服务器的会话文件都删除了) session_destroy(); 比如说登录时就带上登录信息跳转到handler.php这个页面进行登录处理到这个数据表中进行验证,看看有没有这个用户,如果注册,就把用户插入到表中,退出就直接销毁会话就可以了.  4、登录页面(login.php) !DOCTYPE html html langenheadmeta charsetUTF-8title用户登录/titlelink relstylesheet typetext/css hrefcss/style.css /headbodyh3用户登录/h3form actionhandle.php?actionlogin methodpostdivlabel foremail邮箱:/labelinput typeemail nameemail idemail placeholderdemoemail.com required autofocus/divdivlabel forpassword密码:/labelinput typepassword namepassword idpassword placeholder不少于6位 required/divdivbutton提交/button/div/forma hrefregister.php还没有帐号, 注册一个吧/a /body/html5、入口文件(index.php) ?php namespace _0822; session_start(); //判断是否已经登录? if(isset($_SESSION[user])){$user unserialize($_SESSION[user]); } // print_r($user); ? !DOCTYPE html html langen headmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0title首页/入口文件/titlelink relstylesheet hrefcss/index.css /head bodynava hrefindex.php我的博客/a?php if(isset($user)) :?span stylemargin-left: 300px;?$user[name]?/spana idlogout退出/a?php else:?a hreflogin.php登录/a?php endif?/navscriptdocument.querySelector(#logout).addEventListener(click,function(event){if(confirm(是否退出)){//禁用默认行为,其实就是禁用原a标签的点击跳转行为,使用事件中的自定义方法去处理event.preventDefault();//跳转到退出事件处理器window.location.assign(handle.php?actionlogout);}})/script /body /html 6、 注册页面(register.php) !DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0link relstylesheet typetext/css hrefcss/style.csstitle注册用户/title /headbodyh3用户注册/h3form actionhandle.php?actionregister methodpost onsubmitreturn compare()divlabel forname呢称:/labelinput typetext namename idname placeholder不少于3个字符 required autofocus/divdivlabel foremail邮箱:/labelinput typeemail nameemail idemail placeholderdemoemail.com required/divdivlabel forp1密码:/labelinput typepassword namep1 idp1 placeholder不少于6位 required/divdivlabel forp2重复:/labelinput typepassword namep2 idp2 placeholder必须与上面一致 required/divdivbutton提交/buttonspan idtips stylecolor: red/span/div/forma hreflogin.php我有帐号,直接登录/ascript// 验证二次密码是否相等?function compare() {if (document.forms[0].p1.value.trim() ! document.forms[0].p2.value.trim()) {document.querySelector(#tips).innerText 二次密码不相等;return false;}}/script /body/html7、处理器文件(handle.php) ?phpnamespace _0822;use PDO;//开启会话:必须写在第一行session_start();//sql//查询用户表中的数据use表 $db new PDO(mysql:dbnamephpedu, root, root); $stmt $db-prepare(SELECT * FROM user); if($stmt-execute()){$users $stmt-fetchAll(PDO::FETCH_ASSOC); }else{print_r($stmt-errorInfo()); }//获取用户操作类型 $action strtolower($_GET[action]);switch ($action) {//1.登录case login:if ($_SERVER[REQUEST_METHOD] POST) {//获取登录用户的数据:邮箱和密码$email $_POST[email];$password sha1($_POST[password]);// echo $password;// die($email);$result array_filter($users, function ($user) use ($email, $password) {return $user[email] $email $user[password] $password;});if (count($result) 1) {//登陆成功写入session$_SESSION[user] serialize(array_pop($result));exit(scriptalert(验证通过); location.hrefindex.php;/script);}}//2.退出//no breakcase logout:if (isset($_SESSION[user])) {session_destroy();exit(scriptalert(退出成功);location.hrefindex.php/script);}//注册case register://1.获取新用户数据$name $_POST[name];$email $_POST[email];$password sha1($_POST[p2]);$register_time time();//2.sql$sql SQLINSERT userSET name ?,email ?,password ?,register_time ?; SQL;$stmt $db-prepare($sql);$data [$name, $email, $password, $register_time];if ($stmt-execute($data)) {if ($stmt-rowCount() 0) {//注册成功之后,让用户自动登录$sql SELECT * FROM user WHERE id . $db-lastInsertId();$stmt $db-prepare($sql);$stmt-execute();$newUser $stmt-fetch(PDO::FETCH_ASSOC);$_SESSION[user] serialize($newUser);exit(scriptalert(注册成功);location.hrefindex.php/script);} else {exit(scriptalert(注册失败);location.hrefregister.php/script);}} else {print_r($stmt-errorInfo());}//no breakdefault:exit(参数非法或未定义操作); }
http://www.yayakq.cn/news/2815/

相关文章:

  • 更换网站需要备案吗装饰公司手机网站
  • 网站开发及建设做门户网站的公司
  • 如何高效建设品牌网站百度收录网站多久
  • 网站建设推进会免费的网站程序
  • 北京做网站建设的公司有哪些个人网站备案 照片
  • 营销型网站制作方案宝塔做的网站网页打不开
  • 宝山做网站中国建设银行网站登录
  • 怎么查网站备案信息查询中山网站改版
  • 濮阳网站注册上海移动端网络推广哪家强
  • 网站建设有技术的公司邯郸大名网站建设
  • 速拓科技是做网站网上推广的平台有哪些
  • 谷歌网站开发客户怎么去推广一个app
  • 赤峰做网站建设的企业郑州编程培训机构排名前十
  • 专注集团网站建设辽宁同鑫建设有限公司网站
  • 成都市建设部官方网站wordpress免费有趣插件
  • 金融投资公司网站建设论文wordpress个性首页
  • 网站开发公司企业购物网站模板带后台
  • 屏蔽阿里云网站吗响应式网站建设开发公司
  • 大连网站模板建站wordpress拖拽式
  • 各类网站导航网页页面建设方案
  • 网站建设难学吗金融公司网站建设模板
  • 网站如何做导航条下拉菜单网站策划与建设
  • 465端口 WordPress关键词排名优化方法
  • 怎么查询网站的服务器在哪里一级域名与二级域名玩法
  • 台州做网站seo万能浏览器手机版下载
  • 设计网站怎么设计网络用户管理系统注册
  • php网站开发面试题广东省网站集约化建设通知
  • 程序员代做网站违法茂名网站设计
  • yy头像在线制作网站软件注册推广平台
  • 禹州市城乡建设局网站wordpress栏目标题