需要帮助使用$ .post()设置cookie值

时间:2014-09-15 18:46:05

标签: php jquery ajax cookies

我正在运行一个脚本,将$ _COOKIE [' menu_item_id']设置为最后一个插入ID。我正在使用jquery' $ .post这样做。

当使用$ .post的帖子请求时,我无法在我的应用程序的另一部分访问该cookie。我只能在发出请求的同一个php页面中访问它。

我使用会话测试了这个并且运行良好,但是我没有将会话用于这么简单的事情。

为什么我无法通过我的应用程序访问cookie值?

以下是我的代码。

index.php

    $.post("inserNewItem.php", {menu_cat_id : cat_id }

inserNewItem.php

//Preform the insert statment. Get the last_id and assign it to the cookie value "menu_item_id"
$last_id = $db->insert_id;
setcookie("menu_item_id", $last_id);



index.php

//Check if the menu item id has been set after the $.post ajax has been completed 

 if(isset($_COOKIE['menu_item_id'])){
  echo   $_COOKIE['menu_item_id'];
} else {
    echo "cookie is not set"; // I keep getting this 
} 

1 个答案:

答案 0 :(得分:0)

查看setcookie()的手册。您必须以root /作为第4个参数路径传递。然后,您的网站的每个部分都可以访问Cookie。例如:

setcookie('YourCookie', $value, time()+3600, '/');

请记住设置过期时间。在上面的示例中,它会在一小时后过期。