У меня есть следующий код, который является частью функции для добавления пользователя в базу данных на PHP. Он добавляет пользователя в базу данных.
if($user != '' && $pass != ''){
$new_name_q = "INSERT IGNORE INTO $db_name (`User`, `Password` ,`Name`, `Medals`, `TextSize`)
VALUES ('$user','$pass','$nameComplete', '000000', '18')";
$new_name_rs = mysqli_query($connection1,$new_name_q);
if(!$new_name_rs)
{
die("No name added: " . mysql_error());
}
}
Запрос работает нормально, и я не получаю дубликатов.
Но я хотел бы повторить предупреждение для пользователя в случае, если запрос игнорируется.
Вот код, который вам нужен:
if($user != '' && $pass != ''){
$new_name_q = "INSERT IGNORE INTO $db_name (`User`, `Password` ,`Name`, `Medals`, `TextSize`)
VALUES ('$user','$pass','$nameComplete', '000000', '18')";
$new_name_rs = mysqli_query($connection1,$new_name_q);
$affected = mysqli_affected_rows($connection1);
if(!$affected) {
die("No name added");
}
}
Увидеть http://www.php.net/manual/en/mysqli.affected-rows.php
[Здесь я предполагаю, что вы сделали что-то вроде обеспечения того, что переменные уже правильно экранированы]Других решений пока нет …