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("登入狀態無法就行本操作!"); }}
//刪除cookiesfunction _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");while (!!$_rows = _fetch_array_list($_result)) {?> <dl>
class="user">echo $_rows['tg_username']?>echo $_rows['tg_sex']?>
$_rows['tg_face']?>" alt="" />