首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 分類查詢程式入門範例:從表單送出到資料庫查詢顯示

     編輯:PHP 相關知識

程式碼完整範例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>PHP 分類查詢示範</title>
</head>
<body>
    <div style="text-align:center">
        <form method="post" action="">
            <input type="submit" name="sell" value="智慧銷售">
            <input type="submit" name="manager" value="經營管理">
            <input type="submit" name="serve" value="智慧客服">
            <input type="submit" name="newemployee" value="智慧新員工">
            <input type="submit" name="development" value="個人發展">
        </form>

        <?php
        // 共用資料庫連線函式
        function getConnection() {
            $conn = mysqli_connect("localhost", "root", "root", "test");
            if (!$conn) die('資料庫連線失敗: ' . mysqli_connect_error());
            mysqli_set_charset($conn, "utf8");
            return $conn;
        }

        // 共用查詢顯示函式
        function queryAndDisplay($keyword) {
            $conn = getConnection();
            $sql = "SELECT * FROM ts1 WHERE name LIKE ?";
            $stmt = mysqli_prepare($conn, $sql);
            $like = "%$keyword%";
            mysqli_stmt_bind_param($stmt, "s", $like);
            mysqli_stmt_execute($stmt);
            $result = mysqli_stmt_get_result($stmt);

            echo '<table border="1" align="center" style="width:60%">';
            while ($row = mysqli_fetch_assoc($result)) {
                echo '<tr>';
                echo '<td>' . htmlspecialchars($row['id']) . '</td>';
                echo '<td>' . htmlspecialchars($row['name']) . '</td>';
                echo '<td>' . htmlspecialchars($row['image']) . '</td>';
                echo '</tr>';
            }
            echo '</table>';
            mysqli_close($conn);
        }

        // 處理各分類提交
        if (!empty($_POST['sell'])) queryAndDisplay('智慧銷售');
        if (!empty($_POST['manager'])) queryAndDisplay('經營管理');
        if (!empty($_POST['serve'])) queryAndDisplay('智慧客服');
        if (!empty($_POST['newemployee'])) queryAndDisplay('智慧新員工');
        if (!empty($_POST['development'])) queryAndDisplay('個人發展');
        ?>
    </div>
</body>
</html>

關鍵改進說明

  • 使用 mysqli 取代已棄用的 mysql 擴展
  • 採用預處理語句防止 SQL 注入
  • 將重複程式碼封裝為函式
  • 加入 htmlspecialchars 防止 XSS
  • 統一字元編碼為 UTF-8

零基礎學習建議

  1. 先完成 PHP 基礎語法學習(變數、陣列、流程控制、函式)
  2. 學習資料庫基本操作(CRUD)
  3. 實作簡單專案(如留言板、商品展示)
  4. 參考 PHP 官方手冊 與 W3Schools

最簡單的 Hello World

<?php
echo 'Hello, world!';
?>

將檔案存為 hello.php,配置好 PHP 環境後即可在瀏覽器執行。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved