Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Rejestracja użytkownika
Misiuu
post
Post #1





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 13.10.2009

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


Witajcie, mam taki kodzik rejestracji wszystko działało, a teraz gdy sie rejestruje po prostu strona sie odświeża.

  1.  
  2. <?php
  3.  
  4. session_start(); // rozpoczęcie sesji
  5.  
  6. if (!isset($_SESSION['login'])) { // dostęp dla niezalogowanego użytkownika
  7.  
  8. include 'db.php'; // połączenie się z bazą danych
  9. $tabela = 'uzytkownik'; // zdefiniowanie tabeli MySQL
  10.  
  11.  
  12. if ($_POST["wyslane"]) { // jeżeli formularz został wysłany, to wykonuje się poniższy skrypt
  13.  
  14. // filtrowanie treści wprowadzonych przez użytkownika
  15. $login = htmlspecialchars(stripslashes(strip_tags(trim($_POST["login"]))), ENT_QUOTES);
  16. $haslo = $_POST["haslo"];
  17. $haslo2 = $_POST["haslo2"];
  18. $email = htmlspecialchars(stripslashes(strip_tags(trim($_POST["email"]))), ENT_QUOTES);
  19. $email2 = htmlspecialchars(stripslashes(strip_tags(trim($_POST["email2"]))), ENT_QUOTES);
  20. $imie = htmlspecialchars(addslashes(strip_tags(trim($_POST["imie"]))), ENT_QUOTES);
  21. $nazwisko = htmlspecialchars(addslashes(strip_tags(trim($_POST["nazwisko"]))), ENT_QUOTES);
  22.  
  23.  
  24. // system sprawdza czy prawidło zostały wprowadzone dane
  25. if (strlen($login) < 3 or strlen($login) > 30 or !eregi("^[a-zA-Z0-9_.]+$", $login)) {
  26. $blad++;
  27. echo '<p>Proszę poprawny wprowadzić login (od 3 do 30 znaków).</p>';
  28. } else {
  29. $wynik = mysql_query("SELECT * FROM $tabela WHERE login='$login'");
  30. if (mysql_num_rows($wynik) <> 0) {
  31. $blad++;
  32. echo '<p>Podana nazwa użytkownika została już zajęta.</p>';
  33. }
  34. }
  35. if (strlen($haslo) < 6 or strlen($haslo) > 30 ) {
  36. $blad++;
  37. echo '<p>Proszę poprawnie wpisać hasło (od 6 znaków do 30 znaków). </p>';
  38. }
  39. if ($haslo !== $haslo2) {
  40. $blad++;
  41. echo '<p> Podane hasła nie są ze sobą zgodne. </p>';
  42. }
  43. if (!eregi("^[0-9a-z_.-]+@([0-9a-z-]+\.)+[a-z]{2,4}$", $email)) {
  44. $blad++;
  45. echo '<p> Proszę wprowadzić poprawnie adres email.</p>';
  46. } else {
  47. $wynik = mysql_query("SELECT * FROM $tabela WHERE email='$email'");
  48. if (mysql_num_rows($wynik) <> 0) {
  49. $blad++;
  50. echo '<p> Podany adres e-mail jest już zajęty.</p>';
  51. }
  52. }
  53. if ($email !== $email2) {
  54. $blad++;
  55. echo '<p> Podane adresy e-mail nie są ze sobą zgodne.</p>';
  56. }
  57.  
  58.  
  59. // jeżeli nie ma żadnego błedu, użytkownik zostaje zarejestronwany i wysłany do niego e-mail z linkiem aktywacyjnym
  60. if ($blad == 0) {
  61.  
  62. $haslo = md5($haslo); // zaszyfrowanie hasla
  63. $kod = uniqid(rand()); // tworzenie unikalnego kodu dla użytkownika
  64.  
  65. $wynik = mysql_query("INSERT INTO $tabela VALUES('', '$imie', '$nazwisko', '$login', '$haslo', '$email', '$kod', NOW(), '')");
  66. if ($wynik) {
  67. echo ' Zarejestrowałeś się ';
  68. mysql_close($polaczenie);
  69. }
  70. }
  71. mysql_close($polaczenie);
  72. }
  73.  
  74. // tworzenie formularza HTML
  75. echo '
  76.  
  77. <form action="index.php?page=rejestracja" method="post">
  78. <input type="hidden" name="wyslane" value="TRUE" />
  79.  
  80. <p>Imię: <input type="text" name="imie" /></p>
  81. <p>Nazwisko: <input type="text" name="nazwisko" /></p>
  82. <p>Login*: <input type="text" name="login" /></p>
  83. <p>Hasło*: <input type="password" name="haslo" /></p>
  84. <p>Powtórz hasło*: <input type="password" name="haslo2" /></p>
  85. <p>Adres e-mail*: <input type="text" name="email" /></p>
  86. <p>Powtórz adres e-mail*: <input type="text" name="email2" /></p>
  87. <p><input type="submit" value="wyślij" /></p></form>
  88.  
  89. ';
  90.  
  91. } else {
  92. header('Location: / '); // zalogowany użytkownik zostaje przekierowany na stronę główną
  93. }
  94.  
  95. ?>
  96.  


mółgby ktoś sprawdzić gdzie tu jest błąd ?

Ten post edytował Misiuu 11.08.2012, 15:40:19
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 3.10.2025 - 14:23