Я написал код, чтобы проверить, существует ли имя пользователя в базе данных или нет. Кажется, что возвращается такое имя пользователя, даже если существует одно и то же имя пользователя.Проверка наличия или отсутствия имени пользователя в sql и php
$conu=mysqli_connect("localhost","db_user","db_pass","db_name");
$result = mysql_query("SELECT 1 FROM member WHERE username = $username");
if ($result && mysql_num_rows($result) > 0) {
$user_err = "<i><span class='error'>Usernme already exists</span></i>";
$errflag = true;
}
elseif(preg_match("/^[0-9a-zA-Z_]{5,}$/", $username) === 0) {
$user_err = "<i><span class='error'>Usernme must be bigger than 5 chararacters and can contain only digits, letters and underscore</span></i>";
$errflag = true;
}
Вы, вероятно, ** широко открыты ** для SQL-инъекций, и вы ** будете взломаны **, если вы еще не были. Используйте подготовленные/параметризованные запросы с PDO или аналогичные, чтобы полностью избежать этой проблемы. – Brad