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 ...
随机推荐
- Android自定义Activity酷炫的动画跳转效果
两个Activity跳转的时候,自定义翻页效果: Intent intent = new Intent(FirstActivity.this, SecondActivity.class); sta ...
- 潜在语义分析Latent semantic analysis note(LSA)原理及代码
文章引用:http://blog.sina.com.cn/s/blog_62a9902f0101cjl3.html Latent Semantic Analysis (LSA)也被称为Latent S ...
- .net 文件下载
/** 输入参数* _Request: Page.Request 对象* _Response: Page.Response 对象* _fileName: 下载文件名* _fullPath: 带文件名下 ...
- Kettle 连接失败 Oracle 数据库报 ora-12505 的解决方法(转)
用kettle新建DB连接的时候总是报错,可是用plsql连接是可以连上,错误信息大致如下: 错误连接数据库 [MIS] : org.pentaho.di.core.exception.KettleD ...
- SQL练习之求解填字游戏
SELECT * FROM dbo.spt_values
- JavaScript之JS的执行环境和作用域
一.执行环境是JavaScript中最为重要的一个概念.执行环境定义了变量或函数有权访问的其他数据,决定了他们各自的行为,每个执行环境都有一个与之关联的变量对象(variable object),环境 ...
- JavaScrtip之JS最佳实践
一.JavaScript之平稳退化 这边使用一个当用户点击某个页面内某个链接弹出一个新窗口的案例: JavaScript使用window对象的open()方法来创建新的浏览器窗口; window.op ...
- GridView中日期显示格式
DataFormatString="{0:d}"
- android入门——UI(3)
Spinner控件 ListView控件 一.Spinner控件 点击Spinner会弹出一个包含所有可选值的dropdown菜单,从该菜单中可以为Spinner选择一个新值. 有两种指定数据源的 ...
- PHP删除HTMl标签
/** * 取出html标签 * * @access public * @param string str * @return string * */ function deletehtml($str ...