Заполните форму значениями массива и используйте форму для доступа к базе данных - PullRequest
0 голосов
/ 26 апреля 2018

Итак, я смог добавить значения одного поля базы данных (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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...