<button type="submit" id="<?= $user['id'] ?>">Удалить</button>
<?php
//некий массив пользователей
$users_list = [
[
'id' => 1,
'login' => 'user_1',
'last_visit_date' => '27.12.2019 14:31:15',
'active' => true,
],
[
'id' => 2,
'login' => 'user_2',
'last_visit_date' => '27.12.2019 14:31:15',
'active' => false,
],
[
'id' => 3,
'login' => 'user_3',
'last_visit_date' => '27.12.2019 14:31:15',
'active' => false,
],
[
'id' => 4,
'login' => 'user_4',
'last_visit_date' => '27.12.2019 14:31:15',
'active' => true,
],
[
'id' => 5,
'login' => 'user_5',
'last_visit_date' => '27.12.2019 14:31:15',
'active' => false,
],
[
'id' => 6,
'login' => 'user_6',
'last_visit_date' => '27.12.2019 14:31:15',
'active' => true,
],
[
'id' => 7,
'login' => 'user_7',
'last_visit_date' => '27.12.2019 14:31:15',
'active' => true,
],
];
?>
<html>
<head>
<style>
table {
border: 0;
border-collapse: collapse;
padding:0
}
th, td {
border: 1px solid #000;
margin: 0;
padding: 10px;
}
th {
background-color: #ddd
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<th>id</th>
<th>login</th>
<th>last_visit_date</th>
<th>active</th>
<th></th>
</tr>
</thead>
<tbody>
<?php
foreach($users_list as $user){
echo '<tr>',
'<td>', $user['id'], '</td>',
'<td>', $user['login'], '</td>',
'<td>', $user['last_visit_date'], '</td>',
'<td>', $user['active'] ? 'active' : 'banned', '</td>',
'<td><button class="delete_user" data-userid="', $user['id'],'">Удалить</button></td>',
'</tr>';
}
?>
</tbody>
</table>
<script type="text/JavaScript">
Array.from(document.querySelectorAll('.delete_user'), function(el){
el.onclick = function(){
let xhr = new XMLHttpRequest();
let json = JSON.stringify();
xhr.open('POST', 'delete_user.php', true)
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.responseType = 'json';
xhr.onreadystatechange = function(response) {
if(xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
alert(xhr.response['msg'])
if(xhr.response['status'] === 'success'){
el.closest('tr').remove();
}
};
}
xhr.send('userid='+this.dataset.userid);
}
})
</script>
</body>
</html>
<?php
// Принимаем идентификатор пользователя
// проверяем, админ вызвал удаление или нет
//(крч. проверяем право на удаление пользователей)
// чтобы не левый чел всех не вынес
try{
$userid = (int)$_POST['userid'];
$can_delete = 0; // якобы мы проверили, и можно удалять
if(!$can_delete){
throw new Exception('Вы не имеете права удалять других пользователей!!!');
}
/*
* Куча доп. проверок после которых мы уверены что удалять мы
* Отправляем запрос на удаление, смотрим есть ли ошибки, если все хорошо шлем статус 'success'
*/
echo json_encode(['status' => 'success', 'msg' => 'Пользователь №' . $userid . ' успешно удален!']);
}
catch(Exception $ex){
/* попадаем сюда
* если возникла ошибка
* или случилось исключение
* шлем статус 'error' и текст ошибки
*/
echo json_encode(['status' => 'error', 'msg' => $ex->getMessage()]);
}