[英]php and javascript cookie
為什么php只有當我刷新頁面兩次時才獲得cookie新值。 當第一次運行頁面時,php不會獲得cookie值。
謝謝
<script type="text/javascript">
var name = 'test1';
var value = '1234';
var expirydays = '1';
expiry = new Date();
expiry.setDate(expiry.getDate() + expirydays);
document.cookie = name+"="+escape(value)+";expires="+expiry.toGMTString();
</script>
<?php
print_r($_COOKIE);
?>
您對PHP和JavaScript的工作方式感到困惑。
PHP首先在服務器端運行。
運行PHP后,JavaScript在用戶瀏覽器的客戶端運行很長時間。
您在JavaScript中設置的cookie永遠不會對生成Javascript的PHP腳本可見:現在為時已晚。 您將不得不重新加載頁面。
順便提一下,即使在頁面重新加載后,通過PHP自己的setcookie()
設置的值也會可見,因為腳本啟動時會填充$_COOKIE
變量。
PHP在服務器上運行,在客戶端上運行JavaScript。 PHP代碼在JavaScript代碼運行之前運行,所以第一次,PHP還沒有cookie。 它第二次工作,因為cookie已經存在。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.