";
// 設置 Session 儲存路徑
ini_set('session.save_path', '/tmp/conf2024/');
//echo ini_get('session.save_path') ."
";
session_start();
if( !( $_SESSION['user_id'] && $_SESSION['last_activity'] ) ){ // $_SESSION['ip'] &&
if ( isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest') {
// AJAX request
echo "Not a valid IP address, ID, or timestamp, redirect to home;
";
echo "";
print_r($_SESSION);
echo "";
exit;
}else {
// Non-AJAX request?>
";
endif;
// 讀取會話文件內容
$session_data = file_get_contents($file);
//preg_match('/ip\|s:\d+:"([^"]+)";/', $session_data, $matches);
//$ip = $matches[1]; // 提取 IP 地址
preg_match('/last_activity\|i:(\d+);/', $session_data, $matches);
$last_activity = $matches[1]; // 提取 Email 地址
preg_match('/user_id\|s:\d+:"([^"]+)";/', $session_data, $matches);
$user_id = $matches[1]; // 提取 Email 地址
// preg_match('/replay_spring\|i:(\d+);/', $session_data, $matches);
// $replay_spring = $matches[1]; //
// preg_match('/replay_summer\|i:(\d+);/', $session_data, $matches);
// $replay_summer = $matches[1]; //
preg_match('/replay_conf2024\|i:(\d+);/', $session_data, $matches);
$replay_conf2024 = $matches[1]; //
//echo "replay_conf2024: " .$replay_conf2024 ."
";
if($debug):
//echo "IP: " . $ip . "
";
echo "user_id(Email): " . $user_id . "
";
echo "last_activity: " . $last_activity . "
";
// 檢查時間
echo "
### 檢查時間 ###
";
echo "time(): " .time() ."
";
echo "time() - last_activity:" .(time() - $_SESSION['last_activity']) ."
";
endif;
if ( !isset($_SESSION['last_activity']) || (time() - $_SESSION['last_activity']) > 1800 ) {//1800
back_to_home($session_path);
}
// 檢查user_id
if( $debug ):
echo "
### 檢查 user_id ###
";
echo "user_id: " .$user_id ."
";
echo "user_id(Cookie): " .$cookie_user_id ."
";
endif;
if ($cookie_user_id != $user_id){//
back_to_home($session_path);
}
// 檢查春夏季場
//$uri = $_SERVER['REQUEST_URI'];
//echo $uri;
//echo $replay_conf2023;
// if(stripos($uri, "spring")!== false && $replay_spring=="0"){
// $info = "您沒有春季場的回看票券";
// back_to_home($session_path,$info);
// }
// if(stripos($uri, "summer")!== false && $replay_summer=="0"){
// $info = "您沒有夏季場的回看票券";
// back_to_home($session_path,$info);
// }
if( stripos($uri, "conf2024")!== false && $replay_conf2024=="0" ){
$info = "您沒有年會的回看權限";
back_to_home($session_path,$info);
}
// update last_activity
$_SESSION['last_activity'] = time();
}else{
echo "file not find:" ."/tmp/conf2024/sess_" .$session_id;
die();
echo "(跳轉回首頁)";
}
// measure time
$end_time = microtime(true);
$total_time = $end_time - $start_time;
if($debug):
echo "The code took " . $total_time . " seconds to execute.";
endif;
if ( isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest' ) {
echo "closed";
//echo "c1230cvjdcjc1!c_1j@jvacl!allqqxj11cv8j"; //echo "AIA_auth_access";
}
?>