问候Stackoverflow
如何从Jquery设置php $ _GET []数组?我有一个字符串看起来像这样:$sample_string = "Hi there, this text contains space and the character: &";
。我还有一个包含目的地名称的变量:$saveAs = "SomeVariable";
。在PHP中,它将如下所示:$_GET["$SomeVariable"] = $sample_string;
。
如何在Jquery中执行此操作?
提前致谢,Rasmus
答案 0 :(得分:2)
如果您正在使用jQuery,则必须在客户端设置一个向服务器发送GET请求的AJAX请求。然后,您可以从服务器端的$_GET[]
阵列中提取请求中提供的数据。
$(function() {
var data = {
sample_string: "hi",
saveAs: "something"
};
$.get('/path/to/script.php', data, function(response) {
alert(response); // should alert "some response"
});
});
在script.php
:
<?php
$sample = $_GET['sample_string']; // == "hi"
$saveAs = $_GET['saveAs']; // == "something"
// do work
echo "some response";
?>
答案 1 :(得分:2)
无法判断您是否希望从javascript获取GET参数或从jQuery设置GET参数。如果它是前者,我喜欢使用这段代码(从我遗忘的一段时间后我就不记得了):
var urlParams = {};
(function () {
var match,
pl = /\+/g, // Regex for replacing addition symbol with a space
search = /([^&=]+)=?([^&]*)/g,
decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); },
query = window.location.search.substring(1);
while (match = search.exec(query))
urlParams[decode(match[1])] = decode(match[2]);
})();
然后你可以打电话
var cake = urlParams['cake'];
获取http://someurl.com?cake=delicious
指定的$ _GET参数如果要发送$ _GET参数,可以使用jQuery&#39; $ .get()或$ .ajax()函数。 $ .get函数更简单,并在此处有文档http://api.jquery.com/jQuery.get/
对于$ .ajax,您可以这样做:
var trickystring = "Hi there, this text contains space and the character: &";
$.ajax({
url:'path/to/your/php/script.php',
data: {
'getParam1':trickystring,
'getParam2':'pie!'
},
type:'GET'
});
现在在PHP中,您应该能够通过以下方式获得这些:
$trickystring = $_GET['getParam1'];
$pie = $_GET['getParam2'];
希望这些例子能够获得您正在寻找的东西。 (得到它?)
答案 2 :(得分:1)
如果你想在jquery中使用$sample_string
,你可以做到
var sample_str = '<?php echo $sample_string; ?>';
然后在任何地方使用js变量sample_str
。
现在,如果你想在jquery中设置$ _GET,那么ajax函数就可以了。
$.ajax({
url:'path/to/your/php_script.php',
data: {
'param1': 'pqr',
'param2': 'abc'
},
type:'GET'
});
答案 3 :(得分:0)
你的意思是看起来像$ _GET [$ saveAs] = $ sample_string y think。 $ _GET是一个变量,用于通过URL将信息从页面发送到另一个页面。它在jQuery中执行它不是服务器端的nosense。如果要动态设置$ _GET变量以将其发送到另一个页面,则必须将其包含在URL中,如:
/index.php?'+javascriptVariable_name+'='+javascriptVariable_value+';
答案 4 :(得分:-1)
$ _ GET只是一个URL参数。因此,您可以访问/index.php?id=1
:
echo $_GET['id'];
看看这篇文章,它显示了使用ajax加载东西的所有方法:
http://net.tutsplus.com/tutorials/javascript-ajax/5-ways-to-make-ajax-calls-with-jquery/