我的注销脚本有问题。它工作正常,如果用户按下注销它会终止会话并转到 logout.php,用户被告知他们已被注销。
但是当浏览器缓存被清空或者网站不应该连接到互联网并且如果用户单击注销按钮时,它会出现以下错误消息:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
它失败了,因为它无法将注销设置为“1”,所以我想知道如何将 else 语句放在某个地方说重定向到 logout.php,这样我就不会收到那个可怕的语法错误消息。
这是我的代码:
<?php
ob_start();
require('includes/_config/connection.php');
require('includes/functions.php');
?>
<?php
session_start();
$result = mysql_query("UPDATE ptb_users SET user_online='Offline' WHERE id=".$_SESSION['user_id']."")
or die(mysql_error());
?>
<?php
// Four steps to closing a session
// (i.e. logging out)
// 1. Find the session
// 2. Unset all the session variables
$_SESSION = array();
// 3. Destroy the session cookie
if(isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}
// 4. Destroy the session
session_destroy();
redirect_to("login.php?logout=1");
ob_end_flush()
?>