セッションが「準備完了」のとき、つまり15分前とセッション中に特定のボタンを表示するサービスがあります。
これを行うには、最近要求されたすべてのセッションをプルアップし、それらのタイムスタンプを分析してから、そのセッションが予定されている場合は特定のIDをプルします。コードは次のとおりです。
$session_check_query = "SELECT * FROM requested_sessions WHERE username_t = '{$_SESSION['username']}'";
$session_check_process = mysql_query($session_check_query);
date_default_timezone_set($_SESSION['timezone']);
$current_time = time();
while ($sessions = mysql_fetch_array($session_check_process)) {
if ($sessions['time_from_t'] - $current_time <= 900 && $current_time - $sessions['time_from_t'] > 0 && $sessions['accepted'] == 1) {
$session_id = $sessions['id'];
}
}
問題は、ループで$ session_idをエコーすると、1、2、3、4が出力されることです。これは、データベース内のすべてのセッションが、1つだけではなく、この基準を満たしていると感じることを意味します。
このコードに問題はありますか?time_from_tはUNIX形式です。