我正在重新编码和更新我的 CMS 我已经在 CI2 和 CI3 中工作,但在我的生活中,我无法让我的重定向功能在 CI3 上为我工作。
除了重新设计我的模型之外,我的代码到目前为止与我的 CI2 代码相同。最初我怀疑我的布局钩子(Hook)是罪魁祸首,但我已经完全禁用了他,但我仍然一无所获。
public function login ()
{
//var_dump(logged_in());
//if (logged_in())
redirect('/user/');
}
以上是我目前的全部登录功能,来 self 的用户 Controller 。我删除了所有其他代码以查明此问题。我什至注释掉了 if
语句,认为它甚至可能是罪魁祸首。不。
我的 logged_in()
函数返回 TRUE 或 FALSE,这取决于我的用户 session 中设置的某些内容。这似乎运作良好。据我所知,我的配置设置看起来不错。我自动加载了 URI 帮助程序,并且其他 URI 帮助程序方法正常运行。
现在是奇怪的部分。当我访问/user/login 时,不仅我的页面没有重定向,如果我在重定向(返回 true)之前取消注释 var_dump()
,然后重新注释它,页面不会'更新,无论如何我的屏幕上都有 bool(true)
。如果 var_dump
被注释,并且我打开一个新标签页到 users/login
它根本不会加载任何东西,它只是作为一个新标签页挂起。
编辑:我忘记提到当我使用“刷新”标志时 (redirect('/user/', 'refresh');
),这只会将我带到一个关于:空白页面。
编辑#2:我已经将 CI3 文件复制到一个新的“项目”中,即使那些文件也不会使用内置的 Welcome_Message View / Controller 组合进行重定向。
最佳答案
添加ob_start();到 Controller
<?php
ob_start();
defined('BASEPATH') OR exit('No direct script access allowed');
class Cart extends CI_Controller {
// code here
}
关于php - CodeIgniter 3 重定向功能不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33686117/