MVC增删改查代码
时间: 2023-07-07 17:10:00 浏览: 53
以下是一个简单的MVC增删改查代码示例:
模型部分:
```php
class UserModel {
private $db; // 数据库连接实例
public function __construct($db) {
$this->db = $db;
}
public function addUser($name, $email) {
// 添加用户
$sql = "INSERT INTO user (name, email) VALUES (:name, :email)";
$stmt = $this->db->prepare($sql);
$stmt->bindParam(':name', $name);
$stmt->bindParam(':email', $email);
$stmt->execute();
return $stmt->rowCount();
}
public function deleteUser($id) {
// 删除用户
$sql = "DELETE FROM user WHERE id=:id";
$stmt = $this->db->prepare($sql);
$stmt->bindParam(':id', $id);
$stmt->execute();
return $stmt->rowCount();
}
public function updateUser($id, $name, $email) {
// 更新用户信息
$sql = "UPDATE user SET name=:name, email=:email WHERE id=:id";
$stmt = $this->db->prepare($sql);
$stmt->bindParam(':id', $id);
$stmt->bindParam(':name', $name);
$stmt->bindParam(':email', $email);
$stmt->execute();
return $stmt->rowCount();
}
public function getUserById($id) {
// 根据ID获取用户信息
$sql = "SELECT * FROM user WHERE id=:id";
$stmt = $this->db->prepare($sql);
$stmt->bindParam(':id', $id);
$stmt->execute();
return $stmt->fetch(PDO::FETCH_ASSOC);
}
public function getAllUsers() {
// 获取所有用户信息
$sql = "SELECT * FROM user";
$stmt = $this->db->prepare($sql);
$stmt->execute();
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
}
```
控制器部分:
```php
class UserController {
private $userModel;
public function __construct($userModel) {
$this->userModel = $userModel;
}
public function addUser($name, $email) {
// 添加用户
$result = $this->userModel->addUser($name, $email);
if ($result > 0) {
echo "添加成功!";
} else {
echo "添加失败!";
}
}
public function deleteUser($id) {
// 删除用户
$result = $this->userModel->deleteUser($id);
if ($result > 0) {
echo "删除成功!";
} else {
echo "删除失败!";
}
}
public function updateUser($id, $name, $email) {
// 更新用户信息
$result = $this->userModel->updateUser($id, $name, $email);
if ($result > 0) {
echo "更新成功!";
} else {
echo "更新失败!";
}
}
public function getUserById($id) {
// 根据ID获取用户信息
$user = $this->userModel->getUserById($id);
if ($user) {
echo "用户ID:" . $user['id'] . "<br>";
echo "姓名:" . $user['name'] . "<br>";
echo "邮箱:" . $user['email'] . "<br>";
} else {
echo "用户不存在!";
}
}
public function getAllUsers() {
// 获取所有用户信息
$users = $this->userModel->getAllUsers();
if ($users) {
foreach ($users as $user) {
echo "用户ID:" . $user['id'] . "<br>";
echo "姓名:" . $user['name'] . "<br>";
echo "邮箱:" . $user['email'] . "<br><br>";
}
} else {
echo "暂无用户!";
}
}
}
```
视图部分:
添加用户:
```html
<form action="addUser.php" method="post">
<label>姓名:</label><input type="text" name="name"><br>
<label>邮箱:</label><input type="text" name="email"><br>
<input type="submit" value="添加">
</form>
```
删除用户:
```html
<form action="deleteUser.php" method="post">
<label>用户ID:</label><input type="text" name="id"><br>
<input type="submit" value="删除">
</form>
```
更新用户:
```html
<form action="updateUser.php" method="post">
<input type="hidden" name="id" value="<?php echo $user['id']; ?>">
<label>姓名:</label><input type="text" name="name" value="<?php echo $user['name']; ?>"><br>
<label>邮箱:</label><input type="text" name="email" value="<?php echo $user['email']; ?>"><br>
<input type="submit" value="更新">
</form>
```
根据ID获取用户信息:
```html
<form action="getUserById.php" method="post">
<label>用户ID:</label><input type="text" name="id"><br>
<input type="submit" value="查询">
</form>
```
获取所有用户信息:
```html
<a href="getAllUsers.php">查看所有用户</a>
```
在这个例子中,用户可以在视图中进行添加、删除、更新、查询和查看所有用户信息的操作,控制器接收到请求后调用相应的模型方法进行相应的数据处理,最后将处理结果返回给视图进行显示。