Heim > Backend-Entwicklung > PHP-Problem > Erstellen Sie ein modifizierbares Message Board in PHP

Erstellen Sie ein modifizierbares Message Board in PHP

PHPz
Freigeben: 2023-05-07 13:47:07
Original
794 Leute haben es durchsucht

随着互联网的逐渐普及,网站已经成为人们获取信息、交流、娱乐的主要途径之一。而留言板作为网站上常见的交流工具之一,更是成为了网站不可或缺的一部分。在这篇文章中,将介绍如何使用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>
Nach dem Login kopieren

可以看到,留言板页面包含两部分,一部分是发布留言的表单,另一部分是已经存在的留言列表。

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);
?>
Nach dem Login kopieren

在该文件中,首先连接数据库,并获取表单数据。随后将数据插入到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>
Nach dem Login kopieren

在该代码中,首先查询数据库中的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>
Nach dem Login kopieren

可以看到,已经添加了一个超链接,用于修改留言。

在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);
?>
Nach dem Login kopieren

在该代码中,首先根据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);
?>
Nach dem Login kopieren

在该文件中,首先连接数据库,并获取表单中的留言数据和留言ID。随后,根据ID更新数据库中的留言数据。

五、总结

通过本文的介绍,相信读者已经了解到如何使用PHP制作可修改的留言板。在实际开发过程中,还可以对留言板进行更丰富的功能扩展,如留言的回复、显示留言数、按时间排序等。

Das obige ist der detaillierte Inhalt vonErstellen Sie ein modifizierbares Message Board in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage