2017-01-09 143 views
-1

我選擇付費方式,使AJAX調用,但我不能夠打印paymentOption參數打印javascript變量在PHP

我試圖將其存儲在cookie中

if(paymentOption == "default_cod"){ 
      processOrderWithCOD(); 
      optionPayment = Cash; 
     } 
document.cookie = "$payment_option = $this.optionPayment"; 

PHP:

<?php 
       $paymentOptionDisplay = $_COOKIE['payment_option']; 
       echo $paymentOptionDisplay ?> 

我只是想打印paymentOption但後來它的值改爲因此需要保存並打印

+0

需要發送到服務器的客戶端的任何變化需要由客戶端發送到服務器 –

回答

0

你必須記住,如果JS和PHP存在於同一個文檔中,PHP將首先執行(在服務器上),而JS將在第二個執行(在瀏覽器上) - 並且兩者不會互動(除了在那裏你用PHP輸出JS,這實際上不是兩個引擎之間的交互)。

換句話說,如果兩個人住在同一個文檔中,並且沒有執行與服務器的額外交互,那麼JS不會在PHP中產生任何影響。此外,PHP對JS的影響僅限於在JS上下文中輸出一些JS或某些東西的簡單能力。

+0

感謝您清除這個概念..你能提出一個解決這個問題的解決方案嗎? 我不能將它存儲在一個cookie中,然後顯示該變量? – Ron

0
$paymentOptionDisplay = $_COOKIE['payment_option']; 

在重新加載/刷新頁面之前,Cookie通常不可用,這就是爲什麼您沒有獲得您期望的值。如果你想要像cookie一樣堅持下去,你真的必須在PHP中進行支付計算並將其存儲在$ _SESSION中。