Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Rejestracja i logowanie
Forum PHP.pl > Forum > Przedszkole
Mnemonicc
Cześć. Napisałem sobie dwa skrypty, pierwszy na pewno nie działa, mimo iż wyświetla mi się za każdym razem, że zostałem pomyślnie zarejestrowany. Jeśli to ma jakeis znaczenie to powiem że zainstalowanego mam WAMPa. Drugiego skryptu jeszcze nie przetestowałem z wiadomych względów, mam jednak pytanie. Chciałbym aby sesje były na id uzytkownika. Jak to napisać (konkretnie chodzi o przypisanie do zmiennej $id)? A także ogólne pytanie: jak przy logowaniu mogę rozpoznawać czy to jest np. admin czy zwykły użytkownik?

Rejestracja:
  1. <?php
  2. require('funkcje.php');
  3.  
  4. $user=$_POST['user'];
  5. $pass=$_POST['pass'];
  6. $pass2=$_POST['pass2'];
  7. $email=$_POST['email'];
  8. $email2=$_POST['email2'];
  9. $lacz=lacz();
  10.  
  11. if(!wypelnony($_POST)) {
  12. echo &#092;"Nie zostały wypełnone wszystkie pola formularza. Spróbuj ponownie.\";
  13. exit; }
  14.  
  15. if(strlen($user)<6) {
  16. echo &#092;"Podana nazwa użytkownika ma mniej niz 6 znaków\";
  17. }
  18. else {
  19. $wynik=$lacz->query(&#092;"select user from user where user='$user'\"); 
  20. if($lacz->num_rows>0) {
  21. echo &#092;"Nazwa użytkownika zejęta\";
  22. exit; 
  23. }
  24. }
  25.  
  26. if(strlen($pass)<6) {
  27. echo &#092;"Podane hasło ma mniej niz 6 znaków\";
  28. exit; }
  29.  
  30. if($pass!=$pass2) {
  31. echo &#092;"Podane hasła nie są identyczne\";
  32. exit; }
  33.  
  34. if(!sprawdz_email($email)) { 
  35. echo &#092;"Adres email jest niepoprawny\";
  36. exit; 
  37. }
  38.  
  39. if($email!=$email2) {
  40. echo &#092;"Podane adresy pocztowe nie są identyczne\";
  41. exit; 
  42. }
  43.  
  44. $wynik=$lacz->query(&#092;"select email from user where email='$email'\");
  45. if($lacz->num_rows>0) {
  46. echo &#092;"Taki adres email już jest zajęty w naszej bazie\";
  47. }
  48.  
  49. $wynik=$lacz->query(&#092;"insert into user ('user','pass','email') values ('$user','$pass','$email'\");
  50. echo &#092;"Zostałeś pomyslnie zajestrowany\";
  51. ?>

Logowanie:
  1. <?php
  2. require(&#092;"funkcje.php\");
  3.  
  4. $user=$_POST['user'];
  5. $pass=$_POST['pass'];
  6. $lacz=lacz();
  7.  
  8. if (isset($_SESSION['id'])) {
  9. echo &#092;"Jesteś już zalogowany jako :\".$_SESSION['user'];
  10. exit; 
  11. }
  12.  
  13. if(!wypelnony($_POST) {
  14. echo &#092;"Nie zostały wypełnone wszystkie pola formularza. Spróbuj ponownie.\";
  15. exit; 
  16. }
  17.  
  18. if(strlen($user<6) {
  19. echo &#092;"Podana nazwa użytkownika ma mniej niz 6 znaków\";
  20. exit; 
  21. }
  22.  
  23. if(strlen($pass<6) {
  24. echo &#092;"Podane hasło ma mniej niz 6 znaków\";
  25. exit; 
  26. }
  27.  
  28. $wynik=$lacz->$zapytanie(&#092;"select user,pass from user where user='$user' and pass='$pass'\");
  29. if($lacz->num_rows==0) {
  30. echo &#092;"Twój nick lub hasło są niepoprawne\";
  31. }
  32. else
  33. $_SESSION['id']=$id and $_SESSION['user'];
  34. echo &#092;"zostałes pomyślnie zalogowany\";
  35. ?>
Rash
W nazwie Tematu Zmień na [php][mysql]Rejestracja + Logowanie
Bo ci moderator zamknie temat biggrin.gif.
Mnemonicc
Ok, poradziłem już sobie w większości. Mam jeszcze problem z logowanie, a konkretniej z tymi linijkami:
  1. <?php
  2. $wynik=$lacz->query("select user,pass from user where user='$user' and pass='$pass'");
  3. if($lacz->num_rows==0) {
  4. echo "Twój nick lub hasło są niepoprawne";
  5. }
  6. else
  7. $_SESSION['id']=$id and $_SESSION['user']=$user;
  8. echo "zostałes pomyślnie zalogowany jako: ".$_SESSION['user'];
  9. ?>


Ciągle wyświetla mi że "Twój nick lub hasło są niepoprawne". Dlaczego?
EDIT:
Ok, zauważyłem, że zapytania select w ogóle mi nie działają w obu skryptach. Przeinstalowałem nawet WAMPa ale dalej to samo. Ktoś wie dlaczego albo jak to skonfigurować aby dobrze chodziło?

Pomoże mi ktoś czy mam tak dalej prowadzić sobie ten monolog!?
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.