function activate($con, $email){
$email = mysqli_real_escape_string($con, $email);
return mysqli_query($con, "UPDATE `users` SET `active` = 1 WHERE `email` = '".$email."'");
}
if($role == 'Administrator'){
$query = mysqli_query($con, "SELECT * FROM `users` WHERE `active` = 0");
if(mysqli_num_rows($query) > 0){
while($row = mysqli_fetch_assoc($query)){
$email = $row['email'];
$name = $row['name'];
$surname = $row['surname'];
echo $name . ' ' . $surname . ' - ' . $email . '<form method="post"><input type="submit" name="activate" value="Activeaza"></form></br>';
if(isset($_POST['activate']))
activate($con, $email);
}
}
}
Это мой код. Я хочу сделать страницу проверки для администратора, откуда он может проверить пользователей. Используя этот код, когда я активирую пользователя, он активирует всех пользователей. Я не знаю, как выйти из этого, а с переменными один за другим. Спасибо, я новичок в php: DСистема проверки правильности PHP и mysqli (процедурная)
** ВНИМАНИЕ **: При использовании 'mysqli' вы должны использовать [параметризованные запросы] (http://php.net/manual/ ru/mysqli.quickstart.prepared-statements.php) и ['bind_param'] (http://php.net/manual/en/mysqli-stmt.bind-param.php), чтобы добавить данные пользователя в ваш запрос. ** НЕ ПРИНИМАЙТЕ ** использовать ручное экранирование и интерполяцию строк или конкатенацию, чтобы выполнить это, потому что вы создадите серьезные [SQL-инъекции ошибок] (http://bobby-tables.com/), если вы когда-нибудь забудете что-то избежать. – tadman