首頁 > 後端開發 > PHP問題 > php製作可修改的留言板

php製作可修改的留言板

PHPz
發布: 2023-05-07 13:47:07
原創
794 人瀏覽過

隨著網路的逐漸普及,網站成為人們獲取資訊、交流、娛樂的主要途徑之一。而留言板作為網站上常見的溝通工具之一,更成為了網站不可或缺的一部分。在這篇文章中,將介紹如何使用PHP製作一個可修改的留言板。

一、環境建構

要製作一個留言板,首先需要建造對應的環境。在這裡,我們將使用XAMPP來建立本機伺服器環境。

步驟如下:

  1. 下載並安裝XAMPP軟體;
  2. #啟動XAMPP的Apache和MySQL服務;
  3. 開啟瀏覽器,輸入localhost ,在頁面上選擇語言和認證方式後,進入XAMPP管理面板;
  4. 在管理面板中,點選phpMyAdmin進入資料庫管理頁面。

二、建立資料庫和資料表

建立一個資料庫,取名為guestbook。在該資料庫下建立一個名為messages的資料表,該資料表包含以下欄位:

欄位名稱類型長度說明
id ​​int 11 留言ID,主鍵,自增
username varchar 50 使用者名稱
email varchar 100 信箱
message text 留言內容
post_time datetime 留言時間

三、製作留言板頁面

在這個步驟中,我們將製作一個留言板頁面,讓使用者可以在該頁面中填寫留言,並顯示已經存在的留言。

1.製作留言板頁面的UI

在html中加入以下程式碼:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>可修改的留言板</title>
</head>
<body>
    <h1>留言板</h1>

    <div>
        <form method="POST" action="post_message.php">
            <h3>发布留言</h3>
            用户名:<input type="text" name="username"><br>
            邮箱:<input type="email" name="email"><br>
            留言:<br>
            <textarea name="message" rows="10" cols="50"></textarea><br>
            <input type="submit" value="发布">
        </form>
    </div>

    <div>
        <h3>最新留言</h3>
        <?php
            // 显示最新留言
        ?>
    </div>
</body>
</html>
登入後複製

可以看到,留言板頁麵包含兩部分,一部分是發佈留言的表單,另一部分是已經存在的留言清單。

2.提交留言

在留言板頁面中提交表單後,需要將提交的資料儲存到資料庫中。

在根目錄下建立一個名為post_message.php的文件,用於處理提交留言表單中的資料。

在該檔案中新增以下程式碼:

<?php
// 连接数据库
$link = mysqli_connect("localhost", "root", "", "guestbook");
if (!$link) {
    die("数据库连接失败:" . mysqli_connect_error());
}

// 获取表单数据
$username = $_POST['username'];
$email = $_POST['email'];
$message = $_POST['message'];
$post_time = date("Y-m-d H:i:s");

// 插入留言到数据库中
$sql = "INSERT INTO messages (username, email, message, post_time)
        VALUES ('$username', '$email', '$message', '$post_time')";
$result = mysqli_query($link, $sql);
if ($result) {
    echo "留言发布成功!";
} else {
    echo "留言发布失败:" . mysqli_error($link);
}

// 关闭数据库连接
mysqli_close($link);
?>
登入後複製

在該檔案中,首先連接資料庫,並取得表單資料。隨後將資料插入messages資料表中。

3.顯示留言

在留言板頁面中,需要顯示最新的留言。為此,可以在留言板頁面的第二部分顯示資料庫中的留言清單。

在html中,修改以下程式碼:

<div>
    <h3>最新留言</h3>
    <?php
        // 查询留言信息
        $link = mysqli_connect("localhost", "root", "", "guestbook");
        if (!$link) {
            die("数据库连接失败:" . mysqli_connect_error());
        }
        $sql = "SELECT * FROM messages";
        $result = mysqli_query($link, $sql);
        mysqli_close($link);

        // 遍历留言数据,并显示到页面上
        while ($row = mysqli_fetch_assoc($result)) {
            ?>
            <hr>
            <div>
                <p>用户名:<?php echo $row['username']; ?></p>
                <p>邮箱:<?php echo $row['email']; ?></p>
                <p>时间:<?php echo $row['post_time']; ?></p>
                <p>留言内容:<?php echo $row['message']; ?></p>
            </div>
        <?php
        }
        ?>
