php实现crud
PHP实现CRUD操作
数据库连接
使用PDO或MySQLi扩展连接数据库。PDO更通用,支持多种数据库。
$host = 'localhost';
$dbname = 'your_database';
$username = 'your_username';
$password = 'your_password';
try {
$pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die("Connection failed: " . $e->getMessage());
}
创建(Create)
向数据库插入新记录。
$name = $_POST['name'];
$email = $_POST['email'];
$sql = "INSERT INTO users (name, email) VALUES (:name, :email)";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':name', $name);
$stmt->bindParam(':email', $email);
$stmt->execute();
读取(Read)
从数据库获取记录。

$sql = "SELECT * FROM users";
$stmt = $pdo->query($sql);
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($users as $user) {
echo "ID: {$user['id']}, Name: {$user['name']}, Email: {$user['email']}<br>";
}
更新(Update)
修改数据库中的现有记录。
$id = $_POST['id'];
$newName = $_POST['new_name'];
$sql = "UPDATE users SET name = :name WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':name', $newName);
$stmt->bindParam(':id', $id);
$stmt->execute();
删除(Delete)
从数据库中移除记录。

$id = $_POST['id'];
$sql = "DELETE FROM users WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':id', $id);
$stmt->execute();
表单处理
创建HTML表单用于CRUD操作。
<!-- 创建表单 -->
<form method="post">
<input type="text" name="name" placeholder="Name">
<input type="email" name="email" placeholder="Email">
<button type="submit">Add User</button>
</form>
<!-- 更新表单 -->
<form method="post">
<input type="number" name="id" placeholder="User ID">
<input type="text" name="new_name" placeholder="New Name">
<button type="submit">Update User</button>
</form>
<!-- 删除表单 -->
<form method="post">
<input type="number" name="id" placeholder="User ID">
<button type="submit">Delete User</button>
</form>
安全注意事项
使用预处理语句防止SQL注入。 验证和过滤所有用户输入。 考虑使用CSRF令牌保护表单。
完整示例结构
典型的CRUD应用包含以下文件:
config.php- 数据库连接配置create.php- 处理创建操作read.php- 显示所有记录update.php- 处理更新操作delete.php- 处理删除操作index.php- 主界面展示所有功能和记录
这个实现展示了PHP中基本的CRUD操作,可以根据具体需求进行扩展和优化。






