PHP 實現知識問答網站中的問題瀏覽歷史和記錄功能
隨著互聯網的快速發展,知識問答網站越來越受歡迎。在這樣的網站中,使用者可以提出問題並獲得其他使用者的回答。為了提升使用者體驗,有時我們需要實現問題瀏覽歷史記錄和記錄功能,讓使用者可以輕鬆查看先前瀏覽過的問題。
在本文中,我們將使用 PHP 來實現這項功能。我們將首先建立一個資料庫表格來儲存使用者的瀏覽記錄,然後編寫對應的 PHP 程式碼來處理和展示這些記錄。
建立資料庫表格
首先,我們需要建立一個名為 question_history 的資料庫表,用於保存使用者的瀏覽歷史記錄。此表包含以下欄位:
下面是建立question_history 表的SQL 語句:
CREATE TABLE `question_history` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, `question_id` int(11) NOT NULL, `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
PHP 程式碼實作
接下來,我們需要寫一些PHP 程式碼來處理和展示使用者的瀏覽記錄。首先,我們需要編寫一個函數來將使用者的瀏覽記錄插入到資料庫表中。這個函數可以接收兩個參數:使用者的唯一識別碼和被瀏覽問題的唯一識別碼。
function insertQuestionHistory($user_id, $question_id) { // 创建数据库连接 $conn = new mysqli("localhost", "username", "password", "database"); // 检查连接是否成功 if ($conn->connect_error) { die("连接失败:" . $conn->connect_error); } // 插入记录到 question_history 表 $sql = "INSERT INTO question_history (user_id, question_id) VALUES ('$user_id', '$question_id')"; if ($conn->query($sql) === TRUE) { echo "浏览历史记录插入成功"; } else { echo "插入错误:" . $conn->error; } // 关闭数据库连接 $conn->close(); }
然後,我們可以編寫一個函數來從資料庫中取得使用者的瀏覽歷史記錄。這個函數也接收使用者的唯一識別碼作為參數,並傳回一個數組,包含使用者的瀏覽歷史記錄。
function getQuestionHistory($user_id) { // 创建数据库连接 $conn = new mysqli("localhost", "username", "password", "database"); // 检查连接是否成功 if ($conn->connect_error) { die("连接失败:" . $conn->connect_error); } // 查询 question_history 表中的记录 $sql = "SELECT * FROM question_history WHERE user_id = '$user_id' ORDER BY timestamp DESC"; $result = $conn->query($sql); // 将查询结果转换为数组 $history = array(); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { $history[] = $row; } } // 关闭数据库连接 $conn->close(); // 返回浏览历史记录数组 return $history; }
最後,我們可以使用上述函數來展示使用者的瀏覽歷史記錄。我們可以遍歷瀏覽歷史記錄數組,並列印出每一筆記錄。
$user_id = 1; // 假设用户的唯一标识符为 1 // 获取用户的浏览历史记录 $history = getQuestionHistory($user_id); // 打印浏览历史记录 foreach ($history as $row) { echo "问题ID:" . $row['question_id'] . ",浏览时间:" . $row['timestamp'] . "<br>"; }
總結
透過上述的 PHP 程式碼範例,我們成功地實現了知識問答網站中的問題瀏覽歷史和記錄功能。使用者可以透過插入和查詢資料庫表來記錄和取得其瀏覽歷史記錄,並透過 PHP 程式碼將其展示給使用者。這樣的功能可以提升使用者的體驗,使用戶更方便地查看先前瀏覽過的問題。
以上是PHP 實作知識問答網站中的問題瀏覽記錄和記錄功能。的詳細內容。更多資訊請關注PHP中文網其他相關文章!