Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]PDO wyszukiwanie usera w bazie
Boshi
post 7.10.2014, 19:03:03
Post #1





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Cześć, za cholerę nie mogę napisac prostego warunku sprawdzania w PDO, co innego w mysql korzystając z funkcji mysql_num_row.

Co tutaj jest źle? w tej chwili wpisując imię do formularza które jest już w bazie, nie wyświetla żadnego komunikatu. Zresztą w ogóle nie wyświetla czy jest czy nie jest.

Jak sprawdzić czy taki user jest już w bazie czy nie?
  1. $add = $conect->prepare('SELECT `id`, `imie` FROM user WHERE `imie` = :imie');
  2.  
  3. // $add=$conect->prepare('INSERT INTO uzytkownicy ( `imie`, `nazwisko`, `haslo`)
  4. // VALUES(:imie, :nazwisko, :haslo)');
  5. $add->bindValue('imie', $imie, PDO::PARAM_STR);
  6. $add->execute();
  7. if($add->fetch())
  8. {
  9. echo 'istnieje taki user';
  10.  
  11. }
  12. else 'nie istnieje taki user';


Ten post edytował Boshi 7.10.2014, 19:03:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Boshi
post 7.10.2014, 22:32:48
Post #2





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Może aby było łatwiej podam cały kod. ( nie jest długi+ wyrzuciłem łączenie bo jest na pewno dobrze a szkoda rozszerzać kod tutaj) Jest sporo błędów, brak zastosowania wyrażeń regularnych itd, ale najpierw chcę nauczyć się operacji na samej bazie a potem te szczegóły sobie poprawię smile.gif

  1. <?php
  2. function przekieruj()
  3. {
  4. echo 'nie wszyskie pola zostaly wypelnione'."<br />";
  5. echo ' za 5 sekund nastąpi powrót do formularza rejestracyjnego'."<br />";
  6. header("Refresh: 5; dane_reje.html");
  7. }
  8.  
  9. function codepass($password)
  10. {
  11. return sha1(md5($password).'#!Rfdgd64'); // zakodowanie hasla algorytmem SHA1 ORAZ MD5
  12. }
  13.  
  14.  
  15. $imie= $_POST['imie'];
  16. $nazwisko= $_POST['nazwisko'];
  17. $haslo= codepass($_POST['haslo']);
  18. $haslo1=codepass($_POST['haslo1']);
  19.  
  20.  
  21. //sprawdzenie czy zmienne nie są puste
  22.  
  23.  
  24. if (empty($imie) || empty($nazwisko) || empty($haslo) || empty($haslo1) )
  25. przekieruj();
  26.  
  27. else if($haslo!=$haslo1)
  28. {
  29. echo 'podane hasla nie sa takie same'."<br />";
  30.  
  31. echo ' za 5 sekund nastąpi powrót do formularza rejestracyjnego'."<br />";
  32. header("Refresh: 5; dane_reje.html");
  33. exit;
  34. }
  35.  
  36. // sprawdzenie czy dany uzytkownik istnieje w bazie
  37. $add = $conect->prepare('SELECT `id`, `imie` FROM user WHERE `imie` = :imie');
  38.  
  39. // $add=$conect->prepare('INSERT INTO uzytkownicy ( `imie`, `nazwisko`, `haslo`)
  40. // VALUES(:imie, :nazwisko, :haslo)');
  41. $add->bindValue('imie', $imie, PDO::PARAM_STR);
  42. $add->execute();
  43.  
  44. $row = $add->fetch();
  45. var_dump($row);
  46. var_dump($imie);
  47.  
  48. {
  49. echo 'istnieje taki user';
  50.  
  51. }
  52.  
  53. else echo 'nie istnieje taki user';
  54.  
  55.  
  56.  
  57. ?>


Ten post edytował Boshi 7.10.2014, 22:40:52
Go to the top of the page
+Quote Post

Posty w temacie
- Boshi   [MySQL][PHP]PDO wyszukiwanie usera w bazie   7.10.2014, 19:03:03
- - nospor   Skoro ci nie wyswietla zadnego komunikatu to: albo...   7.10.2014, 19:11:01
- - Boshi   brakuje 'echo' przy elsie dlatego nie wy...   7.10.2014, 19:54:11
- - nospor   $row = $add->fetch(); var_dump(...   7.10.2014, 20:06:55
- - Boshi   bool(false) , czy wpiszę w polu imię dane z bazy c...   7.10.2014, 20:11:10
- - nospor   Widac nie znajduje To lecim dalej: var_dump(...   7.10.2014, 20:17:45
- - Boshi   Zwraca długość wpisanego stringa w pole imie:) ...   7.10.2014, 20:35:53
- - nospor   No dobra, a pokaz kod jaki dales z fetch co kazale...   7.10.2014, 20:45:23
- - Boshi   Może aby było łatwiej podam cały kod. ( nie jest d...   7.10.2014, 22:32:48
- - nospor   No dobra. Wynika z tego, że nie znajduje ci usera....   8.10.2014, 05:46:41
- - Turson   $add->bindValue('imie', $imie...   8.10.2014, 09:20:02
- - Boshi   Poprawiłem ":" ale to nie to oczywiście....   8.10.2014, 14:33:34
- - nospor   Sprawdziles dokladnie wszystkie rzeczy co podalem?...   8.10.2014, 14:36:47
- - Boshi   Sprawdziłem, ale miałeś rację... nie mam pojęcia...   8.10.2014, 14:45:09
- - Turson   Sprawdz czy przejdzie bez : to sie dowiesz.   8.10.2014, 14:46:37
- - Boshi   Jeżeli miało to nie przejść, to niestety, a może ...   9.10.2014, 18:51:07
- - nospor   Jesli przy logowaniu sprawdzasz hash z hasla, to i...   9.10.2014, 18:53:19
- - Boshi   No tak to jest logiczne, ale powiedz mi jak mam ...   9.10.2014, 19:47:05
- - nospor   Nie sądzisz, że logicznym jest sprawdzenie skryptu...   9.10.2014, 21:16:28
- - Boshi   Wybacz ale nie za bardzo rozumiem. Wg logiki to m...   9.10.2014, 22:53:07
- - untorched   Jak w trzecim? Przecież nospor miał niewątpliwie n...   9.10.2014, 23:44:15
- - Boshi   Tak to rozumiem, bo trzeba porównywać generowany h...   12.10.2014, 00:08:01
- - Pyton_000   Bo tak to działa. Tak ma być. Do weryfikacji używ...   12.10.2014, 00:40:02
- - Boshi   Dziękuję w takim razie za pomoc wszysktim   12.10.2014, 01:27:39


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: 14.08.2025 - 20:08