Привет, ребята, я работал в течение 12 часов, я не могу найти исправление. Я пытаюсь сравнить пользовательский ввод с результатом базы данных, например $username == $result
echo «Имя пользователя уже принято, но проблема в том, что он проходит через 2 оператора без перерыва, и если я поставлю перерыв для выхода из цикла, он всегда проверяет для $email == $result2
несмотря на не входящих любой электронной почты в полеPHP mysql bug query
if (isset($_POST['username']) or isset($_POST['email'])) {
$extract = mysql_query("
SELECT
`username`, `email`
FROM `users`
WHERE `username`='$username' OR `email`='$email'
");
$resultq = mysql_num_rows($extract);
while ($row = mysql_fetch_array($extract)) {
$result = $row['username'];
$result2 = $row['email'];
echo " " . $result;
echo " " . $result2;
if ($username == $result) {
echo " Username is already Taken!";
// break; //whenever i put break, it always gives me the else if statement echo, despite not entering any email in the field
} //$pass = $_POST['pass'];
else if ($email == $result2) {
echo "Email Address is already used!";
// break;
} else {
}
}
}
Объясните мне, как это отличается от [mysql phpmyadmin User Input База данных COMPARE] (http://stackoverflow.com/questions/18407734/mysql-phpmyadmin-user-input-compare-database). Вы можете использовать вариант моего решения для этого также ... –
Ваш скрипт уязвим для SQL-инъекций. – Gumbo