PHP实现单击“添加”按钮增加一行表单项,并将所有内容插入到数据库中
时间: 2024-03-12 15:47:11 浏览: 155
好的,这是 PHP 实现单击“添加”按钮增加一行表单项,并将所有内容插入到数据库中的大致思路:
1. 在 HTML 页面中,使用 JavaScript 或 jQuery 监听“添加”按钮的点击事件;
2. 点击“添加”按钮时,动态添加一行表单项;
3. 点击“提交”按钮时,将表单数据通过 Ajax 发送到后台;
4. 后台接收到数据后,进行数据的插入操作,将数据插入到对应的数据库表中。
以下是具体的实现步骤:
1. HTML 页面中,使用 JavaScript 或 jQuery 监听“添加”按钮的点击事件,并在点击时动态添加一行表单项。例如:
```html
<!-- HTML -->
<table id="form-table">
<tr>
<td><input type="text" name="field1"></td>
<td><input type="text" name="field2"></td>
<td><button id="add-row">添加</button></td>
</tr>
</table>
<script>
// JavaScript
let formTable = document.querySelector("#form-table");
let addRowBtn = document.querySelector("#add-row");
addRowBtn.addEventListener("click", function () {
let newRow = document.createElement("tr");
newRow.innerHTML = `
<td><input type="text" name="field1"></td>
<td><input type="text" name="field2"></td>
<td><button class="remove-row">删除</button></td>
`;
formTable.appendChild(newRow);
});
// 或者使用 jQuery
$("#add-row").click(function () {
let newRow = `
<tr>
<td><input type="text" name="field1"></td>
<td><input type="text" name="field2"></td>
<td><button class="remove-row">删除</button></td>
</tr>
`;
$("#form-table").append(newRow);
});
</script>
```
2. 在 HTML 页面中,使用 JavaScript 或 jQuery 监听“删除”按钮的点击事件,并在点击时删除对应的表单项。例如:
```html
<!-- HTML -->
<table id="form-table">
<tr>
<td><input type="text" name="field1"></td>
<td><input type="text" name="field2"></td>
<td><button class="add-row">添加</button></td>
</tr>
</table>
<script>
// JavaScript
let formTable = document.querySelector("#form-table");
formTable.addEventListener("click", function (event) {
if (event.target.classList.contains("remove-row")) {
event.target.closest("tr").remove();
}
});
// 或者使用 jQuery
$("#form-table").on("click", ".remove-row", function () {
$(this).closest("tr").remove();
});
</script>
```
3. 在 HTML 页面中,添加一个“提交”按钮,点击时通过 Ajax 将表单数据发送到后台。例如:
```html
<!-- HTML -->
<form id="my-form">
<table id="form-table">
<!-- 表单项 -->
</table>
<button type="submit">提交</button>
</form>
<script>
// JavaScript
let myForm = document.querySelector("#my-form");
myForm.addEventListener("submit", function (event) {
event.preventDefault();
let formData = new FormData(myForm);
$.ajax({
type: "POST",
url: "insert.php",
data: formData,
contentType: false,
processData: false,
success: function (response) {
console.log(response);
},
error: function (xhr, status, error) {
console.log(error);
}
});
});
// 或者使用 jQuery
$("#my-form").submit(function (event) {
event.preventDefault();
let formData = new FormData(this);
$.ajax({
type: "POST",
url: "insert.php",
data: formData,
contentType: false,
processData: false,
success: function (response) {
console.log(response);
},
error: function (xhr, status, error) {
console.log(error);
}
});
});
</script>
```
4. 在 PHP 文件 insert.php 中,接收表单数据并将数据插入到数据库中。例如:
```php
<?php
// 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 接收表单数据
$field1 = $_POST["field1"];
$field2 = $_POST["field2"];
// 插入数据到数据库
$sql = "INSERT INTO myTable (field1, field2) VALUES ('$field1', '$field2')";
if ($conn->query($sql) === TRUE) {
echo "数据插入成功";
} else {
echo "数据插入失败: " . $conn->error;
}
// 关闭数据库连接
$conn->close();
?>
```
以上就是 PHP 实现单击“添加”按钮增加一行表单项,并将所有内容插入到数据库中的大致思路和实现步骤。
阅读全文