Cookie在PHP中不起作用,但可以使用Javascript

时间:2013-09-18 09:02:05

标签: php jquery cookies

我需要查看产品购物车,我需要通过PHP和其他查询(通过删除产品或类似产品进行更新)通过jQuery post进行首次加载。

好的,有问题。

[我通过JSON在同一个php文件中获取变量“any.php”]

第一个PHP加载不起作用,当我在PHP上执行第一个isset($_COOKIE)(通过curl)并返回NULL,但是..如果我在jQuery PHP上调用方法.post("any.php"),它返回带有产品的购物车。

添加我使用PHP函数的产品

setcookie($cookieName, $createcart, $cookieExpire);

Cookie Params:

session_set_cookie_params(
    time()+3600,
    '/',
    '.test.com',
    0,
    0
);

setCookie(createcart是json值):

setcookie($cookieName, $createcart, $cookieExpire);

PHPINFO

session

Session Support enabled
Registered save handlers    files user
Registered serializer handlers  php php_binary wddx

Directive   Local Value Master Value
session.auto_start  Off Off
session.bug_compat_42   Off Off
session.bug_compat_warn Off Off
session.cache_expire    180 180
session.cache_limiter   nocache nocache
session.cookie_domain   .test.com.pe    no value
session.cookie_httponly Off Off
session.cookie_lifetime 1379499657  0
session.cookie_path /   /
session.cookie_secure   Off Off
session.entropy_file    no value    no value
session.entropy_length  0   0
session.gc_divisor  1000    1000
session.gc_maxlifetime  1440    1440
session.gc_probability  1   1
session.hash_bits_per_character 5   5
session.hash_function   0   0
session.name    PHPSESSID   PHPSESSID
session.referer_check   no value    no value
session.save_handler    files   files
session.save_path   /var/lib/php/session    /var/lib/php/session
session.serialize_handler   php php
session.use_cookies On  On
session.use_only_cookies    On  On
session.use_trans_sid   0   0

2 个答案:

答案 0 :(得分:0)

来自:http://php.net/manual/en/function.setcookie.php

  

常见陷阱:

     

在下次加载页面之前,Cookie才会显示   cookie应该是可见的。测试cookie是否成功   设置,检查cookie之前的下一个加载页面上的cookie   到期。过期时间通过expire参数设置。一个很好的方式   通过简单调用来调试cookie的存在   的print_r($ _ COOKIE);

另请参阅:How can I set a cookie and then redirect in PHP?

答案 1 :(得分:0)

问题可能是cookie的路径。你需要在整个页面中正确地编写它。

路径

  

可在其上使用cookie的服务器上的路径。如果设置为“/”,则cookie将在整个域中可用。如果设置为'/ foo /',则cookie只能在/ foo /目录和所有子目录中使用,例如/ foo / bar / of domain。默认值是设置cookie的当前目录。

来自http://www.php.net/manual/en/function.setcookie.php

相关问题