Rumah >pembangunan bahagian belakang >tutorial php >Membangunkan fungsi carian soalan dalam laman web trivia menggunakan PHP.

Membangunkan fungsi carian soalan dalam laman web trivia menggunakan PHP.

王林
王林asal
2023-07-02 10:42:061266semak imbas

Gunakan PHP untuk membangunkan fungsi carian soalan dalam laman web Soal Jawab pengetahuan

Dalam laman web Soal Jawab pengetahuan, pengguna selalunya perlu menggunakan fungsi carian untuk mencari soalan dan jawapan khusus. Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan fungsi carian soalan dalam tapak web Soal Jawab pengetahuan dan menyediakan contoh kod yang sepadan.

Pertama, kami memerlukan jadual pangkalan data soalan dan jawapan untuk menyimpan soalan yang ditanya oleh pengguna dan jawapan yang sepadan. Katakan kita telah mencipta jadual yang dipanggil "soalan" dan mengandungi medan berikut: id (pengecam unik soalan), tajuk (tajuk soalan), kandungan (kandungan soalan) dan jawapan (jawapan kepada soalan).

Seterusnya, kami memerlukan halaman carian untuk membolehkan pengguna memasukkan kata kunci untuk mencari. Mula-mula, buat fail bernama "search.php" dan tambahkan contoh kod berikut dalam fail:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>问题搜索</title>
</head>
<body>
    <h1>问题搜索</h1>
    <form action="search.php" method="GET">
        <input type="text" name="keyword" placeholder="输入关键词">
        <input type="submit" value="搜索">
    </form>

    <?php
        // 判断是否接收到关键词
        if(isset($_GET['keyword'])) {
            // 连接数据库
            $conn = new mysqli('localhost', 'username', 'password', 'database');

            // 获取用户输入的关键词
            $keyword = $_GET['keyword'];

            // 查询数据库中匹配关键词的问题
            $sql = "SELECT * FROM questions WHERE title LIKE '%" . $keyword . "%' OR content LIKE '%" . $keyword . "%'";
            $result = $conn->query($sql);

            // 遍历查询结果并输出
            if ($result->num_rows > 0) {
                while($row = $result->fetch_assoc()) {
                    echo "<h2>" . $row['title'] . "</h2>";
                    echo "<p>" . $row['content'] . "</p>";
                    echo "<p>回答:" . $row['answer'] . "</p>";
                }
            } else {
                echo "未找到匹配的问题";
            }

            // 关闭数据库连接
            $conn->close();
        }
    ?>

</body>
</html>

Dalam kod di atas, kami mula-mula membuat borang carian untuk membenarkan pengguna memasukkan kata kunci. Kemudian, kod PHP menentukan sama ada kata kunci diterima dan menyimpannya dalam pembolehubah "kata kunci".

Seterusnya, kami menyambung ke pangkalan data dan menggunakan pernyataan pertanyaan SQL untuk mencari jadual "soalan" untuk soalan yang sepadan dengan kata kunci. Pernyataan pertanyaan menggunakan operator LIKE untuk memadankan tajuk dan kandungan soalan secara kabur. Keputusan pertanyaan disimpan dalam pembolehubah "hasil".

Kami kemudian menggunakan gelung untuk mengulangi hasil pertanyaan dan mengeluarkan tajuk, kandungan dan jawapan bagi soalan yang sepadan.

Jika hasil pertanyaan kosong, kami akan mengeluarkan mesej gesaan "Tiada soalan sepadan ditemui".

Akhir sekali, kami menutup sambungan pangkalan data.

Kini, kami telah menyelesaikan pembangunan fungsi carian soalan asas. Pengguna boleh memasukkan kata kunci pada halaman carian untuk mencari dan mendapatkan soalan dan jawapan yang sepadan dengan kata kunci.

Saya harap artikel ini telah membantu anda memahami cara menggunakan PHP untuk membangunkan fungsi carian soalan dalam laman web Soal Jawab pengetahuan. Anda boleh melaraskan dan mengoptimumkan mengikut keperluan anda. Selamat mengekod!

Atas ialah kandungan terperinci Membangunkan fungsi carian soalan dalam laman web trivia menggunakan PHP.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn