PHP练习项目笔记之COOKIES
主要是在登录和退出的时候,设置cookies。来保存登录和安全退出
1:在登录页面设置
//设置cookies的值
_setcookies($_rows['tg_username'], $_rows['tg_uniqid'],$_clean['time']);
_location(null,'index.php');
第二步:生成cookie,
/**
* _setcookies
* @param unknown $_username
* @param unknown $_uniqid
*/
function _setcookies($_username,$_uniqid,$_time){
setcookie('username',$_username);
setcookie('uniqid',$_uniqid);
switch ($_time) {
case '0' : // 设置浏览器进程
setcookie ( 'username', $_username );
setcookie ( 'uniqid', $_uniqid );
break;
case '1' : // 一天的进程
setcookie ( 'username', $_username, $_time () + 86400 );
setcookie ( 'uniqid', $_uniqid, $_time () + 86400 );
break;
case '2' : // 一周的进程
setcookie ( 'username', $_username, $_time () + 604800 );
setcookie ( 'uniqid', $_uniqid, $_time () + 604800 );
break;
case '0' : // 一个月的进程
setcookie ( 'username', $_username, $_time () + 2592000 );
setcookie ( 'uniqid', $_uniqid, $_time () + 2592000 );
break;
}
}
第三步:登录状态中设置
//登录的情况,就是防止登陆后通过在浏览器中直接连接再次登录
function _login_state(){
if (!isset($_COOKIE['username'])) {
_alert_back("登录状态无法就行本操作!");
}
}
//删除cookies
function _unsetcookies(){
setcookie('username','',time()-1);
setcookie('uniqid','',time()-1);
_session_destroy();//删除session
_location(null,'index.php'); //做跳转
}
第四步在登录页面和退出页面加上
//登录状态
_login_state();
显示数据的二个方法:在数据配置文件中配置,我的是mysql.func.php
/**
* _fetch_array 只能获取一条数据组
* @param $_sql
*/ function _fetch_array($_sql) {
return mysql_fetch_array(_query($_sql),MYSQL_ASSOC);
}
/**
* _fetch_array_list可以返回指定数据集的所有数据
* @param unknown $_result
* @return multitype:
*/
function _fetch_array_list($_result){
return mysql_fetch_array($_result,MYSQL_ASSOC);
}
最后在页面中赋值
//从数据库里提取数据获取结果集
//我们必须每次重新读取结果集,而不是从新去执行SQL语句。
$_result = _query("SELECT tg_username,tg_sex,tg_face FROM tg_user ORDER BY tg_reg_time DESC"); <?php while (!!$_rows = _fetch_array_list($_result)) {?>
<dl>
<dd class="user"><?php echo $_rows['tg_username']?><?php echo $_rows['tg_sex']?></dd>
<dt><img src="<?php echo $_rows['tg_face']?>" alt="" /></dt>
PHP练习项目笔记之COOKIES的更多相关文章
- Django项目笔记:sessions处理以及复杂对象序列化
前言:一点题外话 我发现,不更新博客的时候,不是非常忙,就是效率非常低.最近没怎么更新博客,原因是第二种= =.惭愧惭愧. 今天效率出奇的高,一天时间把PassNote后端的接口全部写完了,Djang ...
- 《BI项目笔记》——微软BI项目笔记连载
本系列文章主要是结合实际项目,加上自己的总结,整理出来的一系列项目笔记,涉及微软SQL Server2008中商务智能开发中的SSAS.SSIS模块: 准备工作: <BI项目笔记>基于雪 ...
- 项目笔记---CSharp图片处理
原文:项目笔记---CSharp图片处理 项目笔记---CSharp图片处理 最近由于项目上需要对图片进行二值化处理,就学习了相关的图片处理上的知识,从开始的二值化的意义到动态阀值检测二值化等等,并用 ...
- Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid
Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid 上一步获取QQ登录网址之后,测试登录之后本该跳转到这个界面 但是报错了: 新建oauth_callback.html & ...
- Django商城项目笔记No.11用户部分-QQ登录1获取QQ登录网址
Django商城项目笔记No.11用户部分-QQ登录 QQ登录,亦即我们所说的第三方登录,是指用户可以不在本项目中输入密码,而直接通过第三方的验证,成功登录本项目. 若想实现QQ登录,需要成为QQ互联 ...
- Django商城项目笔记No.10用户部分-登录接口
Django商城项目笔记No.10用户部分-登录接口 添加url路由 接下来第二步,增加返回内容: 增加结果如下: 配置:上边的方法定义了返回的内容都有哪些,那这个方法jwt还不知道,需要配置: 修改 ...
- Django商城项目笔记No.9用户部分-注册接口签发JWTtoken
Django商城项目笔记No.9用户部分-注册接口签发JWTtoken 我们在验证完用户的身份后(检验用户名和密码),需要向用户签发JWT,在需要用到用户身份信息的时候,还需核验用户的JWT. 关于签 ...
- Django商城项目笔记No.8用户部分-注册接口实现
Django商城项目笔记No.8用户部分-注册接口实现 users的view.py中增加如下代码 class RegisterUserView(CreateAPIView): "" ...
- Django商城项目笔记No.7用户部分-注册接口-判断用户名和手机号是否存在
Django商城项目笔记No.7用户部分-注册接口-判断用户名和手机号是否存在 判断用户名是否存在 后端视图代码实现,在users/view.py里编写如下代码 class UsernameCount ...
随机推荐
- css新属性box-sizing应用
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ECSHOP 模版文件里的编辑区域
Ecshop 中的模板能够有可编辑区域,在模板中是通过 <!-- TemplateBeginEditable name="左边区域" --> <!-- Templ ...
- Android入门第十六篇之Style与Theme [转]
本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 越来越多互联网企业都在Android平台上部署其客户端,为了提升用户体验,这些客户端都做得布局合理而且美观.. ...
- 一个cocoapods问题的解决,希望能帮助到遇到相似情况的人
之前10.7的系统上执行过cocoapods没有问题.如今系统版本号升级到了10.9,尝试使用cocoapods遇到问题,报告了类似以下的错误: Psych::SyntaxError - (/User ...
- visio 2013 破解工具 - KMSpico
背景:环境是 win7, 64 bit装了 visio 2013 , 可以却不能用它来画图,在网上找了一些破解工具,大都不能解决问题.网上不靠谱的广告型文章太多了,比较头痛. 所幸,终于找到正确的破解 ...
- 寻找所有javaee官方文档的方法
所有跟java有关的首先要去oracle官网. 所有文档都放在: Oracle Technology Network 即:著名的OTN网站 链接在首页的最后一个标签: 侧面就是documentions ...
- 块对象block小结
blcok的形式 ^(参数列){主体} block作为返回值
- [vc]如何对radio按钮分组
如何使用多组? 多组和一组是一样的使用,只要搞清楚哪个是哪一组的就行了.再为对话框添加Radio3和Radio4.很简单,先为这些RadioButton排个顺序,就是排列他们的TABORDER.在对话 ...
- hdu3507
题意: 给n(n<=10^6)个非负数字,放在一个数组num中,再给一个特殊值m.求将这个数组分成任意多个区间,每个区间[a,b]的值定义为( sigma(num[i] | (a<=i&l ...
- Oracle包的概念
转自:http://www.cnblogs.com/lovemoon714/archive/2012/02/29/2373695.html 1.为什么要使用包? 答: 在一个大型项目中,可 ...