如何使用AJAX基于MySQL查询设置选择框和输入框的值

时间:2018-02-15 17:27:41

标签: javascript php html mysql

我有一个网页,其中包含大量选择框和一些其他类型的输入。我想根据在两个选择框中选择的值,使用MySQL数据库中保存的值填充这些选择框和输入框。 我曾尝试使用AJAX来请求数据,但无法看到如何将数据库中保存的数据从服务器php脚本返回到特定的选择框。  用于请求数据的jscript如下

<script>
function venueChange(str) {
    if (str == "") {
        document.getElementById("Venue").innerHTML = "";
        return;
    } else { 
        if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else {
            // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                document.getElementById("Player1").innerHTML = this.responseText;
            }
        };
        var opponent_name = document.getElementById("Opponents").value
        var variables = "venue_name=str&opponent_name=Hello World";
        xmlhttp.open("GET","getTeamPHP?" + variables,true);
        xmlhttp.send();
    }
}
</script>

getTeamPHP文件如下;

<?php

require '../../configure.php';

$q = intval($_GET['venue_name']);
$v = $_GET['opponent_name'];
$database = "matchmanagementdb";
$con = mysqli_connect(DB_SERVER, DB_USER, DB_PASS,$database);
if (!$con) {
    die('Could not connect: ' . mysqli_error($con));
}

//mysqli_select_db($con,$database);
$sql="SELECT * FROM user WHERE Opponents = '".$q."' AND Venue = '".$v."'";
$result = mysqli_query($con,$sql);


while($row = mysqli_fetch_array($result)) {

    echo  document.getElementById("Player1").innerHTML = $row['FirstName'] ;

}

mysqli_close($con);
?>

1 个答案:

答案 0 :(得分:0)

我已经决定解决方案在于创建三个脚本; 1)阅读搜索详细信息 2)搜索数据库并填写表单 3)允许更新。 根据{{​​3}}。 所以关闭这个问题。