Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rejestracja - dane z formularza $_POST = NULL
Forum PHP.pl > Forum > PHP
bl4ck_b0x
Witam, oto mały kodzik rejestracji. Każde dane wysłane z formularza metodą $_POST wyświetlają mi NULL (var_dump'em).

  1. <?
  2. include('cfg.php');
  3. polacz();
  4. include('security.php');
  5. $login=Zabezpiecz($_POST['login']);
  6. $email=Zabezpiecz($_POST['email']);
  7. $haslo=Zabezpiecz($_POST['haslo']);
  8. $haslo2=Zabezpiecz($_POST['haslo2']);
  9.  
  10. if(isset($_POST['ok']))
  11. {
  12. //sprawdzanie loginu
  13. if(!isset($login))
  14. {
  15. $login_pusty=true;
  16. }
  17. else
  18. {
  19. $sql="SELECT login FROM users WHERE login LIKE '$login'";
  20. $q=mysql_query($sql);
  21.  
  22. $baza_loginów=array();
  23. while($ans=mysql_fetch_array($q))
  24. {
  25. $baza_loginów[]=$ans['login'];
  26. }
  27.  
  28. if (in_array($login,$baza_loginów,TRUE))
  29. {
  30. $login_zajety=true;
  31. }
  32. }
  33. //Nie podano loginu
  34. if($login_pusty){
  35. echo '* Nie podałeś loginu!<br />';
  36. }
  37. //Zajęty
  38. elseif($login_zajety){
  39. echo '* Wybrany login jest już zajęty<br />';
  40. }
  41. //sprawdzanie maila
  42. elseif(!preg_match("#^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$#i",$email))
  43. {
  44. echo '* Email jest niepoprawny<br />';
  45. }
  46. //nie podano w obu polach hasła
  47. elseif((empty($haslo))&&(empty($haslo2)))
  48. {
  49. echo '* Nie wpisałeś hasła';
  50. }
  51. //niezgodne hasła
  52. elseif($haslo!==$haslo2)
  53. {
  54. echo '* Wpisane hasła różnią się od siebie';
  55.  
  56. }
  57. //w przeciwnym wypadku dodaj usera
  58. else
  59. {
  60. $haslo=md5($_POST['haslo']);
  61. $query="INSERT INTO users(login,email,haslo) VALUES('$login','$email','$haslo')";
  62. mysql_query($query);
  63. echo 'Użytkownik został poprawnie zarejestrowany';
  64. }
  65. var_dump($login);
  66. var_dump($haslo);
  67. var_dump($email);
  68. }
  69. else
  70. {
  71. ?>
  72. <html>
  73. <head>
  74. <script type="text/javascript" src="mintajax.js"></script>
  75. <script type="text/javascript" src="funkcje.js"></script>
  76. </head>
  77. <body>
  78. <table>
  79. <tr>
  80. <form method="POST">
  81. <td>Login: </td><td><input id="login" type=text name="login"></td><td><input type="button" value="Sprawdź dostępność" onclick="SprawdzLogin();"></td>
  82. </tr>
  83. <tr>
  84. <td></td><td><div id="wynik_login"></div></td><td></td>
  85. </tr>
  86. <tr>
  87. <td>Hasło: </td><td><input type="password" name="haslo"/></td>
  88. </tr>
  89. <tr>
  90. <td>Powtórz hasło: </td><td><input type="password" name="haslo2"/></td>
  91. </tr>
  92. <tr>
  93. <td>E-mail: </td><td><input type="text" name="email"/></td>
  94. </tr>
  95. <tr>
  96. <td></td><td><input type="submit" name="ok" value="Rejestruj"/></td></td>
  97. </tr>
  98. </form>
  99. </body>
  100. </html>
  101. <?
  102. }
  103. ?>


Funkcja zabezpiecz:
  1. <?php
  2. function Zabezpiecz($text)
  3. {
  4. $text = trim(htmlspecialchars(addslashes($text)));
  5. }
  6. ?>


Bardzo proszę o pomoc sad.gif
PUPI
Nie wysyłasz nigdzie formularza, brakuje znacznika "action", który wskazuje do jakiego pliku ma być wysłany formularz.

Linię:
  1. <form method="POST">

zamień na:
  1. <form action="index.php" method="POST">
nevt
a gdzie ACTION="adres"w formularzu? teraz on nic nie robi - nie wyyła żadnych danych, bo nie wie gdzie...
nospor
Cytat
Nie wysyłasz nigdzie formularza, brakuje znacznika "action",

Cytat
a gdzie ACTION="adres"w formularzu? teraz on nic nie robi - nie wyyła żadnych danych, bo nie wie gdzie...

Ot wymyslili... A niby jakim cudem dochodzi do tych nuli? Znaczy ze wyslal tongue.gif

Jak nie ma action to leci do tej samej strony.

@bl4ck_b0x no ale twoja funkcja to musi cos zwracac przeciez:
  1. <?php
  2. function Zabezpiecz($text)
  3. {
  4. return trim(htmlspecialchars(addslashes($text)));
  5. }
  6. ?>
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.