电脑生活派
柔彩主题三 · 更轻盈的阅读体验

PHP操作MySQL的完整步骤详解

发布时间:2025-12-16 22:19:23 阅读:200 次

连接数据库是第一步

做网站时,数据得存起来,最常见的就是用 MySQLPHP 要跟 MySQL 打交道,第一步就是建立连接。就像你要进别人家门,得先敲门一样。使用 mysqli_connect() 函数就能完成这一步。

<?php
$host = 'localhost';
$username = 'root';
$password = '123456';
$database = 'test_db';

$conn = mysqli_connect($host, $username, $password, $database);

if (!$conn) {
die('连接失败:' . mysqli_connect_error());
}
?>

上面这段代码里,四个参数分别是主机地址、用户名、密码和数据库名。如果连不上,程序就会停下来并提示错误信息。实际开发中,这些配置通常会放在单独的配置文件里,避免到处写密码。

执行查询操作

连上之后就可以查数据了。比如你做个博客,打开文章列表页面,就得从数据库里把标题、发布时间这些信息取出来。用 mysqli_query() 就能执行 SQL 语句。

<?php
$sql = 'SELECT id, title, created_time FROM articles';
$result = mysqli_query($conn, $sql);

if ($result && mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
echo '<p>' . $row['title'] . ' - ' . $row['created_time'] . '</p>';
}
} else {
echo '<p>暂无文章</p>';
}
?>

这里用到了 mysqli_fetch_assoc(),它把每一行数据变成关联数组,字段名当键,方便我们直接调用。循环输出后,网页上就看到文章列表了。

插入数据也很常见

用户注册、发评论,都是往数据库写数据。INSERT 语句配合 mysqli_query 就能完成。比如用户提交了一个留言:

<?php
$name = $_POST['name'];
$content = $_POST['content'];

// 简单过滤一下防止页面出错
$name = mysqli_real_escape_string($conn, $name);
$content = mysqli_real_escape_string($conn, $content);

$sql = "INSERT INTO comments (name, content, create_time) VALUES ('$name', '$content', NOW())";

if (mysqli_query($conn, $sql)) {
echo '留言成功';
} else {
echo '出错了:' . mysqli_error($conn);
}
?>

注意这里用了 mysqli_real_escape_string() 处理用户输入,虽然不是最安全的方式,但比直接拼接字符串强。更推荐的做法是用预处理语句,防 SQL 注入更有效。

修改和删除数据

后台管理时经常要改文章内容或者删掉某条评论。UPDATE 和 DELETE 语句同样用 mysqli_query 执行。

比如把 ID 为 5 的文章标题改掉:

<?php
$newTitle = mysqli_real_escape_string($conn, '新标题');
$sql = "UPDATE articles SET title = '$newTitle' WHERE id = 5";

if (mysqli_query($conn, $sql)) {
echo '更新成功';
} else {
echo '更新失败:' . mysqli_error($conn);
}
?>

删数据也类似,注意加上 WHERE 条件,不然整张表都清空了可没法回头。

别忘了关闭连接

每次操作完数据库,建议调用 mysqli_close() 把连接关掉。虽然 PHP 脚本结束时会自动释放资源,但主动关闭更清晰,尤其在处理多个连接或长时间运行的脚本时。

<?php
mysqli_close($conn);
?>

这个动作就像走之前关灯,不费劲但值得养成习惯。