我有一个引用PHP脚本的HTML文件来执行各种功能。 HTML文件调用PHP脚本的方法之一是通过HTTP GET。 GET请求应传递三个参数,并将所有已保存事件的列表作为JSON编码的响应返回。
到目前为止,我有以下内容,但我不确定如何通过HTTP GET传递这三个参数。另外,我不确定我是否正确返回JSON编码的响应:
if($_SERVER['REQUEST_METHOD'] == 'GET'){
echo json_encode(events.json); }
答案 0 :(得分:1)
GET请求是通过URL完成的...所以如果你想传递三个GET请求,你会做...
http://www.domain.com/target.php?param1=whatever¶m2=whatever¶m3=whatever
target.php
表示要将信息发送到的PHP脚本文件。您可以拥有任意数量的变量,但请记住,每个其他GET请求必须用&
符号分隔。第一个参数只需要用?
符号开始。
如果你想使用Javascript,我建议使用JQuery。你可以做这样的事情
$.get('target.php?param1='+whatever+'¶m2='+whatever2, function(data) {
alert(data);
});
或者您可以使用window.location
发送上面相应链接的链接。
如果你想特别使用AJAX,这里有一种方法可以使用JQuery(有很多方法可以在以后必要时更新Javascript:
$.ajax({
type: "GET",
url: "http://www.domain.com/target.php",
data: { param1 : "whatever", param2 : "whatever", param3 : "whatever" },
success: function(result){
//do something with result
}
})
如果要访问变量,可以调用$_GET['param1']
或$_REQUEST['param1']
以在PHP中访问它们。只需将括号中的名称更改为所需的变量,并将其存储在变量中。
如果你想用Javascript访问参数...那么最有效的方法是去解码所使用的URL并将它们拉出来。见here
希望这有帮助!
答案 1 :(得分:0)
您可以通过PHP中的$_GET
超全局访问URL中的参数。
例如,如果您的网址是http://example.com/test.php?param1=foo¶m2=bar
,那么您可以在PHP中访问它们,如下所示:
$param1 = $_GET['param1'];
$param2 = $_GET['param2'];
有关详细信息,请参阅http://www.php.net/manual/en/reserved.variables.get.php。
至于返回有效的JSON响应,您可以查看this answer。它使用PHP的header函数。