Q:编写一个在线留言本,实现用户的在线留言功能,留言信息存储到数据库,要求设计数据表内容以及使用PHP编码完成。
数据表设计
分析数据表结构
留言板有哪些信息要存储
ID,留言标题,留言内容,留言时间,留言人
数据表的创建
留言本表message
CREATE TABLE message(
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
`title` VARCHAR(120) NOT NULL DEFAULT '' ,
`content` VARCHAR(255) NOT NULL DEFAULT '' ,
`created_at` INT NOT NULL DEFAULT '0' ,
`user_name` VARCHAR(32) UNSIGNED NOT NULL DEFAULT '' ,
KEY message_user_name(user_name)
)ENGINE=InnoDB DEFAULT CHARSET=utf-8;
image.png
选择PHP连接数据库的方式
PDO
可拓展性更好、支持预处理、面向对象
MYSQLi
只支持MYSQL操作、支持预处理、面向对象和过程,效率高
mysql
只支持MYSQL数据库,没有预处理的支持、面向过程
编码能力
PDO的基本操作
<?php
try{
//操作数据库代码
}catch(PDOException $e){
echo $e->getMessage();
}
操作数据库代码
$pdo = new PDO($dsn,$username,$password,$attr);
$sql = 'SELECT id,title,content FROM message where user_name=:user_name' ;
$stmt = $pdo->prepare($sql);
$stmt->execute([ ':user_name' => $user_name]);
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
image.png
image.png
网友评论