簡體   English   中英

PHP和Javascript交互

[英]PHP and Javascript interaction

我需要在這里澄清一些事情:

我有一個網站,每次在瀏覽器中重新加載網站時都會更新兩個變量的值。 該頁面顯然是HTML頁面,但是變量由javascript函數更新。 該頁面在我的服務器上運行。

PHP是否可以檢索這些變量的值,並使用它們將它們寫入txt文件或XML文件? 我意識到javascript是瀏覽器端的語言,PHP是服務器端的語言,但是我不知道兩者在這種情況下如何正確關聯。

另外,我沒有選擇將JavaScript代碼重新創建為PHP腳本。

我想做的事可能嗎?

謝謝

我不確定何時更新變量(如果在生成頁面時更新了變量,那么為什么不僅使用PHP呢?)。 但是,如果根據用戶執行的某些操作在客戶端更新它們,則只需執行以下操作:

  1. JS變量更新后, 向服務器發出AJAX調用,發送數據
  2. 在服務器端, 根據發送的數據,使用PHP生成TXT或XML文件

第一個可以使用例如。 jQuery的.post()方法 ,可以通過從稱為PHP的腳本(使用AJAX向其發送數據的腳本)中讀取$_POST變量,並將其輸出到TXT文件(例如,通過使用PHP的fwrite()函數 )。

編輯 :關於AJAX有很多參考。 請參閱Mozilla開發人員網絡上有關異步JavaScript + XML (AJAX)的文章

您需要AJAX。 這是一個很好的介紹,如果您遵循下一章,它將為您提供PHP的示例:

http://www.w3schools.com/php/php_ajax_intro.asp

變量arent尚未在PHP腳本運行時設置,因此無法正常工作。 您可以在javascript腳本函數獲取所需的值並將其發送到.php腳本后執行AJAX調用

答案就是AJAX。 您可以直接使用XMLHttpRequest對象,也可以使用類似jQuery的庫進行請求。 然后,您可以使用HTTP-POST-Request將數據發送到服務器,在本例中為PHP腳本,然后將其接收的值保存在$ _POST數組中。

使用jQuery,可以這樣完成:

var data = {foo: 'bar', lorem: 'ipsum'};
$.post('http://example.com/save.php', data);

SLaks是對的。 您想研究ajax。 最簡單的方法是包括最新的jquery庫,然后在加載時將變量發送到您的php腳本。

最新的jQuery 1.x庫

jQuery Ajax文檔

PHP fwrite文檔

PHP fwrite文檔將解釋如何寫入平面文本文件。

希望能幫助到你。 如果您需要澄清,請告訴我們。

javascript和php可以通過上述方式相互關聯:1_send從php到javascript的數組

<script type="text/javascript">
<?php
  $myVar = array('a' , 'b' , 'c');
?>
   console.log(<?php echo json_encode($myVar); ?>);

</script>

2_發送和json文件從php到javascript。 (可能是ajax調用)3_將xml文件從php發送到javascript。 (當然,最好使用json)4_使用帶REST API的javascript來讀取文件或數據庫或...哪個數據庫中有文件。

也許還有其他方法。

取決於您需要使用哪一個。

PHP和JS不互相交談。 他們有一個中介...即HTML頁面。

PHP->生成HTML->發送到瀏覽器->呈現-> JS與html交互->發送回-> PHP與服務器響應交互

使用javascript檢索這些變量值,然后使用AJAX (以json格式)將其發送到您的php腳本,然后您的php代碼可以檢索這些變量並將其寫入文件。

是一個例子。

暫無
暫無

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

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