Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] Skrypt logowania
Kpt_Blood
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 21.07.2008
Skąd: Lublin

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


Witam serdecznie wszystkich użytkowników forum. Chciałem prosić o pomoc w poniższym skrypcie. Otóż chodzi o to, że nie bardzo chce mi działać funkcja logowania. Wyskakuje mi wyjatek zawarty w lini 56. Dodam ze na pewno dobrze połączyłe się z baza danych(skrypt rejestracji mam juz gotowy;) ). Opisze ponizszy skrypt komentarzami to moze latwiej bedzie znalezc blad. Z gory dziekuje wszystkim za pomoc.

  1. <?php
  2.  
  3. require_once('connect_mysql.php'); //dolaczam plik z polaczeniem do bazy danych
  4.  
  5. $login=$_POST['nazwa'];//chyba komentarz zbedny;)
  6. $haslo=$_POST['haslo'];
  7.  
  8. //Funkcja logowania
  9. function logowanie($login, $haslo)
  10. {
  11. $polaczenie = connect_mysql();
  12. $db = $polaczenie->query("select login, haslo from username where nazwa='$login' and haslo=sha1('$haslo')");//wysylam zapytanie w ktorym odczytuje z bazy danych login i haslo, porownuje z ty
    mi wprowadzonymi
  13.  
  14. if (!$db)
  15. {
  16. throw new Exception('Logowanie nie powiodło się.');//w razie gdyby nie udalo sie ;)
  17. }
  18. if ($db->num_rows>0)//jesli uzytkownik takowy znajdzie sie w bazie danych to zawsze wartosc bedzie pow
    yzej 0, a wiec zwroci mi wartosc true;)
  19. {
  20. return true;
  21. }
  22. else 
  23. {
  24. throw new Exception('Logowanie nie powiodło się.');
  25.  
  26. }
  27. }
  28.  
  29. //funkcja sprawdza czy uzytkownik jest zalogowany
  30. function sprawdz_user()//ta funkcja jest uzyta na koncu;)
  31. {
  32. if (isset($_SESSION['uzytkownik']))//patrz dalsza czesc kodu, poniewaz tam tez zarejestrowalem uzytkownika sesji
  33. {
  34. echo 'Zalogowano jako '.stripslashes($_SESSION['uzytkownik']).'.';
  35. echo '
  36. ';
  37. }
  38. else
  39. {
  40.  echo 'Brak zalogowania.
  41. ';
  42.  echo '<a href="formularz.php">Przejdz zalogowac sie</a>';
  43.  exit;
  44. }
  45. }
  46.  
  47.  
  48. if ($login && $haslo)//no wlasnie wiec jesli jest login i haslo to:
  49. {
  50. try
  51. {
  52. logowanie($login, $haslo);
  53. $_SESSION['uzytkownik'] = $login;//dalsza czesc kodu to wlasnie tu
  54. }
  55. catch (Exception $e)
  56. {
  57. echo 'Należy być zalogowanym aby oglądać tę stronę.
  58. ';
  59. echo '<a href="formularz.php">Przejdz aby sie zalogowac</a>';
  60. }
  61. }
  62.  
  63. sprawdz_user();
  64. echo 'Witaj wiec na stronie;)';
  65.  
  66. ?>


Na moje oko zrobione jest poprawnie, jednak wyskakuje mi ten wyjatek ehh..
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 21.08.2025 - 15:34