如何让header("Location: /path");
仅重定向一次?
Currenlty我有这个:
//If account is locked by user.
if($userdata['account_locked'] == 1):
header("Location: /account/locked");
endif;
在我的头文件中检查此脚本。但它不起作用,因为它只会创建一个循环重定向(无限循环)
我该怎么做,所以它只重定向一次?
提前致谢。
答案 0 :(得分:1)
这很简单,但有点难看......
//If account is locked by user.
if($userdata['account_locked'] == 1):
if ($_SERVER['REQUEST_URI'] != "/account/locked") header("Location: /account/locked");
endif;
你应该使用MVC,控制器应该知道循环。
EDITED 最好使用
$_SERVER['PHP_SELF']
而不是
$_SERVER['REQUEST_URI'].
编辑:从URL更改为URI。
答案 1 :(得分:0)
if($userdata['account_locked'] == 1 && $_SERVER['HTTP_REFERER'] != 'http://'.$_SERVER['HTTP_HOST'].'/account/locked'):
header("Location: /account/locked");
endif;