Форумы портала PHP.SU » » Вопросы новичков » Авторизация пользователя

Страниц (1): [1]
 

1. Denis427 - 14 Мая, 2019 - 22:37:15 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $newuser = new mysqli ("SELECT COUNT(*) FROM `users` WHERE login = '".$_POST["login"]."'");
  2.         if ($newuser == 1)
  3.                 echo "Есть уже такой пользователь" ;
  4.         else
  5.                 echo "Такого пользователя нет";



Где тут ошибка? Все что не введу в форму входа всегда один ответ "Есть уже такой пользователь", даже если на самом деле его нет.
2. LIME - 14 Мая, 2019 - 23:03:12 - перейти к сообщению
ржу
тут ошибка везде))
где ты видел подомное использование mysqli
понимаешь нельзя сочинять код как тебе захочется)))
смотри примеры
https://www.php.net/manual/ru/my...li.construct.php
https://www.php.net/manual/ru/mysqli.query.php
3. Denis427 - 16 Мая, 2019 - 19:12:34 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. $link = mysqli_connect('localhost', 'user', 'password', 'world');
  3. $result = mysqli_query($link, "SELECT COUNT(*) FROM `world` WHERE user_login = '".$_POST["login"]."'");
  4.         if ($result == 1)
  5.                 echo "Есть уже такой пользователь" ;
  6.         else
  7.                 echo "Такого пользователя нет";
  8.         mysqli_close($link);
  9.  


Все тоже самое. Есть пользователь, нет его одно сообщение "Есть уже такой пользователь"
4. LIME - 16 Мая, 2019 - 19:26:05 - перейти к сообщению
Denis427 не умеешь сам искать по мануалу
так у тебя дальше не пойдет
учись
https://www.php.net/manual/ru/my....fetch-array.php
https://www.php.net/manual/ru/my....fetch-assoc.php
(Добавление)

(Добавление)
PHP:
скопировать код в буфер обмена
  1.         if ($result->num_rows === 1)
  2.                 echo "Есть уже такой пользователь" ;
  3.         else
  4.                 echo "Такого пользователя нет";
5. Denis427 - 16 Мая, 2019 - 19:34:08 - перейти к сообщению
LIME Спасибо, помогло
6. Мелкий - 16 Мая, 2019 - 19:44:19 - перейти к сообщению
Только определитесь, вы count считаете на базе или num_rows проверяете в PHP.
Потому что count без явной группировки будет возвращать всегда 1 строку независимо от данных, что мигом лишает смысла всю проверку.

ну и привет sql инъекциям.
7. Denis427 - 16 Мая, 2019 - 19:49:58 - перейти к сообщению
Мелкий
PHP:
скопировать код в буфер обмена
  1.  
  2. $result = mysqli_query($link, "SELECT * FROM `users` WHERE user_login = '".$login."'");
  3.  


SELECT COUNT убрал

 

Powered by ExBB FM 1.0 RC1