批量和指定刪除用戶
判斷是單選還是多選刪除
#1. 單行是透過get傳參的方式寫在delete.php檔案中對應的ID。
2. 而多重刪除是透過POST的方式傳遞對應的ID到delete.php頁面。
3. 如果這兩個都不符合的話,那我們可以視為資料不合法。
if (is_array($_POST['id'])) {
$id = join(',', $_POST['id']);
} elseif (is_numeric($_GET['id'])) {
$id = (int) $_GET['id'];
} else {
echo '数据不合法';
exit;
}組合SQL語句
我們之前給大家在MySQL這一章時講解過刪除時可以使用到in的子語句。
同樣在這裡,我們就可以用in的子語句來達到效果。
join函數將多選刪除傳過來的id變成3,4,5的格式,最後多選刪除的SQL語句執行出來的效果就是:
delete from user where id in(3,4,5,6,8);
而單選刪除的語句效果就是:
delete from user where id in(3)
這樣我們就實現了單選和多選自適應效果。
$sql = "delete from user where id in($id)";
最終配對而成的整體程式碼示範如下:
<?php
include 'connection.php';
if (is_array($_POST['id'])) {
$id = join(',', $_POST['id']);
} elseif (is_numeric($_GET['id'])) {
$id = (int) $_GET['id'];
} else {
echo '数据不合法';
exit;
}
$sql = "delete from user where id in($id)";
$result = mysqli_query($conn, $sql);
if ($result) {
echo '删除成功';
} else {
echo '删除失败';
}
新建檔案
<?php
include 'connection.php';
if (is_array($_POST['id'])) {
$id = join(',', $_POST['id']);
} elseif (is_numeric($_GET['id'])) {
$id = (int) $_GET['id'];
} else {
echo '数据不合法';
exit;
}
$sql = "delete from user where id in($id)";
$result = mysqli_query($conn, $sql);
if ($result) {
echo '删除成功';
} else {
echo '删除失败';
}
預覽
Clear
- 課程推薦
- 課件下載
課件暫不提供下載,工作人員正在整理中,後期請多關注該課程~ 















