PHP: <? include_once("connect.php"); if (isset($_POST['submit'])) { if(empty($_POST['AccountID'])) { echo 'Вы не ввели логин'; } elseif(empty($_POST['passwd'])) { echo 'Вы не ввели пароль'; } elseif(empty($_POST['passwd2'])) { echo 'Вы не ввели подтверждение пароля'; } elseif($_POST['passwd'] != $_POST['passwd2']) { echo 'Введенные пароли не совпадают'; } elseif(empty($_POST['email'])) { echo 'Вы не ввели E-mail'; } else { $AccountID = $_POST['AccountID']; $passwd = md5(trim($_POST['passwd'])); $passwd2 = $_POST['passwd2']; $email = $_POST['email']; $query = "SELECT serial_number FROM [BillingDB].[dbo].[TBL_Member_Data] WHERE AccountID='$AccountID' AND passwd='$passwd'"; $sql = sqlsrv_query($conn,$query) or die (print_r(sqlsrv_errors(),true)); if (sqlsrv_num_rows($sql) > 0) { echo 'Такой логин уже существует'; } else { $AccountID=addslashes($AccountID); $passwd=addslashes($passwd); $email=addslashes($email); $query = "INSERT INTO [BillingDB].[dbo].[TBL_Member_Data] (AccountID , passwd , email ) VALUES ('$AccountID', '$passwd', '$email')"; $result = sqlsrv_query($conn,$query) or die (print_r(sqlsrv_errors(),true)); echo 'Спасибо за регистрацию!'; } } } ?> Проблема в вот чем...Такое чувство,что проверка на "логины" просто пропускается и идет регистрация.Как мне кажется это опять php 7.0 и надо заменять функции или добавлять что-то новое БД использую mssql
Ты проверяешь не на логин а на логин + пароль. Пароли нужно хешировать а все данные проверять и не просто экранировать
Уже сам всё сделал PHP: $row_count = sqlsrv_has_rows( $sql ); if ($row_count > 0) Вроде помогло и без ошибок всё
@Winner1337, процитирую @nospiou: Что произойдет, если укажешь уже имеющийся в базе логин и другой пароль? Конечно, поле "логин" в базе может быть уникальным, но...
Вот и подскажи ТС'у, что произойдет в описанном случае, исходя из приведенного кода. Должен, конечно, но в данном случае этот факт приведёт лишь к очередному notice или warning... В общем, тот, кто пытается зарегистрироваться не увидит сообщения о существовании "такого логина"