PHP implements the question search history and recommendation functions in the knowledge question and answer website.

WBOY
Release: 2023-08-03 15:32:02
Original
1490 people have browsed it

PHP implements the question search history and recommendation functions in the knowledge question and answer website.

In a knowledge question and answer website, users often need to perform question searches to find the answers they need. In order to improve the user experience, we can provide users with a search history function so that users can easily view the questions they have searched for before, and we can also recommend related questions to users through the recommendation function. Below we will use PHP to implement these two functions.

  1. Implementation of question search history function
    In order to implement the search history function, we need to save the search keywords to the database every time the user performs a question search. The specific implementation steps are as follows:

1) Create a data table named "search_history", containing two fields: id and keyword.

CREATE TABLE search_history (

id INT AUTO_INCREMENT PRIMARY KEY,
keyword VARCHAR(255) NOT NULL
Copy after login

);

2) When the user submits a question search, insert the search keywords entered by the user into the "search_history" table.

// 连接数据库
$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);
Copy after login

?>

3) Display search history: Get the keywords previously searched by the user from the database and display them on the page .

// 连接数据库
$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);
Copy after login

?>

  1. Implementation of question recommendation function
    In order to implement the question recommendation function, we can based on the user’s current search Keywords, find related questions in the database, and recommend these questions to users. The specific implementation steps are as follows:

1) Create a data table named "questions", containing two fields: id and content.

CREATE TABLE questions (

id INT AUTO_INCREMENT PRIMARY KEY,
content VARCHAR(255) NOT NULL
Copy after login

);

2) After the user submits the question search, the search keywords and related questions are saved in the database.

// 连接数据库
$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);
Copy after login

?>

3) Based on the user’s current search keywords, obtain relevant questions from the database and recommend them to the user .

// 连接数据库
$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);
Copy after login

?>

Through the above code examples, we can implement question search history and recommendation functions in the knowledge question and answer website to improve the user experience , helping users find the answers they need faster. Of course, this is just a simple example, and more factors need to be considered in actual applications, such as optimization of search algorithms and improvement of database performance. However, I hope this article can provide you with a basic idea and implementation method.

The above is the detailed content of PHP implements the question search history and recommendation functions in the knowledge question and answer website.. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template