Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Funkcja rejestrująca użytkownika
Forum PHP.pl > Forum > Przedszkole
szulcs2
Mam taką funkcję
  1. <?php
  2. require_once('funkcje_bazy.php');
  3.  
  4. function rejestruj($nazwa_uz, $email, $haslo, $imie_uz)
  5. {
  6.  
  7. $lacz = lacz_bd();
  8.  
  9. $wynik = $lacz->query("select * from uzytkownicy where login='$nazwa_uz'"); 
  10. if (!$wynik)
  11.  throw new Exception('Wykonanie zapytania nie powiodło się.');
  12. if ($lacz->num_rows>0) 
  13.  throw new Exception('Nazwa użytkownika zajęta! Proszę wrócić i wybrać inną.');
  14.  
  15. $wynik = $lacz->query("insert into uzytkownicy (email, imie, login, haslo) values 
  16.  ('$email', '$imie_uz', '$nazwa_uz', sha1('$haslo') )");
  17. if (!$wynik)
  18. throw new Exception('Rejestracja w bazie danych niemożliwa. Proszę spróbować później');
  19.  
  20. return true;
  21. }
  22. ?>


W przypadku, gdy istnieje już dany login użytkownika, funkcja powinna zwrócić wyjątek, jednak ona dodaje usera o tym samym loginie do bazy.
Gdzie jest błąd w tym kodzie??
erix
A co w ogóle zwraca Twoja metoda $lacz->query?
szulcs2
W zasadzie to chyba nic nie zwraca gdy próbuje ją wyechować. Ale zapytanie w mysql dziala dobrze.
pyro
  1. // moze tak?
  2.  
  3. <?php
  4. require_once('funkcje_bazy.php');
  5.  
  6. function rejestruj($nazwa_uz, $email, $haslo, $imie_uz)
  7. {
  8.  
  9. $lacz = lacz_bd();
  10.  
  11. $wynik = $lacz->query("select * from uzytkownicy where login='$nazwa_uz'"); 
  12. if (!$wynik)
  13.  throw new Exception('Wykonanie zapytania nie powiodło się.');
  14. if ($lacz->num_rows>0) 
  15. {
  16.  throw new Exception('Nazwa użytkownika zajęta! Proszę wrócić i wybrać inną.');
  17. }
  18. $wynik = $lacz->query("insert into uzytkownicy (email, imie, login, haslo) values 
  19.  ('$email', '$imie_uz', '$nazwa_uz', sha1('$haslo') )");
  20. if (!$wynik)
  21. throw new Exception('Rejestracja w bazie danych niemożliwa. Proszę spróbować później');
  22.  
  23. return true;
  24. }
  25. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.