Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]PDO Sprawdzenie czy użytkownik i hasło istnieją w bazie
bwl
post 24.05.2018, 12:24:43
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

Ostrzeżenie: (0%)
-----


Hej.

Próbuję tak:

  1. $user_query = $db->prepare('SELECT user FROM users WHERE user = ":user" AND pass = ":pass"');
  2. $user_query->bindValue(':user', $login, PDO::PARAM_STR);
  3. $user_query->bindValue(':pass', $haslo, PDO::PARAM_STR);
  4. $user_query->execute();
  5.  
  6. $istnienie_uzytkownika = $user_query->rowCount();
  7.  
  8. if ($istnienie_uzytkownika>0)
  9. {
  10. echo "znaleziono uzytkowniak";
  11. }
  12. else
  13. {
  14. echo "nie ma takiego uzytkownika";

Jednak bezskutecznie, zresztą nawet storm mi podkreśla user i pass.

Z góry dzięki smile.gif

Ten post edytował bwl 24.05.2018, 12:25:21
Go to the top of the page
+Quote Post
Pyton_000
post 24.05.2018, 12:26:38
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Pierwsza sprawa:
- nie używamy " jeśli są named parameters czyli zamiast `":user"` ma być `:user`

Kolejna sprawa to masz pobrać dane usera na podstawie loginu a potem w PHP sprawdzić czy zakodowane hasło w BD jest zgodne z zakodowanym hasłem przesłanym od użytkownika. Tu zależy w jaki sposób jest kodowane hasło.
Go to the top of the page
+Quote Post
bwl
post 24.05.2018, 12:37:21
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

Ostrzeżenie: (0%)
-----


Ok, poprawiłem, ale teraz wali błędem: Parse error: syntax error, unexpected ':', expecting ',' or ')'. Wcześniej połączenie działało, z tym, że if zawsze zwracał, że nie ma takiego uzytkownika.
W tej chwili nie jest kodowane w żaden sposób. Jakoś tak robię najpierw logowanie, dopiero później rejestrację... dane wpisałem do tabeli ręcznie.
Go to the top of the page
+Quote Post
leonpro778
post 24.05.2018, 12:41:51
Post #4





Grupa: Zarejestrowani
Postów: 146
Pomógł: 19
Dołączył: 1.03.2012

Ostrzeżenie: (0%)
-----


Cytat(bwl @ 24.05.2018, 13:37:21 ) *
Ok, poprawiłem, ale teraz wali błędem: Parse error: syntax error, unexpected ':', expecting ',' or ')'. Wcześniej połączenie działało, z tym, że if zawsze zwracał, że nie ma takiego uzytkownika.
W tej chwili nie jest kodowane w żaden sposób. Jakoś tak robię najpierw logowanie, dopiero później rejestrację... dane wpisałem do tabeli ręcznie.


W której linii jest ten błąd? Kolejna sprawa, po co wyciągasz nazwę 'user' z bazy skoro jako parametr wyszukiwania podajesz 'user' ? Nie lepiej jest wyszukiwać id_user czy coś podobnego?
Go to the top of the page
+Quote Post
bwl
post 24.05.2018, 12:51:38
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

Ostrzeżenie: (0%)
-----


Zmieniłem na: 'SELECT user FROM users WHERE user=:user AND pass=:pass' i działa chociaż Storm nadal świeci.
Natomiast czy lepiej to ciężko mi odpowiedzieć, bo ja raczkuję dopiero wink.gif
Dzięki za pomoc.
Go to the top of the page
+Quote Post
leonpro778
post 24.05.2018, 12:54:55
Post #6





Grupa: Zarejestrowani
Postów: 146
Pomógł: 19
Dołączył: 1.03.2012

Ostrzeżenie: (0%)
-----


Hehe, co znaczy Storm "świeci" biggrin.gif Używam Storma i mi nie świeci biggrin.gif Może masz źle skonfigurowanego? Co do zmiennych i ich podkreślania to najedź po prostu myszą i sprawdź dlaczego Ci Storm coś podkreśla.
Go to the top of the page
+Quote Post
bwl
post 24.05.2018, 13:04:39
Post #7





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

Ostrzeżenie: (0%)
-----


No tak sobie mówię bo sobie taki oczoje... kolor ustawiłem wink.gif, ale chyba oboje wiemy o co chodzi.
Coś tam mi kolega konfigurował i inne podobne zapytania nie świecą.
Unable to resolve column 'user', i Unable to resolve table 'users'
Tu jeszcze przed zmianami, ale teraz jest tak samo.



Ten post edytował bwl 24.05.2018, 13:05:55
Go to the top of the page
+Quote Post
Pyton_000
post 24.05.2018, 13:10:44
Post #8





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Bo musiałbyś sobie dodać połączenie do bazy w stormie i wtedy jest też podpowiadanie. Dodatkowo można sobie takie zapytanie odpalić (ctrl + enter) z parametrami i ręcznie wpisujesz paraetry.
Go to the top of the page
+Quote Post
bwl
post 24.05.2018, 13:13:19
Post #9





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

Ostrzeżenie: (0%)
-----


Wydaje mi się, że baza jest podpięta i tak jak pisałem wcześniej inne podobne zapytania nie świecą.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 02:35