PHP+MySQL实现留言板(1)

思路

做一个最简单的留言板,首页用于展示留言,点击可以添加留言,添加成功后展示在首页上,首页上的留言以发布时间倒序的形式展示,即最新发布的留言展示在最上面。

技术:

PHP(面向过程),MySQL

成果:

(懒得写CSS样式,辣到眼睛概不负责= =)

首页

添加留言

 

过程:

 

设计数据库

id(留言编号),user(用户名),title(留言标题),content(留言内容),lastdate(发布时间)

设计数据库

创建对应的目录和文件:

目录文件

 

conn.php:

<?php
/*
 * 使用配置文件中的服务器,用户名,密码和数据库名称连接和选择数据库
 * 数据库连接成功,使用UTF8连接
 * 连接失败返回连接错误提示
 * */

	$servername = "localhost";
	$username = "root";
	$password = "123456";
	$dbname = "message";
	
	//创建连接
	$conn = mysqli_connect($servername, $username, $password, $dbname);
	//检测连接
	if(!$conn){
		die("连接失败:" . mysqli_connect_error());
	}
?>

add.html:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>添加留言</title>
		<?php
			include("add.php")
		?>
	</head>
	<body>
		<h1>添加留言</h1>
		<hr />
		<form action="add.php" method="post">
			用户:<input type="text" size="10" name="user"/><br />
			标题:<input type="text" name="title"/><br />
			内容:<textarea name="content"></textarea><br /><br />
			<input type="submit" name="submit" value="发布留言"/>
		</form>
	</body>
</html>

add.php:

<?php
/*
 * 引入conn.php文件,使用post方式是获得各个字段的数据
 * 使用if语句提交sql语句插入内容,成功返回提示,返回add页面
 * */

	include ("conn.php");
	/*
	 * 因为这里的id字段表示的是第几条留言,所以是自动获取的
	 * 先从数据库获取当前最大的id值
	 * $result是一个数组,则最大的id值就是数组result的第一个元素result[0]
	 **/
	$maxId = mysqli_query($conn,"select max(id) from msg");
	$result = mysqli_fetch_array($maxId);
	$id = $result[0] + 1;
	//获取从add.html页面提交的字段
	$user = $_POST['user'];
	$title = $_POST['title'];
	$content = $_POST['content'];
	
	
	if($_POST['submit']){
		$sql = "insert into msg (id, user, title, content, lastdate) 
		values ('$id','$user','$title','$content',now())";
		if(mysqli_query($conn,$sql)){
			echo "<script>alert('提交成功!返回首页。');
				location.href='index.php';
			</script>";
		} else {
			echo "出错:". $sql . "<br>" . mysqli_error();
		}	
	}
?>

index.php:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>留言板</title>
		<?php
			include("add.php")
		?>
	</head>
	<body>
		<h1>留言板</h1>
		<hr />
		<a href="add.html">添加留言</a>
		<?php
			$sql = "select * from msg order by id desc";
			$result = $conn->query($sql);
			if($result->num_rows > 0) {
				while($row = $result->fetch_assoc()) {
		?>
		<div style="border:1px solid red;margin: 10px 0;">
			<h3><?php echo $row['title']; ?></h3>
			<h5><?php echo 'By ' . $row['user'] . ' in ' . $row['lastdate']; ?></h5>
			<p><?php echo $row['content']; ?></p>
		</div>
		<?php	
				}
			}
		?>
	</body>
</html>

 

完成!

如果这篇文章对你有帮助的话请点帮我点个赞,让我知道我写的文章有帮助到他人哈哈哈,谢谢!

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
制作留言板可以分为以下步骤: 1. 创建一个 MySQL 数据库,包含一个留言表 可以使用以下 SQL 语句创建一个名为 `message_board` 的数据库,并在其中创建一个名为 `messages` 的表: ```mysql CREATE DATABASE message_board; USE message_board; CREATE TABLE messages ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30) NOT NULL, message TEXT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); ``` 这个表包含四个字段:`id` 、`name` 、`message` 和 `created_at` 。其中 `id` 是自增长的主键,`name` 是留言者的姓名,`message` 是留言内容,`created_at` 是留言的时间戳。 2. 创建一个 PHP 页面来显示留言板 可以使用以下 HTML 和 PHP 代码来创建一个显示留言板的页面: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>留言板</title> </head> <body> <h1>留言板</h1> <form action="add_message.php" method="post"> <label for="name">姓名:</label> <input type="text" name="name" id="name"><br><br> <label for="message">留言:</label> <textarea name="message" id="message" cols="30" rows="10"></textarea><br><br> <input type="submit" value="提交"> </form> <h2>留言列表</h2> <?php // TODO: 显示留言列表 ?> </body> </html> ``` 这个页面包含一个表单,用于提交新的留言,并且有一个占位符,用于显示留言列表。 3. 创建一个 PHP 页面来处理添加留言的请求 可以使用以下 PHP 代码来创建一个处理添加留言请求的页面 `add_message.php` : ```php <?php // 连接数据库 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "message_board"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } // 处理 POST 请求 $name = $_POST["name"]; $message = $_POST["message"]; $sql = "INSERT INTO messages (name, message) VALUES ('$name', '$message')"; if ($conn->query($sql) === TRUE) { echo "留言成功!"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } $conn->close(); ?> ``` 这个页面首先连接到 MySQL 数据库,并从 `$_POST` 中获取留言者的姓名和留言内容。然后,它向 `messages` 表中插入一条新的留言记录。 4. 创建一个 PHP 页面来显示留言列表 可以使用以下 PHP 代码来创建一个显示留言列表的页面: ```php <?php // 连接数据库 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "message_board"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } // 查询留言列表 $sql = "SELECT * FROM messages ORDER BY created_at DESC"; $result = $conn->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "<p>" . $row["name"] . " 于 " . $row["created_at"] . " 留言:</p>"; echo "<p>" . $row["message"] . "</p>"; echo "<hr>"; } } else { echo "暂无留言。"; } $conn->close(); ?> ``` 这个页面首先连接到 MySQL 数据库,并查询 `messages` 表中的所有记录。然后,它以逆序方式遍历结果集,并将每条留言显示为一个段落。最后,它关闭数据库连接。 5. 将所有页面整合到一起 现在,你可以将所有页面整合到一起,并将它们放在同一个目录下。你可以在浏览器中访问这个目录,就可以看到留言板了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值