我有一个问题。
在我的网站上,我有以下错误报告级别
// PHP errors that will be reported when the script is run.
error_reporting(0);
问题是当会话超时时我得到一个空白页面,用户必须再次输入地址才能进入主页面并登录。
有没有办法将链接嵌入到上面的代码中,所以当会话超时时它会回显到主页面的链接?
我试过
// PHP errors that will be reported when the script is run.
error_reporting(0);
echo ("index.php");
没有运气,
任何想法?
谢谢你。 :)
答案 0 :(得分:2)
如果用户的会话已过期,您的会话检查代码应对您的登录页面执行HTTP重定向。
session_start();
// Check if User is logged in
if (!isset($_SESSION['current_user'])) {
header("Location: http://example.com/login");
exit;
}
// Code to run when a User is logged in
....
答案 1 :(得分:0)
> error_reporting(0);
错误应始终报告 - 但您应将display_errors设置为'off'以用于生产系统。
> so when the session times out...
会话超时不会引发错误。要么是你的代码触发了错误,要么你正在谈论请求超时。 (如果你没有禁用错误报告,你可能已经能够自己解决这个问题了。)
Stephen提供了一个如何检查无效会话状态的示例,但是从您自己的代码中抛出错误并不一定是坏事,只要您提供捕获它们的机制 - 见set_error_handler。