簡體   English   中英

使用 PHP 和 jQuery 從 MySQL 獲取數據並顯示在與用戶 ID 匹配的 HTML 表中

[英]Fetching Data from MySQL using PHP & jQuery and displaying in HTML table matching the user ID

我編寫了一個簡單的代碼來測試使用 PHP 和 jQuery 從 MySQL 表中獲取數據,但是當我從搜索框中搜索 ID 時(我有 ID 1 到 4,其中包含用戶詳細信息,例如 nationalId、firstName、lastName)並且它當我搜索 MySQL 表中存在的 1 到 4 ID 時顯示 1,但是當我搜索 ID 5 及以上(不存在於 MySQL 表中)時,它輸出“未找到 ID”,這是根據 ID 的正確輸出。

//index.php

<DOCTYPE html>
<html>
<head>
    <script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.min.js"
  integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
  crossorigin="anonymous"></script>
          <script type="text/javascript" src="js/getUser.js"></script>
</head>
<body>

Citizenship ID No.<input type="text" id="id" placeholder="Type Your CID" />
          <button type="submit" id="id-submit" value="Track">TRACK</button> 

          <div id ="display"></div>          
</form>
</body>
</html>

//連接.php

<?php
$con = mysqli_connect('localhost','root','');
mysqli_select_db($con,'user');
?>

//getUser.js
    $(document).ready(function(){
    $('button#id-submit').on('click', function(){

        var id = $('input#id').val();
            if ($.trim(id) != '') {
                $.post("php/getData.php", { id: id}, function(data) {
                    $('div#display').text(data);

            });

        }

    });
});

//獲取數據.php

<?php
if (isset($_POST['id']) === true && empty($_POST['id']) === false){
    require '../sql/connection.php';


    $query = "SELECT * FROM userinfo WHERE ID = '". mysqli_real_escape_string($con, trim($_POST['id'])) . "'";

    $result = mysqli_query($con,$query);

    echo (mysqli_num_rows($result) !== 0) ? mysqli_data_seek($result, 0) : 'No ID found';

    }
    ?>

//MyMySQL表=用戶信息

id nationalID firstName lastName

1 1200345 山姆亨特

2 1200346 約翰·丹佛

3 1200347 彼得·帕克

4 1200348 喬什·馬修

我還沒有測試過該程序,但我認為這將是您所要求的正確輸出。 據我了解,當您單擊按鈕時,您需要表格形式的輸出數據。 為了實現這一點,您可以直接在 php 本身中獲取和打印表中的數據。

這是您需要的代碼

  <?php
 if (isset($_POST['id']) === true && empty($_POST['id']) === false){
require '../sql/connection.php';


$query = "SELECT * FROM `userinfo` WHERE ID = '". mysqli_real_escape_string($con,        trim($_POST['id'])) . "'";

 $result = mysqli_query($con,$query);


if ($result->num_rows > 0) {

 echo '<table>';
 echo '<tr>';
 echo '<th>';
 echo 'id'; 
 echo '</th>';
echo '<th>';
echo 'nationalID'; 
echo '</th>'; 
echo '<th>';
echo 'firstName'; 
echo '</th>';
echo '<th>';
echo 'lastName'; 
echo '</th>';
echo '</tr>';

while($row = $result->fetch_assoc()) {
echo '<tr>';
echo '<td>';
echo $row['id']; 
  echo '</td>';
 echo '<td>';
 echo $row['nationalID']; 
 echo '</td>'; 
 echo '<td>';
 echo $row['firstName']; 
  echo '</td>';
  echo '<td>';
 echo $row['lastName']; 
echo '</td>';
 echo '</tr>';
  }
  echo '</table>';
 }
}
$con->close();
?>

並盡量使用准備好的語句來防止sql注入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM