<?
$DB_SERVER = "서버"; /* 데이터베이스 서버 호스트 이름 */
$DB_NAME = "DB이름"; /* 데이터베이스 이름 */
$DB_USER = "루트"; /* 데이터베이스 사용자 */
$DB_PASS = "*************"; /* 데이터베이스 비밀번호 */
$DB_SELECT_DB = "";
$SESS_LIFE = get_cfg_var("session.gc_maxlifetime");
함수 sess_open($save_path, $session_name) {
전역 $DB_SERVER, $DB_NAME, $DB_USER, $DB_PASS, $DB_SELECT_DB;
if (! $DB_SELECT_DB = mysql_pconnect($DB_SERVER, $DB_USER, $DB_PASS)) {
echo "죄송합니다! MYSQL 오류: $DB_USER로 $DB_SERVER에 연결할 수 없습니다.";
echo "MySQL 오류: ", mysql_error();
주사위;
}
if (!mysql_select_db($DB_NAME, $DB_SELECT_DB)) {
echo "죄송합니다! MYSQL 오류: $DB_NAME 데이터베이스를 선택할 수 없습니다.";
주사위;
}
true를 반환합니다.
}
함수 sess_close() {
사실을 반환;
}
함수 sess_read($SessionKey){
전역 $DB_SELECT_DB, $SESS_LIFE;
$Query = "cdb_global_sessions에서 SessionArray를 선택하세요. WHERE SessionKey = '".$SessionKey."' AND SessionExpTime > " . 시간();
$Result = mysql_query($Query, $DB_SELECT_DB);
if (list($SessionArray) = mysql_fetch_row($Result)) {
$SessionArray를 반환합니다.
}
거짓을 반환;
}
함수 sess_write($SessionKey, $VArray) {
전역 $DB_SELECT_DB, $SESS_LIFE;
$SessionExpTime = 시간() + $SESS_LIFE;
$SessionArray = addlashes($VArray);
$Query = "cdb_global_sessions(SessionKey,SessionExpTime,SessionArray)에 삽입 VALUES('".$SessionKey."','".$SessionExpTime."','".$SessionArray."')";
$Result = mysql_query($Query, $DB_SELECT_DB);
if (!$Result){
$Query = "cdb_global_sessions SET SessionExpTime = '".$SessionExpTime."', SessionArray = '".$SessionArray."' WHERE SessionKey = '".$SessionKey."' AND SessionExpTime > " . 시간();
$Result = mysql_query($Query, $DB_SELECT_DB);
}
$Result를 반환합니다.
}
함수 sess_destroy($SessionKey) {
글로벌 $DB_SELECT_DB;
$Query = "SessionKey = '".$SessionKey."'";
$Result = mysql_query($Query, $DB_SELECT_DB);
$Result를 반환합니다.
}
함수 sess_gc($maxlifetime) {
글로벌 $DB_SELECT_DB;
$Query = "SessionExpTime < "인 cdb_global_sessions에서 삭제하세요. 시간();
$Result = mysql_query($Query, $DB_SELECT_DB);
mysql_affected_rows($DB_SELECT_DB)를 반환합니다.
}
session_set_save_handler(
"sess_open",
"sess_close",
"sess_read",
"sess_write",
"sess_destroy",
"sess_gc");
세션_시작();
?>