1

是否可以同时运行会话和 cookie 助手?因为我正在尝试,但我无法为我的生活设置一个 cookie,无论我尝试采用什么方法,要么将 CI 的文档放在信中并在那里进行操作,要么尝试仅通过本机 php 使用 cookie。无论哪种方式我尝试cookie都不会设置。

我试图将它们设置为:

$this->input-set_cookie('AutoRemember', $mID.'-'.$hashbrown, $shortlife);
and
setcookie('AutoRemember', $mID.'-'.$hashbrown, $shortlife);

我试着和他们一起工作

echo $this->input->cookie('AutoRemember');
and
echo $_COOKIE['AutoRemember'];

cookie 助手是自动加载的,就像会话之一一样,所以它们被加载了。会话助手就像一个魅力,但饼干让我头疼。我想要做的就是设置一个cookie,这样我就可以在我的网站上拥有一个“记住我”的功能,而应该做一个5分钟的交易,我花了几个小时通过各种方式来传递它,或者通过设置一些东西视图拾取,以便它可以在视图中设置它,或者在控制器中设置它,什么都没有。

似乎也不是浏览器问题,因为 Chrome 和 FireFox 似乎都没有在任何地方存储 cookie。

因此,在设置 cookie 时,它​​是同时使用会话和 cookie 还是 codeigniter 垃圾,无论您尝试哪种方式都会扼杀努力。

4

1 回答 1

1

查看一些表达式引擎代码(Ellis Labs 提供的使用 CI 的应用程序),他们setcookie在其函数中调用 PHP 本机函数set_cookie,所以也许这是要走的路。

看起来 cookie 助手与 Session 库一起运行应该没有问题。也就是说,值得注意的是 Session 类是setcookie直接调用而不是使用 cookie 帮助器(重用代码 CI 的方式!)。

一般来说,调用 PHP 函数setcookie应该绕过任何 CI 东西并且无论如何都可以工作,所以如果这不起作用,可能是其他事情发生了。最好的选择可能是开始setcookie并尝试让它发挥作用。

检查 的返回值setcookie,如果它的false输出已经开始,这就是它不工作的原因;也可能是您在尝试 CI cookie 助手时遇到的相同问题。

于 2012-06-26T17:00:55.437 回答