$explode[2]) {
$data['user_id'] = '';
$data['code'] = '401';
$data['message'] = 'Token已过期,请重新登录';
return $data;
}
if ($true_signature == $explode[3]) {
$data['user_id'] = $explode[0];
$data['code'] = '200';
$data['message'] = 'Token合法';
return $data;
} else {
$data['user_id'] = '';
$data['code'] = '400';
$data['message'] = 'Token不合法';
return $data;
}
} else {
$data['user_id'] = '';
$data['code'] = '400';
$data['message'] = 'Token不合法';
return $data;
}
}
$token = $_REQUEST["token"];
#echo $token . "
";
$result = CheckToken($token);
#echo $result['user_id'] . "
";
#echo $result['code'] . "
";
#echo $result['message'] . "
";
$user_id = $result['user_id'];
$token_code = $result['code'];
$token_message = $result['message'];
#session_start(); #session_start()一開始執行會把session打開並鎖住,最後需commit才能釋放。
/*
1.一開始的api-account-reply.php要產生ID、起始時間、結束時間與hash值,同時將此三者存入session (之後取消)
2.include-session-security.php是第一支且每隻程式都有,因此要把session的值讀出來 (之後取消)
3.如沒有收到ID、起始時間、結束時間與hash值,任何一個,代表如果有問題,直接 header("Location: api-account-send.php?errno=3");
4.如均有收到ID、起始時間、結束時間與hash值,但session為空,則帶入user_id。(同時比對正確則更新數據update session:之後取消)
若比對失敗則直接 header("Location: api-account-send.php?errno=3");
直接改版用WEB測試:
1.如果沒有Token, 取出user_id
2.如果不是
*/
#if(empty($_SESSION['user_id'])){
if(($token == "") or ($token_code <> "200")){ #改善Session問題
#header("Location:api-account-send.php?errno=3");
#exit(); #此行如果加上去無法產生檔案會導致app-maintenance-uploadsuccess-suveryupload.php無法產生檔案
/*
可以改成header("Location:api-account-send.php?errno=3");
*/
#echo "Illegal access!";
#exit();
}else{
date_default_timezone_set("Asia/Taipei"); #設定所有的時間以台北為基準
}
#session_commit();
?>