繁体   English   中英

PHP-仅重定向一次

[英]PHP - Redirect only once

如何制作header("Location: /path"); 只重定向一次?

Currenlty我有这个:

//If account is locked by user.
if($userdata['account_locked']  == 1):
    header("Location: /account/locked");
endif;

该脚本在我的头文件中检查。 但这不起作用,因为它只会创建循环重定向(无限循环)

我该怎么办,因此只能重定向一次?

提前致谢。

这很简单,但是有点丑陋...

//If account is locked by user.
if($userdata['account_locked']  == 1):
    if ($_SERVER['REQUEST_URI'] != "/account/locked") header("Location: /account/locked");
endif;

您应该使用MVC,控制器应该知道循环。

编辑最好使用

$_SERVER['PHP_SELF']

代替

$_SERVER['REQUEST_URI'].

编辑:从URL更改为URI。

if($userdata['account_locked']  == 1 && $_SERVER['HTTP_REFERER'] != 'http://'.$_SERVER['HTTP_HOST'].'/account/locked'):
    header("Location: /account/locked");
endif;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM