2011-08-25 26 views
1

我有幾個PHP瓦爾:如何發佈和獲取php vars與jQuery?

$test = 12345; 
$test1 = "test1"; 
$test2 = "test2"; 

和我有一個jQuery函數:

onlike:function(response){ 
    $('input#helpdiv').trigger('click');  
} 

我想要的是通過這些PHP瓦爾通過jQuery的崗位到另一個test.php文件。

我想在這樣的事情:

var test = <?php echo $test; ?>; 
var test1 = <?php echo $test1; ?>; 
var test2 = <?php echo $test2; ?>; 

onlike:function(response){ 
    $('input#helpdiv').trigger('click'); 
    $.post("test.php", { test, test1, test2 }); 
} 

,然後我如何讓他們在test.php?就像$_GET["test"], ...

關於如何把它放在一起的任何想法?

感謝

+1

當您現在運行代碼時會發生什麼? – voncox

+0

我還沒有測試它,我只是把它寫成一個僞代碼,因爲我不知道語法 – Patrioticcow

+0

如果你引用字符串變量併爲javascript對象提供變量名稱,你將傳遞給post函數,它會工作 – voncox

回答

3
<script language='javascript'> 
var test = "<?php echo $test; ?>"; 
    var test1 = "<?php echo $test1; ?>"; 
    var test2 = "<?php echo $test2; ?>"; 

    onlike:function(response){ 
     $('input#helpdiv').trigger('click'); 
     $.post("test.php", { test:test, test1:test1, test2:test2 }); 
     } 
</script> 

在test.php的,你可以訪問他們的$ _ POST [ '測試'],$ _ POST [ 'TEST1'],$ _ POST [ '測試2']

編輯:

到避免由變量值之間的報價問題, 中說明:how to post and get php vars with jquery?

var test = "<?php echo json_encode($test); ?>"; 

和值可以被test.php的作爲accesed

$test1 = json_decode($_POST['test']) 
+0

非常感謝大家,我知道我在正確的道路:) – Patrioticcow

+0

是的,這是一個更好的迴應。 – voncox

+1

你必須小心謹慎地逃避這些值。如果任何$測試變量中有一個引號,它就會破壞。 –

2
var test = '<?php echo $test; ?>'; 

你需要把引號的值在JS

而且你有這些變量時可用頁面加載?由於JavaScript將在頁面加載時呈現,因此當時將採用現有值。

同時檢查http://api.jquery.com/jQuery.post/使呼叫更清晰地處理響應。

1

只是爲了總結我在上面所做的評論:第一次引用字符串字面量值例如

$test = "test"; 
var test = '<?php echo $test; ?>'; 

然後將它們作爲鍵值對添加到傳遞給發佈函數的對象,例如,

{ test: test }