簡體   English   中英

Cookie值在Ajax php腳本中為空

[英]Cookie value empty in ajax php script

當我發出jQuery AJAX請求時,cookie被顯示為空。 我嘗試設置一個會話來代替,並且可以,但是我希望它是一個cookie,而不是一個會話。 它不是跨域的,僅存儲一個簡單的1個字符。 我想檢索號碼,做點什么,然后更新號碼。 當然,我可以使用會話,但是我希望它是一個cookie。

setcookie("currentResult", "", time()+60*60*24*30*12, "/", "*(mysite)**.com", 0,1);

然后我稍后在我的腳本中像這樣添加一個值

$_COOKIE["currentResult"] = $ii;

然后當我像這樣調用AJAX php腳本時;

 jQuery.ajax({
  type: "POST",
    url: "****(myscriptname.php)****",
     dataType: "html",
 data:  "start=" +start,
 success: function(data)
    {
      dataq = jQuery.trim(data);




    }  }); 

但是可惜cookie在那個腳本中是空的。 我在頁面上的即時消息上回顯了它,並且設置得很好,並且沒有問題。

我測試了使用會話執行完全相同的操作,並且該會話在AJAX腳本中存在。 我似乎只對cookie有問題。

它是我嘗試在ajax請求中使用的任何cookie。

我只能找到其他人談論跨域問題,但這不是跨域...我很困惑! 請幫忙!

看一下第7個參數... 1 =不要讓javascript看到此cookie

僅Http
設為TRUE時,只能通過HTTP協議訪問cookie。 這意味着無法通過腳本語言(例如JavaScript)訪問Cookie。 有人建議此設置可以有效地幫助通過XSS攻擊減少身份盜用(盡管並非所有瀏覽器都支持此功能),但是這種說法經常引起爭議。 在PHP 5.2.0中添加。 對或錯

以下是解決方案! 謝謝布拉德!

變成; setcookie(“ currentResult”,“”,time()+ 60 * 60 * 24 * 30 * 12,“ /”,“ *(mysite)**。com”,0,0); 及其固定!

看一下第7個參數... 1 =不要讓javascript看到此cookie

httponly如果為TRUE,則只能通過HTTP協議訪問cookie。 這意味着無法通過腳本語言(例如JavaScript)訪問Cookie。 有人建議此設置可以有效地幫助通過XSS攻擊減少身份盜用(盡管並非所有瀏覽器都支持此功能),但是這種說法經常引起爭議。 在PHP 5.2.0中添加。 對或錯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM