使用 jQuery、AJAX、PHP 删除数据库中的行
Using jQuery, AJAX, PHP to delete row in database
编辑:
根据下面评论中提供的解决方案。
数据库中没有发生任何事情
解决方案是简单地刷新页面,因为我之前在不同的目录中有 delete.php 文件(所以代码工作正常......这只是一个错误身份的情况 - 它总是最小的东西)。
页面上没有任何反应
解决方案是给父
一个唯一的 id(与 delete-button/image - 1 相同),然后在我的 jQuery.js 文件中添加 ajax-function。 ..
success: function() {
$('#'.concat(id)).remove();
}
感谢 @SikanderNawaz
结束编辑
我正在尝试使用 jQuery、AJAX 和 PHP 删除数据库中的一行,而我的代码应该可以,但无法正常工作。
我单击删除按钮,但在页面或数据库中没有任何反应。
我哪里错了?
希望这里有人能帮忙。
数据库
------------------
| id | link |
------------------
| 1 | image.jpg |
------------------
HTML
<head>
...
<script src="jquery-3.4.1.js"></script>
...
</head>
<body>
...
<button type="button" name="delete" id="delete" class="some stylings" value="1"><h6><b>X</b></h6></button>
<img src="images/image.jpg" />
...
<script src="jQuery.js"></script>
</body>
jQuery.js
$(document).ready(function(){
$('button#delete').click(function(){
var id = $(this).val(); // tested and returns 1 (see button value)
$.ajax({
url: 'delete.php',
type: 'post',
data: { id: id },
success: function() {
$('#'.concat(id)).remove();
}
});
});
})
delete.php
<?php
require ("connection.php");
if (isset($_POST['id'])) {
$id = $_POST['id'];
try {
$sql =
"
DELETE FROM test
WHERE
id = ?
";
$prepareTest = $pdo->prepare($sql);
$prepareTest->execute([$id]);
} catch(PDOException $e) {
file_put_contents('../error/e.txt', $e->getMessage(), FILE_APPEND);
}
}
在使用 JS/ Ajax 时,始终使用 console.log 记录数据和错误,并在“网络”选项卡中发现错误以及任何与数据库相关的错误,并使用转储的数据管理调试发现错误来源的每一步。
编辑:
根据下面评论中提供的解决方案。
数据库中没有发生任何事情
解决方案是简单地刷新页面,因为我之前在不同的目录中有 delete.php 文件(所以代码工作正常......这只是一个错误身份的情况 - 它总是最小的东西)。
页面上没有任何反应
解决方案是给父
一个唯一的 id(与 delete-button/image - 1 相同),然后在我的 jQuery.js 文件中添加 ajax-function。 ..
success: function() {
$('#'.concat(id)).remove();
}
感谢 @SikanderNawaz
结束编辑
我正在尝试使用 jQuery、AJAX 和 PHP 删除数据库中的一行,而我的代码应该可以,但无法正常工作。
我单击删除按钮,但在页面或数据库中没有任何反应。
我哪里错了?
希望这里有人能帮忙。
数据库
------------------
| id | link |
------------------
| 1 | image.jpg |
------------------
HTML
<head>
...
<script src="jquery-3.4.1.js"></script>
...
</head>
<body>
...
<button type="button" name="delete" id="delete" class="some stylings" value="1"><h6><b>X</b></h6></button>
<img src="images/image.jpg" />
...
<script src="jQuery.js"></script>
</body>
jQuery.js
$(document).ready(function(){
$('button#delete').click(function(){
var id = $(this).val(); // tested and returns 1 (see button value)
$.ajax({
url: 'delete.php',
type: 'post',
data: { id: id },
success: function() {
$('#'.concat(id)).remove();
}
});
});
})
delete.php
<?php
require ("connection.php");
if (isset($_POST['id'])) {
$id = $_POST['id'];
try {
$sql =
"
DELETE FROM test
WHERE
id = ?
";
$prepareTest = $pdo->prepare($sql);
$prepareTest->execute([$id]);
} catch(PDOException $e) {
file_put_contents('../error/e.txt', $e->getMessage(), FILE_APPEND);
}
}
在使用 JS/ Ajax 时,始终使用 console.log 记录数据和错误,并在“网络”选项卡中发现错误以及任何与数据库相关的错误,并使用转储的数据管理调试发现错误来源的每一步。