帮我用PHP写一个增删改查的源码程序,前后端分离,打包好让我直接下载
时间: 2024-03-24 10:38:02 浏览: 101
好的,以下是一个基本的增删改查的PHP源码程序,前后端分离,使用MySQL数据库。由于前后端分离,需要使用HTTP请求来传递数据。代码中使用了jQuery库来发起HTTP请求和处理响应数据。
注意:这是一个简单的示例程序,没有考虑安全性和性能问题,请勿直接用于生产环境。
后端代码(server.php):
```php
<?php
// 数据库连接信息
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 设置字符集
$conn->set_charset("utf8mb4");
// 获取HTTP请求方法
$method = $_SERVER['REQUEST_METHOD'];
// 获取HTTP请求数据
$data = json_decode(file_get_contents("php://input"), true);
// 处理HTTP请求
switch ($method) {
case 'GET':
// 查询数据
$sql = "SELECT * FROM users";
$result = $conn->query($sql);
$rows = array();
while ($row = $result->fetch_assoc()) {
$rows[] = $row;
}
echo json_encode($rows);
break;
case 'POST':
// 插入数据
$name = $data['name'];
$email = $data['email'];
$sql = "INSERT INTO users (name, email) VALUES ('$name', '$email')";
$conn->query($sql);
echo json_encode(array('success' => true));
break;
case 'PUT':
// 更新数据
$id = $data['id'];
$name = $data['name'];
$email = $data['email'];
$sql = "UPDATE users SET name='$name', email='$email' WHERE id=$id";
$conn->query($sql);
echo json_encode(array('success' => true));
break;
case 'DELETE':
// 删除数据
$id = $data['id'];
$sql = "DELETE FROM users WHERE id=$id";
$conn->query($sql);
echo json_encode(array('success' => true));
break;
}
```
前端代码(index.html):
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>增删改查示例程序</title>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<h1>增删改查示例程序</h1>
<table>
<thead>
<tr>
<th>编号</th>
<th>姓名</th>
<th>邮箱</th>
<th>操作</th>
</tr>
</thead>
<tbody id="tbody">
</tbody>
</table>
<br>
<h2>插入数据</h2>
<form>
<label>姓名:</label>
<input type="text" id="name" name="name" required>
<label>邮箱:</label>
<input type="email" id="email" name="email" required>
<button type="submit" id="insert">插入</button>
</form>
<br>
<h2>更新数据</h2>
<form>
<label>编号:</label>
<input type="text" id="id" name="id" required>
<label>姓名:</label>
<input type="text" id="update_name" name="name" required>
<label>邮箱:</label>
<input type="email" id="update_email" name="email" required>
<button type="submit" id="update">更新</button>
</form>
<br>
<h2>删除数据</h2>
<form>
<label>编号:</label>
<input type="text" id="delete_id" name="id" required>
<button type="submit" id="delete">删除</button>
</form>
<script>
// 查询数据
$.get('server.php', function (data) {
var tbody = $('#tbody');
for (var i = 0; i < data.length; i++) {
var row = '<tr>' +
'<td>' + data[i].id + '</td>' +
'<td>' + data[i].name + '</td>' +
'<td>' + data[i].email + '</td>' +
'<td><button class="update_button" data-id="' + data[i].id + '">更新</button> ' +
'<button class="delete_button" data-id="' + data[i].id + '">删除</button></td>' +
'</tr>';
tbody.append(row);
}
});
// 插入数据
$('#insert').click(function (event) {
event.preventDefault();
var name = $('#name').val();
var email = $('#email').val();
$.post('server.php', JSON.stringify({name: name, email: email}), function (data) {
if (data.success) {
alert('插入成功');
location.reload();
} else {
alert('插入失败');
}
}, 'json');
});
// 更新数据
$('#update').click(function (event) {
event.preventDefault();
var id = $('#id').val();
var name = $('#update_name').val();
var email = $('#update_email').val();
$.ajax({
url: 'server.php',
type: 'PUT',
data: JSON.stringify({id: id, name: name, email: email}),
success: function (data) {
if (data.success) {
alert('更新成功');
location.reload();
} else {
alert('更新失败');
}
},
dataType: 'json'
});
});
// 删除数据
$('#delete').click(function (event) {
event.preventDefault();
var id = $('#delete_id').val();
$.ajax({
url: 'server.php',
type: 'DELETE',
data: JSON.stringify({id: id}),
success: function (data) {
if (data.success) {
alert('删除成功');
location.reload();
} else {
alert('删除失败');
}
},
dataType: 'json'
});
});
// 更新按钮点击事件
$(document).on('click', '.update_button', function () {
var id = $(this).data('id');
var name = prompt('请输入姓名');
var email = prompt('请输入邮箱');
if (name && email) {
$.ajax({
url: 'server.php',
type: 'PUT',
data: JSON.stringify({id: id, name: name, email: email}),
success: function (data) {
if (data.success) {
alert('更新成功');
location.reload();
} else {
alert('更新失败');
}
},
dataType: 'json'
});
}
});
// 删除按钮点击事件
$(document).on('click', '.delete_button', function () {
var id = $(this).data('id');
if (confirm('确定要删除吗?')) {
$.ajax({
url: 'server.php',
type: 'DELETE',
data: JSON.stringify({id: id}),
success: function (data) {
if (data.success) {
alert('删除成功');
location.reload();
} else {
alert('删除失败');
}
},
dataType: 'json'
});
}
});
</script>
</body>
</html>
```
将以上两个代码保存为server.php和index.html文件,然后将它们放在一个文件夹中,用浏览器打开index.html文件即可使用。
阅读全文