





PHP代码能跑、表单能提交了,但数据还没地方存。刷新页面,刚才提交的内容就没了。数据库就是用来存储这些数据的。这节课学PHP与MySQL的配合,完成建表、连接和增删改查操作。
第一步:创建数据库和数据表
打开集成环境自带的phpMyAdmin,创建一个数据库命名为“enterprise_site”。在该数据库下创建一张产品表:
CREATE TABLE products ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, price DECIMAL(10,2) NOT NULL, stock INT DEFAULT 0, description TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
第二步:用PHP连接数据库

新建文件“db.php”,编写数据库连接代码:
<?php
$host = 'localhost';
$dbname = 'enterprise_site';
$username = 'root';
$password = '';
try {
$pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die("数据库连接失败:" . $e->getMessage());
}
?>使用PDO连接数据库,它支持参数化查询,能有效防止SQL注入。
第三步:插入数据
<?php
require 'db.php';
$stmt = $pdo->prepare("INSERT INTO products (name, price, stock, description) VALUES (?, ?, ?, ?)");
$stmt->execute(["不锈钢法兰", 199.00, 50, "适用于石油管道连接"]);
echo "产品添加成功";
?>第四步:查询数据
<?php
require 'db.php';
$stmt = $pdo->query("SELECT * FROM products ORDER BY created_at DESC");
$products = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($products as $product) {
echo "<h3>" . htmlspecialchars($product['name']) . "</h3>";
echo "<p>价格:" . $product['price'] . " 元</p>";
echo "<p>库存:" . $product['stock'] . " 件</p>";
}
?>htmlspecialchars()用于转义输出内容,防止XSS攻击。
第五步:更新和删除数据
<?php
require 'db.php';
// 更新
$stmt = $pdo->prepare("UPDATE products SET price = ? WHERE id = ?");
$stmt->execute([179.00, 1]);
// 删除
$stmt = $pdo->prepare("DELETE FROM products WHERE id = ?");
$stmt->execute([2]);
?>实操建议
每完成一个操作,在phpMyAdmin中刷新产品表,确认数据变化。如果操作失败,检查SQL语句是否有语法错误、字段名是否拼写正确、数据库连接是否正常。把错误信息粘贴给AI,它能快速定位问题。