2012-04-30 25 views
0

例如如何傳遞的JavaScript jQuery的變量值在PHP陣列

var dirnm = jQuery.trim($('#dirname').val()); 
var parent1 = jQuery.trim($('#parent').val()); 

var url = '<?=$this->url(array('controller'=>'index','action'=>'dirnameex','dirname'=>dirnm ,'parent'=>parent1))?>'; 

dirnmparent1是AJAX變量。 所以我想通過dirnmparent1到一個php數組。

+0

這不會工作JavaScript在瀏覽器中執行,PHP在服務器上執行 - 您需要將JavaScript中的變量POST到PHP,dirnm和parent1是AJAX變量上的JavaScript變量... [ AJAX](http://en.wikipedia.org/wiki/Ajax_(編程))是一種技術而不是語言 – ManseUK

+0

您需要使用ajax將變量從AJAX發送到PHP – 472084

+0

可能的重複[將一個js變量傳遞給一個PHP變量](http://stackoverflow.com/questions/4716177/pass-a-js-variable-to-a-php-variable) – JJJ

回答

0

php運行服務器端,JavaScript運行客戶端,所以你不能這樣做。

您可以使用ajax將變量傳遞給php。但這將是一個單獨的線程。

1

這不會工作,因爲JavaScript在瀏覽器中執行和PHP的服務器上執行..所以該頁面加載到瀏覽器和JavaScript執行....

之前,PHP會執行什麼你可以做的是POST的變量PHP:

var dirnm = jQuery.trim($('#dirname').val()); 
var parent1 = jQuery.trim($('#parent').val()); 
$.post("sript.php", { dirname: dirnm, parent: parent1 }); 

然後在PHP(script.php):

// get the variables from $_POST 
$dir = $_POST['dirname']; 
$par = $_POST['parent']; 
$this->url(array('controller'=>'index','action'=>'dirnameex','dirname'=> $dir,'parent'=> $par)) 

Docs here for $.post() (jQuery)Docs here for $_POST (PHP)

+0

感謝ManseUK,但這個代碼在jQuery和JavaScript專注事件。我能做什麼? – user1312776

+0

只是將JavaScript代碼放在focusout回調中 - '$('#yourid')。focusout(function(){// here});' – ManseUK

+0

實際上,我在focusout回調中使用了JavaScript代碼。但我想通過這個值到PHP陣列 – user1312776