0

我第一次在 CI 中尝试 cookie。不能让它工作。这是我的代码:

class Site extends CI_Controller {

public function index(){
    $this->load->view('input_view');
    $this->load->helper('cookie');
    $this->test();
}

public function test(){
    $cookie = array(
        'name'   => 'Test',
        'value'  => 'The Value',
        'expire' => '86500',
        //'domain' => '.some-domain.com',
        'path'   => '/',
        'prefix' => 'myprefix_',
        'secure' => TRUE
    );

    $this->input->set_cookie($cookie);
    var_dump(get_cookie('Test'));
}

var_dump... 返回 false。我知道这是第一次这样做,但重新加载页面后不应该是真的吗?我在 Chrome 的网络工具中也看不到任何“测试”cookie。我需要“域”行吗?我用谷歌搜索了一些,如果我理解它是可选的?如果不是,我想在那里写什么?本地主机?在我的配置文件中,我有这个 cookie 设置

$config['cookie_prefix']    = "";
$config['cookie_domain']    = "";
$config['cookie_path']      = "/";
$config['cookie_secure']    = FALSE;
4

1 回答 1

3

我猜你没有运行 https 进行开发。

cookie 上的secure标志强制 cookie仅通过 HTTPS 发送

Secure:

If this cookie can ONLY be sent over HTTPS (SSL), set this value to true.

将其设置为 false,cookie 应该可以工作。

于 2013-04-27T14:34:22.003 回答