</div>
登入後複製

在程式碼中,先查詢資料庫中的messages資料表,並將查詢的留言資料儲存到$result。隨後,透過while循環遍歷留言數據,並將其顯示到頁面上。

四、修改留言

在留言板中,使用者可以修改已經提交的留言。

在html程式碼中,修改顯示留言的程式碼如下:

<div>
    <h3>最新留言</h3>
    <?php
        // 查询留言信息
        $link = mysqli_connect("localhost", "root", "", "guestbook");
        if (!$link) {
            die("数据库连接失败:" . mysqli_connect_error());
        }
        $sql = "SELECT * FROM messages";
        $result = mysqli_query($link, $sql);
        mysqli_close($link);

        // 遍历留言数据,并显示到页面上
        while ($row = mysqli_fetch_assoc($result)) {
            ?>
            <hr>
            <div>
                <p>用户名:<?php echo $row['username']; ?></p>
                <p>邮箱:<?php echo $row['email']; ?></p>
                <p>时间:<?php echo $row['post_time']; ?></p>
                <p>留言内容:<?php echo $row['message']; ?></p>
                <a href="edit_message.php?id=<?php echo $row['id']; ?>">修改</a>
            </div>
        <?php
        }
        ?>
</div>
登入後複製

可以看到,已經新增了一個超鏈接,用於修改留言。

在edit_message.php檔案中,加入以下程式碼:

<?php
// 连接数据库
$link = mysqli_connect("localhost", "root", "", "guestbook");
if (!$link) {
    die("数据库连接失败:" . mysqli_connect_error());
}

// 获取留言ID
$id = $_GET['id'];

// 根据ID查询留言信息
$sql = "SELECT * FROM messages WHERE id=$id LIMIT 1";
$result = mysqli_query($link, $sql);
$row = mysqli_fetch_assoc($result);

// 显示留言内容的表单
?>
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>修改留言</title>
</head>
<body>
    <h1>修改留言</h1>

    <div>
        <form method="POST" action="save_message.php">
            <h3>修改留言</h3>
            用户名:<input type="text" name="username" value="<?php echo $row['username']; ?>"><br>
            邮箱:<input type="email" name="email" value="<?php echo $row['email']; ?>"><br>
            留言:<br>
            <textarea name="message" rows="10" cols="50"><?php echo $row['message']; ?></textarea><br>
            <input type="hidden" name="id" value="<?php echo $row['id']; ?>">
            <input type="submit" value="保存">
        </form>
    </div>
</body>
</html>

<?php
// 关闭数据库连接
mysqli_close($link);
?>
登入後複製

在程式碼中,首先根據ID查詢留言信息,並將查詢到的留言資料顯示到form表單中。隨後使用者就可以在該頁面中修改留言。其中,隱藏域input用來保存留言ID,以便後面儲存留言時可以根據ID更新資料庫。

在save_message.php檔案中,加入以下程式碼:

<?php
// 连接数据库
$link = mysqli_connect("localhost", "root", "", "guestbook");
if (!$link) {
    die("数据库连接失败:" . mysqli_connect_error());
}

// 获取表单数据
$id = $_POST['id'];
$username = $_POST['username'];
$email = $_POST['email'];
$message = $_POST['message'];

// 更新留言
$sql = "UPDATE messages SET username='$username', email='$email', message='$message' WHERE id=$id";
$result = mysqli_query($link, $sql);
if ($result) {
    echo "留言更新成功!";
} else {
    echo "留言更新失败:" . mysqli_error($link);
}

// 关闭数据库连接
mysqli_close($link);
?>
登入後複製

在該檔案中,先連接資料庫,並取得表單中的留言資料和留言ID。隨後,根據ID更新資料庫中的留言資料。

五、總結

透過本文的介紹,相信讀者已經了解如何使用PHP製作可修改的留言板。在實際開發過程中,還可以對留言板進行更豐富的功能擴展,如留言的回應、顯示留言數、按時間排序等。

以上是php製作可修改的留言板的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板