2017-05-03 139 views
2

我創建了一個頁面,該頁面通過單擊按鈕(ajax與PHP)來設置cookie,然後重定向到不同的頁面頁面(JavaScript)。在ajax調用(PHP)中設置cookie,然後在ajax回調(JavaScript)中重定向

$.ajax({ 
    url: "addTeacher.php", 
    dataType: 'html', 
    data: text, 
    cache: false, 
    type: "GET", 
    success: function(html) {               

     window.location = "teacherList.php"; 
    } 
}); 

但是當我嘗試訪問該組中的cookie正被重定向到(teacherList.php)的頁面是空的。如果再次刷新重定向的頁面,則可訪問cookie。

這是我如何在addTeacher.php中設置cookie。

addTeacher($teacher, $items);  
setcookie("$teacher_id", "$teacher_id", time() + (86400 * 1), "/"); 
+0

確保沒有被在頭的cookie之前輸出。另外爲什麼你有變數的引號?只是好奇 – Akintunde007

+0

我認爲你需要使用setcookie('teacher_id',$ teacher_id,time()+ ......否則稍後有點難以獲取cookie – Scriptman

回答

2

你必須發送AJAX的異步請求,使Ajax請求完成後,你有餅乾由you.Hope設置你會得到it.Thanks

+1

爲什麼你不發表評論? – Akintunde007

+0

我是新來的stackoverflow.Should回答這個問題或評論? –

0

事實證明,設置路徑在AJAX請求中發送cookie時,選項非常重要。如果設置路徑= /,例如:

Set-Cookie:SessionId=foo; Path=/; HttpOnly 

請參閱此: Setting cookies in an ajax request