如何在php中使用ajax请求服务器端在chrome中设置cookie

时间:2014-08-06 07:09:37

标签: php ajax google-chrome cookies

我曾尝试在AJAX请求中设置一个cookie,但它并没有像预期的那样工作。

我在堆栈溢出方面找到了一些有价值的帮助,但仍然无法使其正常工作。

我知道之前有很多重复的问题,但我真的尝试了所有问题。

以下链接是我尝试过的以下答案:

  1. Can an AJAX response set a cookie?
  2. Code Igniter Cookie
  3. Setting a cookie in an AJAX request?
  4. php setcookie not working with ajax call
  5. 这是我目前使用的代码:

    $name = '_user';
    $value = "hello";
    $expire = time() + 86500;
    $domain = '.localhost';
    $path = '/';
    setcookie($name,$value,$expire,$path,$domain);
    

    这些是 Mozilla Firefox 中的inspect元素的屏幕截图 enter image description here 以及谷歌浏览器中的这个 enter image description here

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题

我之前是这样做的

        $this->input->set_cookie('language', 'en');

我也是这样做的:

        $cookie = array(
            'name'   => 'language',
            'value'  => 'en',
        );
        $this->input->set_cookie($cookie);

两者都不起作用,我尝试给它一个过期日期并将cookie作为数组传递

        $cookie = array(
            'name'   => 'language',
            'value'  => $this->session->userdata('language'),
            'expire' => '86500',
        );
        $this->input->set_cookie($cookie);

而且,我让这个工作......