Php Can';t通过AJAX请求运行SQL查询,使用相同类型的AJAX查询,除此之外,在任何地方都可以正常工作

Php Can';t通过AJAX请求运行SQL查询,使用相同类型的AJAX查询,除此之外,在任何地方都可以正常工作,php,ajax,Php,Ajax,我在其他任何地方都使用这个AJAX调用,它很有魅力,但只有这样才有问题。我不明白是什么问题?为什么我得到“错误重试记录:”我仍然没有看到任何问题,所以很容易 PS:我在AJAX端响应中重复了这些值,并在那里获得了所有三个值,但数据库给出了问题。更重要的是,同样的SQL查询在数据库端工作得很好,但当它处理AJAX和PHP时,就会出现问题 数值通过罚款: id1=获取版本&id2=machine055&id3=vmlab 数据库查询似乎很好: SELECT `version` FROM `table

我在其他任何地方都使用这个AJAX调用,它很有魅力,但只有这样才有问题。我不明白是什么问题?为什么我得到“错误重试记录:”我仍然没有看到任何问题,所以很容易

PS:我在AJAX端响应中重复了这些值,并在那里获得了所有三个值,但数据库给出了问题。更重要的是,同样的SQL查询在数据库端工作得很好,但当它处理AJAX和PHP时,就会出现问题

数值通过罚款:

id1=获取版本&id2=machine055&id3=vmlab

数据库查询似乎很好:

SELECT `version` FROM `table1` where `machine` = 'machine055'
PHP+UI:

serverChange.on('change', function(){
            $("#progress").show();
            var selectedServer = $(this).val();

            $.ajax({
                type: "POST",
                url: "/web/scripts.php",
                data: { id1: "get-version", id2: selectedServer, id3: "vmlab" },
                success:function(msg){
                    $("#progress").hide();
                    alert(msg);
                }
            });

        });
PHP+Ajax:

if ($_POST['id1'] == "get-version" && $_POST['id3'] == "vmlab") {

    $conn = mysqli_connect("localhost", "root", "pwd", "db");
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    $sql = "SELECT `version` FROM `table1` where `machine` = '" .trim($_POST['id2']). "'";
    if ($conn->query($sql) === TRUE) {
        echo "Machine retrieved successfully.";
    } else {
        echo "Error retried record: " . $conn->error;
    }

我尝试了不同的方法,效果很好,因此没有进行太多探索,以下是解决方案:

    $conn = mysqli_connect("localhost", "root", "pwd", "db");
     if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    $sql = "SELECT `version` FROM `table1` where `machine` = '" .trim($_POST['id2']). "'";
    $result = mysqli_query($conn, $sql);

    while($row =  mysqli_fetch_array($result)) {
        $rows[] = $row['version'];
    }

    echo ($rows[0]);

    $conn->close();

感谢大家阅读此问题和解决方案。

您将id3作为selenium传递,并期待VMLAB。我很抱歉造成混淆,我正在编辑此帖子,但仍然存在打字错误。事实上,它是vmlab,然后它也不工作。您是否尝试直接在服务器上运行查询?你有什么结果吗?