我是CI和MVC的新手。我想知道如何在用户重新加载时(通过按base_url();
或点击重新加载按钮)重定向到F5
到目前为止已完成的步骤: - 我在教程平面http://tutorialsplane.com/codeigniter-redirect-refresh/
中看到了这篇文章我使用了帖子redirect(base_url(),"refresh");
中给出的代码,但这样做的目的是重定向到base_url();无论。
我想知道这里有什么问题,有人可以指导我完成吗?
答案 0 :(得分:0)
不确定这是否有效但可能。
session_start()
if($_session["page"] != basename($_SERVER['PHP_SELF']) || !isset($_session["page"]))
$_session["page"] = basename($_SERVER['PHP_SELF']);
}else{
//reload has been done
}
因此,如果未设置会话变量或与当前文件名不相同,则会更新会话变量 那么其他是你需要填写的东西 您需要将此代码添加到您的所有页面
编辑现在看到你使用CodeIgniter。不知道你是否可以使用它。
答案 1 :(得分:0)
codeigniter redirect()
未检测到刷新。您正在使用的选项是一种重定向。
查看this以获取更新的示例。
将其中一个检测项放入控制器方法或__construct
如果它适用于所有方法,则在检测到刷新时使用重定向。
例如来自'Gideon Rosenthal'的链接;
$pageWasRefreshed = isset($_SERVER['HTTP_CACHE_CONTROL']) && $_SERVER['HTTP_CACHE_CONTROL'] === 'max-age=0'; if($pageWasRefreshed ) { //do something because page was refreshed; } else { //do nothing; }
评论说这种方法可能有其局限性。
许多其他人
js检测很容易插入,不需要CI知道重定向。