Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Token
kezman
post
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 0
Dołączył: 1.12.2008

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


Cześć, piszę skrypt rejestracji, mam jednak problem z tokenem. Chciałbym, aby token to były cyfry wygenerowane przez funkcję rand. Zrobiłem takie coś, niestety cały czas po kliknięciu rejestruj pojawia się info, że kod jest nie prawidłowy. Proszę o pomoc. Pozdrawiam

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Rejestracja</title>
  6.  
  7. </head>
  8. <body>
  9.  
  10. <!-- Formularz Rejestracji -->
  11.  
  12. <table cellspacing="10">
  13.  
  14.  
  15. <form action="reg.php" method="post">
  16.  
  17. <tr><td>Login :</td> <td><input type="text" name="login" /></td></tr>
  18.  
  19. <tr><td> Hasło :</td><td><input type="password" name="haslo" /></td></tr>
  20.  
  21. <tr><td>Powtórz hasło :</td><td><input type="password" name="haslo2"  /></td></tr>
  22.  
  23. <tr><td> E-mail</td><td><input type="text" name="email"  /></td></tr><br />
  24. <tr><td> Przepisz kod : <? $token = rand(1, 1111); echo $token; ?></td><td><input type="text" name="kod"  /></td></tr><br />
  25. <tr><td><input type="submit" name="wyslij" value="Rejestruj"/>
  26. <input type="reset" name="wyczysc" value="Wyczyść"/></td></tr>
  27. </form></td>    
  28.  
  29. </table>
  30.  
  31. <!-- Koniec Formularza Rejestracji -->
  32.  
  33. <?
  34. /* Połączenie z bazą danych */
  35.  
  36. require_once('config.php');
  37.  
  38. /* Na wypadek wyłączonego parametru Register_globals */
  39.  
  40. $login=$_POST['login'];
  41. $haslo=md5($_POST['haslo']);
  42. $haslo2=md5($_POST['haslo2']);
  43. $email=$_POST['email'];
  44. $kod=$_POST['kod'];
  45. $token=$_POST['token'];
  46.  
  47. /* Zmienne */
  48.  
  49. $min = '4'; // minimalna liczba znaków
  50. $maks = '16'; // maksymalna liczba znaków
  51. $temat = 'Dziękujemy za rejestrację na strona.pl'; // temat wiadomości e-mail po rejestracji
  52. $tresc = 'Dziękujemy za rejestrację ! Zapraszamy do aktywnego uczestniczenia w życiu strony ! Pozdrawiamy, administracja'; // treść wiadomości e-mail po rejestracji
  53. $od = 'nadawca@nadawca.pl'; // nadawca wiadomości e-mail
  54.  
  55.  
  56.  
  57. /* Zapytania do bazy danych */
  58.  
  59. $reg = "INSERT INTO `uzytkownicy` (`id`, `login`, `haslo`, `email`, `data`) VALUES ('', '$login', '$haslo', '$email', NOW())"; // utworzenie konta
  60. $user = mysql_num_rows(mysql_query("SELECT `login` FROM uzytkownicy WHERE login='$login'")); // sprawdzanie czy login jest wolny
  61. $mail = mysql_num_rows(mysql_query("SELECT `email` FROM uzytkownicy WHERE email='$email'")); // sprawdzanie czy e-mail jest już zarejestrowany
  62.  
  63.  
  64.  
  65.  
  66. /* Sprawdzanie poprawności wypełnienia formularza */
  67.  
  68. if (isset($_POST['wyslij'])) {
  69. if (empty ($login) || empty ($haslo) || empty ($haslo2) || empty ($email))
  70. {
  71. die ('<font color="red"><b>Wszystkie pola muszą być wypełnione !</font></b>'); // sprawdzanie czy wszystkie pola zostały wypełnione
  72. }
  73. elseif ($haslo !=$haslo2) {
  74. die ('<font color="red"><b>Wpisane hasła nie pasują do siebie !</font></b>'); // sprawdzanie czy podane hasła są takie same
  75. }
  76. elseif (!ereg("[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+.[a-zA-Z]" , $email)) {
  77.    die ('<font color="red"><b>Adres e-mail jest nie prawidłowy !</font></b>'); // sprawdzanie poprawności adres e-mail
  78. }
  79. elseif (strlen ($login) < $min) {
  80.    die ('<font color="red"><b>Podany login jest zbyt krótki !</font></b>'); // sprawdzanie czy login nie jest za krótki
  81. }
  82. elseif (strlen ($haslo) < $min) {
  83.    die ('<font color="red"><b>Podane hasło jest zbyt krótkie !</font></b>'); // sprawdzanie czy hasło nie jest za krótkie
  84. }
  85. elseif (strlen ($login) > $maks) {
  86.    die ('<font color="red"><b>Podany login jest za długi !</font></b>'); // sprawdzanie czy login nie jest za długi
  87. }
  88. elseif ($user > 0) {
  89.    die ('<font color="red"><b>Podany login jest już zajęty !</font></b>'); // sprawdzanie czy login jest już zajęty
  90. }
  91. elseif ($mail > 0) {
  92.    die ('<font color="red"><b>Podany mail jest już zajęty !</font></b>'); // sprawdzanie czy e-mail jest już zarejestrowany
  93. }
  94. elseif ($token != $kod) {
  95.    die ('<font color="red"><b>Przepisany kod jest nie prawidłowy !</font></b>');
  96. }
  97. else {
  98.  
  99. (@mysql_query ($reg));
  100. mail("$email" , "$temat" , "$tresc" , "From: $od");
  101. echo ('<font color="green"><b>Twoje konto zostało założone ! <br />
  102. Możesz teraz się <a href="logowanie.php">zalogować</a> .</font></b>
  103. '); // zakładanie konta, wysyłanie e-mail`a po rejestracji
  104.  
  105. }
  106.  
  107. }
  108.  
  109.  
  110.  
  111. ?>
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123. </body>
  124. </html>
Go to the top of the page
+Quote Post

Posty w temacie


Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 15:19