使用数组值填充表单并使用表单访问数据库

时间:2018-04-26 20:11:06

标签: php sql arrays ajax forms

所以我已经能够将一个数据库字段的值(Lname)添加到数组中。然后我想使用这些数组值来填充我的表单,然后将数据库条目从指定的值拉入表中。有更简单的方法吗?我对Jquery不熟悉。

<?php
    $servername = "localhost";
    $username = "root";
    $password = "";
    $dbname = "my_database";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);

    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    //place Last Name in array
    $sql="SELECT Lname FROM Customers";
    $result=mysqli_query($conn,$sql);

    $lnames=mysqli_fetch_all($result,MYSQLI_ASSOC);
    mysqli_free_result($result);

    foreach($lnames as $x) { 
        $a[] = $x['Lname'];
    }



    $q = intval($_GET['q']);

    $sql="SELECT * FROM Customers WHERE Lname = '".$q."'";
    $result = mysqli_query($conn,$sql);

    echo "<table>
    <tr>
    <th>Last Name</th>
    <th>Email</th>
    <th>City</th>
    <th>Balance</th>
    </tr>";

    while($row = mysqli_fetch_array($result)) {
        echo "<tr>";
        echo "<td>" . $row['Lname'] . "</td>";
        echo "<td>" . $row['Email'] . "</td>";
        echo "<td>" . $row['City'] . "</td>";
        echo "<td>" . $row['Balance'] . "</td>";
    echo "</tr>";
    }
    echo "</table>";

    ?>

以下是我从不同的Overflow论坛中提取的建议脚本。

<script>
function showUser(str) {
    if (str.length == 0) { 
        document.getElementById("txtHint").innerHTML = "";
        return;
    } else {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                document.getElementById("txtHint").innerHTML = this.responseText;
            }
        };
        xmlhttp.open("GET", "gethint.php?q=" + str, true);
        xmlhttp.send();
    }
}
</script>

还有HTML代码。

<div>
    <form>
        <select onchange="showUser(this.value)">
            <option value="">Select a person:</option>
            <option value="1">Jordan</option>
            <option value="2">Kidd</option>
            <option value="3">Hairston</option>
            <option value="4">Irving</option>
        </select>
    </form> <br>
    <div id="txtHint">
        <b>Person info will be listed here.</b>
    </div>
</div>

0 个答案:

没有答案
相关问题