2014-10-06 137 views
1

我的AJAX是:

add = 'request'; 
full_val = 'barrack obama'; 
$.ajax({ 
     url: 'plugins/add_friend.php', 
     data: full_val+'='+add, 
     success: function(data) 
     { 

     } 
     }); 

如果根據條件,那麼JavaScript變量值的變化我如何$ _GET []變量full_val?我想它是這樣的:

$_GET[full_val] 

有沒有辦法將JavaScript的變量傳遞給PHP?

回答

2

如果你想字面指數full_val,然後用它在查詢字符串:

data: 'full_val='+add, 

因此,在PHP中,你可以使用$_GET['full_val']

或者,您也可以把在該領域中的對象:

data: {full_val: full_val, add: add}, 

下面是描述:

數據
類型:PlainObject字符串陣列
數據要被髮送到服務器。它被轉換成查詢字符串,如果還不是字符串的話。它附加到GET請求的url。

+0

感謝,遺憾的noob問題。 – 2014-10-06 04:55:54

+0

@monkeycoder確定男人沒有問題,當我們第一次使用東西的時候,我們都是noob的)我很高興這有幫助 – Ghost 2014-10-06 04:57:53

1

你的數據只有values,沒有keys。請參閱下文了解如何通過keysvalues

add = 'request'; 
full_val = 'barrack obama'; 
$.ajax({ 
    url: 'plugins/add_friend.php', 
    data: {full_val:full_val,add:add}, 
    success: function(data) 
    { 

    } 
}); 

在你的PHP使用$_GET['full_val'];

1

正確地發送數據參數的值,並添加type:get定義GET方法

add = 'request'; 
full_val = 'barrack obama'; 
$.ajax({ 
    type: "get", 
    url: 'plugins/add_friend.php', 
    data: {'full_val':full_val,'add':add}, 
    success: function(data) { 

    } 
}); 

然後你會得到關於PHP值: -

使用$_GET['full_val']而不是$_GET[full_val]

0

您可以使用.get()方法。您可以使用對象文字設置的變量。例如:

$.get("/plugins/add_friend.php", { 
    add: "request", 
    full: "Barrack Obama" 
}).done(function(data) { 
    console.log("Status:", data.status); 
    console.log("Received:", data.received); 
}); 

而且PHP可以做這樣的事情:

$add = filter_input(INPUT_GET, 'add', FILTER_SANITIZE_STRING); 
$full = filter_input(INPUT_GET, 'full', FILTER_SANITIZE_STRING); 
echo json_encode(array(
    'status': 'OK', 
    'received': "{$add} and {$full}", 
)); 
0

嘗試使用此

add = 'request'; 
full_val = 'barrack obama'; 
$.ajax({ 
     url: 'add.php', 
     data: 'full_val='+add, 
     success: function(data) 
     { 
      alert(data); 
     } 
     });