通常、セッションは /tmp ディレクトリに配置され、このフォルダーのアクセス許可は誰でも読み取ることができます。これは非常に恐ろしいことです。かつて誰かが学校フォーラムのセッションを通じてアカウントを盗んだことがあります。そこで、後でセッションをデータベースに入れようとしました。テーブルの構造とプロセスは次のとおりです:
//テーブルの作成
//create sesslib.sql
CREATE TABLE sesslib (
data text,
time datetime,
id) int(11) DEFAULT ' 0' NOT NULL auto_increment、
sid varchar(32) NOT NULL、
PRIMARY KEY (id)、
UNIQUE sid (sid)
);
//End
//XX.php はデータベースをカスタマイズしますセッションのパス //session を使用する必要がある場合、使用方法は次のとおりです:
include "XX.php";//XX.php
session_start(); // 以下でセッションを通常に使用できます
/************************************************* ****/
XX.php content:
$sess_dbh=""; =get_cfg_var("session.gc_maxlifetime" );
function sess_open($save_path, $session_name) {
global $hostname, $dbusername, $dbname, $sess_dbh ("データベースに接続できません!"); $sess_dbh=mysql_pconnect('localhost','test','test') または die("データベースに接続できません!");
// mysql_select_db("$dbname") または die ("データベースを選択できません!") ;
mysql_select_db('test') または die("データベースを選択できません!");
return(true)
function sess_close() {
//mysql_close()
function sess_read($sid) {
global $sess_dbh;
$result = mysql_query("sid='$sid' の sesslib からデータを選択", $sess_dbh);
http://www.bkjia.com/PHPjc/445162.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/445162.html
技術記事
通常、セッションは /tmp ディレクトリに配置され、このフォルダーのアクセス許可は誰でも読み取ることができます。これは非常に恐ろしいことです。かつて誰かが学校フォーラムのセッションを通じてアカウントを盗んだことがあります。それで、後で試してみました...