当前位置:首页 > 技术 > 正文

用php制作简单的留言本

以下是一个简单的PHP留言本示例代码:

index.php:

<!DOCTYPE html>
<html>
<head>
	<title>留言板</title>
</head>
<body>
	<h1>留言板</h1>
	<form action="post.php" method="post">
		<label for="name">姓名:</label>
		<input type="text" id="name" name="name"><br>
		<label for="content">留言内容:</label><br>
		<textarea id="content" name="content" rows="5" cols="30"></textarea><br>
		<input type="submit" value="提交">
	</form>
	<hr>

	<?php
		require_once('model.php');
		$message_list = get_message_list();
		foreach ($message_list as $message) {
			echo "<div>";
			echo "<h4>" . $message['name'] . "</h4>";
			echo "<p>" . $message['content'] . "</p>";
			echo "</div>";
		}
	?>
	
</body>
</html>

model.php:

<?php
	$DATABASE_HOST = 'localhost';
	$DATABASE_USER = 'root';
	$DATABASE_PASSWORD = '';
	$DATABASE_NAME = 'guestbook';

	$con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASSWORD, $DATABASE_NAME);

	if (mysqli_connect_errno()) {
		die('连接数据库失败: ' . mysqli_connect_error());
	}

	function get_message_list() {
		global $con;
		$result = mysqli_query($con, "SELECT * FROM message");
		$message_list = array();
		while ($row = mysqli_fetch_assoc($result)) {
			$message_list[] = $row;
		}
		return $message_list;
	}
	
	function add_message($name, $content) {
		global $con;
		$name = mysqli_real_escape_string($con, $name);
		$content = mysqli_real_escape_string($con, $content);
		$sql = "INSERT INTO message (name, content) VALUES ('$name', '$content')";
		mysqli_query($con, $sql);
	}
?>

post.php:

<?php 
	require_once('model.php');

	if (isset($_POST['name']) && isset($_POST['content'])) {
		$name = $_POST['name'];
		$content = $_POST['content'];
		add_message($name, $content);
	}

	header("Location: index.php");
	exit();
?>

该留言板使用了MySQL数据库来存储留言信息。要使用该留言板,您需要在MySQL中创建一个名为"guestbook"的数据库,并在其中创建一个名为"message"的表,用于存储留言信息。"message"表包含两个字段:"name"和"content"。执行以下SQL语句即可创建该表:

CREATE TABLE message (
	id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
	name VARCHAR(30) NOT NULL,
	content VARCHAR(200) NOT NULL
)

该留言板的工作流程如下:

  • 用户打开index.php页面,其中包含一个留言表单和已发布留言的列表。

  • 用户填写并提交留言表单。

  • 表单提交到post.php,post.php将留言信息添加到数据库中。

  • post.php将用户重定向回index.php,用户可以看到刚刚发布的留言。

  • 用户可以继续发布新的留言。

请注意,该留言板的代码只是一个示例,并未包含安全性检查和防止SQL注入攻击的代码。在实际应用中,需要对用户输入进行过滤和验证以确保安全。


更新时间 2023-04-14

有话要说...