gpt4 book ai didi

php - 如何使用php和ajax删除多条记录

转载 作者:行者123 更新时间:2023-11-29 11:41:02 25 4
gpt4 key购买 nike

当我使用 php 展示新闻时,我有多行新闻。我试图使用每行旁边的复选框同时删除多行。

这是我的 php 代码

<?
$select_news = $mysqli->query("SELECT * FROM news order by time desc limit $x,$numbershownews");

while ($rows_news = $select_news->fetch_array(MYSQL_ASSOC)){

$id_news = $rows_news ['id'];
$title_news = $rows_news ['title'];
?>
<table>
<tr rel="<? echo $id_news; ?>">

<td class="tdtable" id="<? echo $id_news; ?>" width="4%">
<input type="checkbox" rel="<? echo $id_news; ?>" name="checkbox[]" class="checkboxtable" value="<? echo $id_news; ?>">
</td>
<td class="tdtable" id="<? echo $id_news; ?>" width="50%">
<? echo $title_news; ?>
</td>
</tr
</table
<?
}
?>
<button class="deletecheckednews">Delete</button>

这是 jquery 代码

$(".deletecheckednews").on( 'click', function () {

var arr = new Array();

$(".checkboxtable:checked").each(function () {
arr.push($(this).attr("rel"));
});

if(arr == "") {
alertify.error("no selected news");
} else {

$.ajax({
type: "POST",
url: "action/delete_multiple_news.php",
data: arr ,
cache: false,
success: function(data) {
alertify.success(data);

$.each(arr, function(key, value) {
$("tr[rel="+value+"]").fadeOut();
});
}
});

}

return false
});

如何将此数组传递给“delete_multiple_news.php”?我已经尝试过这个 $checkedneww = $_REQUEST['arr']; 和这个 $checkedneww = $_POST['arr']; 但它不起作用。我将如何删除选定的行?

最佳答案

开启

$.ajax({
type: "POST",
url: "action/delete_multiple_news.php",
data: {"array_del": arr} , / <-
cache: false,
success: function(data){
alertify.success(data);

在 PHP 中使用

$array_del = filter_input(INPUT_POST, 'array_del', FILTER_SANITIZE_STRING);

如果你想看到结果,只需这样做:

在 PHP ajax 中:

$array_del = filter_input(INPUT_POST, 'array_del', FILTER_SANITIZE_STRING);
echo json_encode($array_del);

在js中:

$.ajax({
type: "POST",
url: "action/delete_multiple_news.php",
data: arr ,
cache: false,
success: function(data){
alertify.success(data);
console.debug(data);
//$.each(arr, function(key, value) {
// $("tr[rel="+value+"]").fadeOut();
//});

}
});

要删除,您可以在sql中使用WHERE来过滤您想要删除示例的结果。如果结果不止一个,则创建一个循环或公共(public)列。

$mysqli->query(DELETE FROM table_name WHERE some_column = $array_del[some_column]);

关于php - 如何使用php和ajax删除多条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35773589/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com