首頁  >  文章  >  後端開發  >  PHP 實作知識問答網站中的問題發佈功能。

PHP 實作知識問答網站中的問題發佈功能。

WBOY
WBOY原創
2023-07-01 20:01:281338瀏覽

PHP實現知識問答網站中的問題發布功能

隨著互聯網的普及和發展,知識問答網站變得越來越受歡迎。在知識問答網站中,使用者可以提出問題並得到其他使用者的回答。在本文中,將介紹如何使用PHP實作知識問答網站中的問題發佈功能。

問題發布功能是一個關鍵的功能,它允許使用者在網站上提出問題,並將問題發佈到資料庫中。以下是一個簡單的範例程式碼,示範如何實作問題發布功能:

首先,建立一個問題發布表(question)和資料庫連接。

CREATE TABLE question (
    id INT(11) AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(255) NOT NULL,
    content TEXT NOT NULL,
    user_id INT(11) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

$conn = new mysqli('localhost', 'username', 'password', 'database'); // 替换为正确的数据库连接信息

if ($conn->connect_error) {
    die("数据库连接失败:" . $conn->connect_error);
}

在網站的前端頁面上,建立一個表單,用於輸入問題的標題和內容,並透過POST請求將資料傳送到伺服器。

<form action="submit_question.php" method="post">
    <label for="title">问题标题:</label>
    <input type="text" name="title" id="title" required><br>
    <label for="content">问题内容:</label>
    <textarea name="content" id="content" required></textarea><br>
    <input type="submit" value="发布问题">
</form>

建立一個名為submit_question.php的文件,用於處理問題發布的邏輯。

<?php
// 获取从表单传递过来的问题标题和内容
$title = $_POST['title'];
$content = $_POST['content'];
$user_id = 1; // 这里假设用户ID为1,可以根据实际情况进行修改

// SQL插入语句,将问题插入到question表中
$sql = "INSERT INTO question (title, content, user_id) VALUES ('$title', '$content', $user_id)";

if ($conn->query($sql) === TRUE) {
    echo "问题发布成功!";
} else {
    echo "问题发布失败:" . $conn->error;
}

$conn->close();
?>

在上述程式碼中,首先取得從表單傳遞過來的問題標題、內容和使用者ID。然後,透過執行SQL插入語句,將問題的標題、內容和使用者ID插入到question表中。如果插入成功,就輸出"問題發布成功!",否則輸出錯誤訊息。

透過上述程式碼範例,我們可以實現知識問答網站中的問題發佈功能。使用者可以透過填寫問題的標題和內容,點擊發布按鈕,將問題發佈到資料庫中。開發者可以根據實際需求,在此基礎上進行功能的擴展和最佳化。

要注意的是,本文只提供了一個簡單的範例程式碼,並未涉及使用者身分認證、防止SQL注入等安全性和使用者體驗的問題。在實際的開發中,應該考慮這些方面,並採取相應的措施,以確保網站的安全和使用者體驗。

以上是PHP 實作知識問答網站中的問題發佈功能。的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn