㈠ session 存入資料庫有什麼好處
控制一個帳號只能一個人登錄
統計在線人數
踢出某個在線用戶
多站點共享session
支持伺服器斷電和重啟
㈡ 為什麼將session存在資料庫
建立資料庫和資料庫的表結構,我們可以採用php可以使用的任何的資料庫,因為php和mysql的結合最好,我就使用mysql來做事例,當然根據你的需要可以改稱別的資料庫,同時因為mysql沒有事物的功能,這也比別的資料庫更快,然而保存session 書、一 不許要事物處理的,再者里我決的更好。
創建資料庫:
復制代碼 代碼如下:CREATE DATABASE 'session'; 創建表結構 CREATE TABLE 'session'( id CHAR(30) NOT NULL , 'user 'CHAR(30), data CHAR(3000) ,PARMIRY BY ('id') );
下面我們來編寫保存session的文件session_start.php
復制代碼 代碼如下:<?php
$con =mysql_connection("127.0.0.1","user" , "pass");
mysql_select_db("session");
function open($save_path, $session_name){return(true);}function close(){return(true);}function read($id){if($result = mysql_query("SELECT * FROM session WHERE id='$id'")){if($row = mysql_felth_row($result ))
{ return $row["data"]; }}else{return "";}}function write($id, $sess_data){if($result = mysql_query("UPDATE session SET data='$sess_data' WHERE id='$id'")){return true;}else{return false;}}function destroy($id){if($result = mysql_query("DELETE * FROM session WHERE id='$id'")){return true;}else{return false;}}/*********************************************
* WARNING - You will need to implement some *
* sort of garbage collection routine here. *
*********************************************/
function gc($maxlifetime){return true;}session_set_save_handler("open", "close", "read", "write", "destroy", "gc");
session_start();
// proceed to use sessions normally?>現在我們的工作就已經完成了,只要你在需要在使用session的時候,把session_user_start.php。包含進來,
注意,這個文件一定要在文件的第一行包含,然後就想使用文件的session一樣的方法使用舊可以了。
㈢ 請問在web工程中如何把當前session中的人員登陸信息用log4j記錄並保存到資料庫
1.log4j.properties放在src目錄下,你那個報錯應該是appender沒定義好
2.log4j自帶的幾個appender只包含日誌的時間、線程、版類和行數、信息權、異常,寫到資料庫只能用PatternLayout,不支持異常處理,更不用說自定義登錄信息了
3.如果要添加自己的信息,需要自己寫一個appender類繼承於JDBCAppender,再寫一個loggingevent類繼承於LoggingEvent,方便把自定義信息傳給appender,最後寫一個logger的工廠類,生成自定義event,實例化的時候,new自己寫的logger類
4.寫上面的東西需要對log4j源碼研究透徹,加油吧
㈣ 怎麼樣將存儲在cookies和session中的用戶信息添加到資料庫中
你是怎麼存儲的:
例如是將名字放在一個session里,將地址放在另一個session等等 還是將他們全都放在同一個session中了
㈤ 將session存儲到資料庫有什麼優點
SQL的調用可以分為函數和存儲過程
個人理解,其實函數和存儲過程是相似的,至少在引用的時候跟函數很是一樣。或者乾脆把存儲過程理解為另一種函數,另一種經過優化的函數。它的優點在於,存儲過程在被編譯後會被直接保存在資料庫中,成為資料庫的一部分,以後就可以反復調用,運行速度快,效率高。。。這些是函數做不到的
解釋不專業,就是個人的理解o(∩_∩)o