使用PHP和ajax传递URL无法正常工作的变量

时间:2016-05-17 08:30:42

标签: javascript php jquery ajax

我使用AJAX每5000毫秒更新一次页面。它工作得很好,但我遇到了一个问题。当我尝试使用$_GET$_POST获取网址中的数据时,它不起作用。它改为返回1的值。这是一些示例代码。

main.php我有这个:

$(document).ready(function worker() {
    $.ajax({
        url: 'Request.php', 
        type: 'POST',
        success: function(data) {
            $('#Live_data').html(data);
        },
        complete: function() {      
            setTimeout(worker, 5000);
        }
    });
})();

当调用它时会触发request.php。在request.php中,我有一些代码可以抓取前一页在网址中添加的内容,但它不起作用。它是这样的:

$value = $_get['test'];

这应该返回URL参数test中的值,但它不起作用。

谢谢!

3 个答案:

答案 0 :(得分:3)

您忘记使用ajax查询发送数据

在此代码中,您可以通过将查询字符串附加到url值来添加GET数据,或者通过设置请求的数据属性来发送POST数据,

    $.ajax({
        url: 'Request.php?query=string&is=here', 
        type: 'POST',
        data: {to: 'post', goes: 'here'},
        success: function(data) {
            $('#Live_data').html(data);
        },
        complete: function() {      
            setTimeout(worker, 5000);
        }
    });

另见https://api.jquery.com/jquery.post/#jQuery-post-settings

答案 1 :(得分:1)

您不在此处发送任何数据。您可以在Url或数据字段中发送所需的数据。

url: 'Request.php?test=xyz', 

data: data,

答案 2 :(得分:1)

我也对此发表了评论,但我会将其发布为答案:

  1. 在jQuery AJAX请求中将POST更改为GET
  2. 使用request.php代替Request.php或反之。
  3. 使用$_GET代替$_get。此变量区分大小写。