2011-05-20 38 views
0

可能重複:
How to get javascript function data into Php variable如何將JavaScript變量傳遞到PHP函數

我寫在JavaScript代碼。因爲我需要調用php函數。

但問題是我必須再次將Javascript變量傳遞給PHP函數。

我javascrpt是如下,(這是正確的)

<script> 
obj.value="0254" 
if (obj2.value != -1) 
{ 
     var PLOptions= "<?php PLOptions(?>"+ obj.value +"<?php)?>" 
} 
</script> 

這裏PLOptions()是PHP方法和obj.value是JavaScript變量。

請讓我知道,我該如何實現這一點。

+2

唯一可以做到這一點的方法是通過使用AJAX,因爲在將頁面交給用戶之前解釋PHP,並且之後解釋JavaScript,因此php代碼不再運行。 – 2011-05-20 09:08:25

+0

在這個變量的PHP函數中,你要做什麼,因爲如果你可以在JavaScript中做到這一點,意味着爲什麼要調用PHP函數 – Deepika 2011-05-20 09:10:44

+0

在我的代碼中,我必須調用這個按鈕單擊的php方法(函數)。但對於那個按鈕,我已經調用了Javascript函數。 – Indu 2011-05-20 09:21:50

回答

4

你不能那樣做。 PHP在服務器端,Javascript客戶端執行。這意味着,PHP代碼在Javascript之前執行。

但是,您可以使用AJAX從Javascript調用PHP函數。

+0

其實對於按鈕單擊事件我調用Javascript函數(稱爲保存())。但是在save()函數之間,我必須調用一個php函數,它將從數據庫中獲取數據。所以我該怎麼做。 – Indu 2011-05-20 09:29:23

+0

你必須使用Ajax來做到這一點。這裏有一個教程:http://www.xul.fr/en-xml-ajax.html#ajax-get-text – skndstry 2011-05-20 14:30:26

0

請注意,當PHP執行它運行服務器端時,它們會不相關地執行,您的JavaScript運行客戶端。

你需要做的是向頁面回發/ AJAX並作爲調用的一部分傳遞變量。

1
  1. PHP在服務器上運行並將HTML發送到服務器。
  2. 服務器將HTML發送給客戶端。
  3. 客戶端渲染網頁和執行JavaScript的

此時爲時已晚將數據傳遞到一個PHP函數。

你必須發出一個新的HTTP請求......

  • 提交表單
  • 設置location.href
  • 使用Ajax
  • 添加圖像

...以及包括數據POST正文或GET查詢字符串。

PHP然後可以從$_POST$_GET讀取並返回一些更多的數據。

+0

其實對於按鈕單擊事件我調用Javascript函數(稱爲保存())。但是在save()函數之間,我必須調用一個php函數,它將從數據庫中獲取數據。所以我該怎麼做。 – Indu 2011-05-20 09:34:07

0

這是不可能的,你必須使用Ajax請求發送數據到PHP腳本。

0

認爲你將不得不使用AJAX(HTTPRequest)來實現這一點,並將你的參數作爲POST或GET傳遞給php ..

PHP代碼示例:

if(isset($_POST['parameter1']) && isset($_POST['parameter2'])){ 

    //some function code 

    echo return_value; //and here use echo as return to get the result to javascript 

} 

AJAX的部分可以在方法很多工作要做,如果你要我,如果你使用的是框架用一個例子告訴我,延伸,如果(這)

0

當PHP在服務器端執行時,JS執行客戶端,因此您必須將JS值發送到服務器。這可能是隱藏在$_POST或通過AJAX

相關問題