我正在使用Bootstrap Data Table並希望從數據庫中刪除多個用戶。我可以一次刪除1個用戶,沒有任何問題,但是一旦我嘗試刪除多個用戶時遇到問題,並且找不到任何錯誤。使用PHP中的ajax調用刪除多行
這裏是AJAX代碼:
function removeRow(){
var url = 'remove-user.php';
var id = document.getElementById("user-id").value;
var data = 'userID=' + id;
$.ajax({
url: url,
data: data,
cache: false,
error: function(e){
alert(e);
},
success: function() {
alert(data);
var selects = $('#users-table').bootstrapTable('getSelections');
ids = $.map(selects, function (row) {
return row.id;
});
$('#users-table').bootstrapTable('remove', {
field: 'id',
values: ids
});
}
});
}
實施例:在URL中的數據將是用戶ID = 1,2
這裏是刪除-user.php的代碼:
require("../config.php");
if(isset($_GET['userID'])) {
try{
$userID = $_GET['userID'];
$query = "DELETE FROM users WHERE user_id IN (:userID)";
$stmt = $db->prepare($query);
$stmt->bindParam(":userID", $userID, PDO::PARAM_INT);
$stmt->execute();
$user_removed = 'User was successfully deleted.';
$_SESSION['user_removed'] = $user_removed;
} catch (Exception $e){
echo 'The following error occured: <br/>'.$e->getMessage();
}
}
當我檢查多個用戶時,第一個用戶將得到刪除,但不是其他用戶。我的代碼中是否有錯誤?
同樣,我正在尋找的是通過從表中選擇它們並傳遞隱藏輸入的值來刪除多個用戶,該隱藏輸入包含像這樣的多個id - userID = 1,2。當我直接進入remove-user.php
頁面並回顯GET時,它顯示爲1,2沒有引號。如果我更改我的刪除指定ID而不是綁定參數一切正常。我真的不知道爲什麼它不工作。
如果我需要提供更多信息,請讓我知道。
是什麼'$ _GET [ '用戶ID']'包含哪些內容? – 2015-01-20 22:32:34
您可以通過DOM-id選擇該ID。但是隻能有一個ID。 – 2015-01-20 22:35:07
@JayBlanchard它包含所有選中的複選框的ID並作爲URL中的參數傳遞 - userID = 1,2 – iamthestreets 2015-01-23 15:12:54