主要是在登錄和退出的時候,設置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>
以上所述就是本文的全部內容了,希望大家能夠喜歡。
新聞熱點
疑難解答