PHP melaksanakan sejarah carian soalan dan fungsi pengesyoran dalam laman web soalan dan jawapan pengetahuan.
Dalam laman web soal jawab pengetahuan, pengguna selalunya perlu melakukan carian soalan untuk mencari jawapan yang mereka perlukan. Untuk meningkatkan pengalaman pengguna, kami boleh menyediakan pengguna dengan fungsi sejarah carian supaya pengguna boleh melihat dengan mudah soalan yang telah mereka cari sebelum ini, dan juga boleh mengesyorkan soalan berkaitan kepada pengguna melalui fungsi pengesyoran. Di bawah ini kita akan menggunakan PHP untuk melaksanakan kedua-dua fungsi ini.
1) Buat jadual data bernama "sejarah_carian", mengandungi dua medan: id dan kata kunci.
CIPTA JADUAL carian_sejarah (
id INT AUTO_INCREMENT PRIMARY KEY, keyword VARCHAR(255) NOT NULL
);
2) Apabila pengguna menyerahkan carian soalan, masukkan kata kunci carian yang dimasukkan oleh pengguna ke dalam jadual "sejarah_carian".
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 获取用户输入的搜索关键词 $keyword = $_POST["keyword"]; // 将搜索关键词插入到数据库中 $sql = "INSERT INTO search_history (keyword) VALUES ('$keyword')"; mysqli_query($conn, $sql); // 关闭数据库连接 mysqli_close($conn);
?>
3) Paparkan sejarah carian: Dapatkan kata kunci yang sebelumnya dicari oleh pengguna daripada pangkalan data dan paparkannya pada halaman.
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 从数据库中获取搜索历史 $sql = "SELECT keyword FROM search_history ORDER BY id DESC LIMIT 10"; $result = mysqli_query($conn, $sql); // 显示搜索历史 if (mysqli_num_rows($result) > 0) { while ($row = mysqli_fetch_assoc($result)) { echo $row["keyword"] . "<br>"; } } else { echo "没有搜索历史。"; } // 关闭数据库连接 mysqli_close($conn);
?>
1) Buat jadual data bernama "soalan", mengandungi dua medan: id dan kandungan.
CIPTA soalan JADUAL (
id INT AUTO_INCREMENT PRIMARY KEY, content VARCHAR(255) NOT NULL
);
2) Selepas pengguna menyerahkan carian soalan, kata kunci carian dan soalan berkaitan disimpan dalam pangkalan data.
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 获取用户输入的搜索关键词 $keyword = $_POST["keyword"]; // 查询相关的问题 $sql = "SELECT content FROM questions WHERE content LIKE '%$keyword%'"; $result = mysqli_query($conn, $sql); // 将搜索关键词和相关问题保存到数据库中 while ($row = mysqli_fetch_assoc($result)) { $content = $row["content"]; $sql = "INSERT INTO questions (content) VALUES ('$content')"; mysqli_query($conn, $sql); } // 关闭数据库连接 mysqli_close($conn);
?>
3) Dapatkan soalan berkaitan daripada pangkalan data berdasarkan kata kunci carian semasa pengguna dan mengesyorkannya kepada pengguna.
// 连接数据库 $conn = mysqli_connect("localhost", "username", "password", "database"); // 检查数据库连接 if (!$conn) { die("数据库连接失败: " . mysqli_connect_error()); } // 获取用户输入的搜索关键词 $keyword = $_POST["keyword"]; // 查询相关的问题 $sql = "SELECT content FROM questions WHERE content LIKE '%$keyword%'"; $result = mysqli_query($conn, $sql); // 显示推荐的问题 if (mysqli_num_rows($result) > 0) { while ($row = mysqli_fetch_assoc($result)) { echo $row["content"] . "<br>"; } } else { echo "没有相关的问题。"; } // 关闭数据库连接 mysqli_close($conn);
?>
Melalui contoh kod di atas, kami boleh melaksanakan sejarah carian soalan dan fungsi pengesyoran dalam tapak web soal jawab pengetahuan, meningkatkan pengalaman pengguna dan membantu pengguna mencari jawapan yang mereka perlukan dengan lebih cepat . Sudah tentu, ini hanyalah contoh mudah, dan lebih banyak faktor perlu dipertimbangkan dalam aplikasi sebenar, seperti pengoptimuman algoritma carian dan peningkatan prestasi pangkalan data. Walau bagaimanapun, saya berharap artikel ini dapat memberikan anda idea asas dan kaedah pelaksanaan.
Atas ialah kandungan terperinci PHP melaksanakan sejarah carian soalan dan fungsi cadangan dalam laman web soalan dan jawapan pengetahuan.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!