【问题标题】:Get variable $_GET with ajax使用 ajax 获取变量 $_GET
【发布时间】:2017-04-07 13:05:27
【问题描述】:

我正在尝试构建一个 ajax 实时搜索。

index.php

<div class="form-group">
    <div class="input-group">
        <span class="input-group-addon">Search</span>
        <input type="text" name="search_text" id="search_text" class="form-control" />
    </div>
</div>
<div id="result"></div>

<script>
$(document).ready(function() {
    load_data();
    function load_data(query) {
        $.ajax({
            url:"new/new_fetch.php",
            method:"POST",
            data:{query:query},
            success:function(data) {
                $('#result').html(data);
            }
        });
     }
     $('#search_text').keyup(function() {
         var search = $(this).val();
         if(search != '') {
             load_data(search);
         } else {
             load_data();
         }
    });
});
</script>

new/new_fetch.php

$connect = mysqli_connect("localhost", "root", "root", "dbname");
if(isset($_POST["query"])) {
    $query = "SELECT * FROM subcategories WHERE category_parent = '".$_GET['category']."' ORDER BY subcategory";
}

但我有一个Undefined index: category in new/new_fetch.php 错误。

我的代码在没有 WHERE 运算符的情况下工作。

如何使用 ajax POST 方法获取$_GET['category']?谢谢

【问题讨论】:

标签: php sql ajax get


【解决方案1】:

错误是因为您从未在 AJAX 中传递类别变量。您需要做的是如下所示:

$.ajax({
    url:"new/new_fetch.php",
    method:"GET",
    data:{
        query:query,
        category:"SOME_VALUE"
    },
    success:function(data) {
        $('#result').html(data);
    }
});

更新

如果您想同时接受 $_GET 和 $_POST,我建议您使用 $_REQUEST,它涵盖了 get 和 post。

【讨论】:

  • @Rubyx 当然.. 如果您需要进一步帮助,请联系我
【解决方案2】:

要同时使用 GET 和 POST 方法传递数据,您可以将 GET 方法变量直接添加到 URL,如下所示:

var strCategory = "category1Data";
var passURL = "new/new_fetch.php?category=" + strCategory;

$.ajax({
    url:passURL,
    method:"POST",
    data:{query:query},
    success:function(data) {
        $('#result').html(data);
    }
});

此代码将使用 POST 方法提交表单,但会将变量附加到可以使用 GET 方法捕获的 URL。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-09
    • 2018-01-12
    • 1970-01-01
    • 1970-01-01
    • 2014-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多