Php 删除表格行+;使用AJAX/JQuery的DB行
我创建了一个表,它在每次添加行时动态创建行+删除按钮(这些行从数据库中读取) 我希望使用delete按钮删除该行并删除DB数据 这是我的密码: Ajax调用:Php 删除表格行+;使用AJAX/JQuery的DB行,php,jquery,html,mysql,ajax,Php,Jquery,Html,Mysql,Ajax,我创建了一个表,它在每次添加行时动态创建行+删除按钮(这些行从数据库中读取) 我希望使用delete按钮删除该行并删除DB数据 这是我的密码: Ajax调用: $(document).ready(function() { $('button').click(function() { var $this = $(this); $.ajax({ type: 'GET', url: 'ajaxManager.ph
$(document).ready(function() {
$('button').click(function() {
var $this = $(this);
$.ajax({
type: 'GET',
url: 'ajaxManager.php',
data: 'idDel=' + $this.attr('id'),
success: function() {
$this.closest("tr").remove();
}
});
});
});
$name=filter_input(INPUT_POST, 'idDel', FILTER_SANITIZE_STRING, FILTER_NULL_ON_FAILURE);
if($name !== FALSE) {
$result = deletePlayer($db, $name);
echo json_encode($result);
}
function deletePlayer(PDO $conn, $name) {
$sql = "delete from player where name = :name";
try {
$conn->beginTransaction();
$stmt = $conn->prepare($sql);
$stmt->bindValue(":name", $name, PDO::PARAM_STR);
$stmt->execute();
$conn->commit();
$players = getPlayerInfo($conn);
} catch (PDOException $exc) {
echo $exc->getMessage();
}
return $players;
}
ajaxManager:
$(document).ready(function() {
$('button').click(function() {
var $this = $(this);
$.ajax({
type: 'GET',
url: 'ajaxManager.php',
data: 'idDel=' + $this.attr('id'),
success: function() {
$this.closest("tr").remove();
}
});
});
});
$name=filter_input(INPUT_POST, 'idDel', FILTER_SANITIZE_STRING, FILTER_NULL_ON_FAILURE);
if($name !== FALSE) {
$result = deletePlayer($db, $name);
echo json_encode($result);
}
function deletePlayer(PDO $conn, $name) {
$sql = "delete from player where name = :name";
try {
$conn->beginTransaction();
$stmt = $conn->prepare($sql);
$stmt->bindValue(":name", $name, PDO::PARAM_STR);
$stmt->execute();
$conn->commit();
$players = getPlayerInfo($conn);
} catch (PDOException $exc) {
echo $exc->getMessage();
}
return $players;
}
删除播放器功能:
$(document).ready(function() {
$('button').click(function() {
var $this = $(this);
$.ajax({
type: 'GET',
url: 'ajaxManager.php',
data: 'idDel=' + $this.attr('id'),
success: function() {
$this.closest("tr").remove();
}
});
});
});
$name=filter_input(INPUT_POST, 'idDel', FILTER_SANITIZE_STRING, FILTER_NULL_ON_FAILURE);
if($name !== FALSE) {
$result = deletePlayer($db, $name);
echo json_encode($result);
}
function deletePlayer(PDO $conn, $name) {
$sql = "delete from player where name = :name";
try {
$conn->beginTransaction();
$stmt = $conn->prepare($sql);
$stmt->bindValue(":name", $name, PDO::PARAM_STR);
$stmt->execute();
$conn->commit();
$players = getPlayerInfo($conn);
} catch (PDOException $exc) {
echo $exc->getMessage();
}
return $players;
}
该按钮可以从表中删除该行,但不能从数据库中删除该行
怎么了(
提前谢谢
编辑:数据库中的表名称为“player”,其中的列称为“name”。我看到您在ajax中发送id,但在SQL中我看到您按名称删除。您确定SQL中的名称等于ajax中的id吗SQL数据库中的表名为“name”,我也必须将ajax更改为name吗?对不起,我的错,我弄错了-表名为player,player中的列名为name。没错,所以现在的问题是您确定值[$this.attr('id')]在传递给列名的ajax中,或者表中有另一个名为id的列?您的查询可能如下所示:delete from player,其中id=:id