Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Klasa rejestracji
Forum PHP.pl > Forum > Przedszkole
teez
Witam, próbuję sobie stworzyć klasę do rejestracji. Aktualnie nie ma żadnych walidacji itp. Chodzi mi o to, że sprawdza czy jest puste itp, ale jeżeli chodzi o Insert danych do bazy - nic się nie dzieje. Co jest powodem?

  1. <?php
  2. /* strutututut */
  3. class register {
  4. public static $login;
  5. public static $haslo;
  6. public static $email;
  7. function __construct($login, $haslo, $email){
  8. $this->email = $email;
  9. $this->login = $login;
  10. $this->haslo = $haslo;
  11. }
  12. public static function sprawdzenie(){
  13. if(isset($_POST['send'])){
  14. if(empty($_POST['login'])){
  15. echo 'Uzupełnij pole z loginem';
  16. }
  17. if(empty($_POST['haslo'])){
  18. echo 'Uzupełnij pole z hasłem';
  19. }
  20. if(empty($_POST['email'])){
  21. echo 'Uzupełnij pole z emailem';
  22. }
  23. }
  24. }
  25. public static function insert(){
  26. if(isset($_POST['send'])){
  27. $hasloo = md5($haslo);
  28. $login = $_POST['login'];
  29. $email = $_POST['email'];
  30. $d = "INSERT INTO teez_register VALUES (`id`, '$login', '$hasloo', $email')";
  31. }
  32. }
  33. public static function wyswietlFormularz(){
  34. <form action="" method="POST">
  35. <input type="text" name="login" value="login">
  36. <input type="password" name="haslo" value="haslo">
  37. <input type="text" name="email" value="email@email.pl">
  38. <input type="hidden" name="send" />
  39. <input type="submit" value="Wyślij">';
  40. }
  41. }
  42. ?>


  1. <?php
  2. require_once("class_register.php");
  3. require_once("config.php");
  4. $login = $_POST['login'];
  5. $haslo = $_POST['haslo'];
  6. $email = $_POST['email'];
  7. $rejestracja = new register($login, $haslo, $email);
  8. register::wyswietlFormularz();
  9. register::sprawdzenie();
  10. register::insert();
  11.  
  12. ?>
nospor
Bo masz sieczkę w zapytaniu.....
Jedna linijka:
$d = "INSERT INTO teez_register VALUES (`id`, '$login', '$hasloo', $email')";
a tyle błędów :/

Wyświetl sobie błąd. Tum asz napisane jak sie wyswietla błędy zapytania
Temat: Jak poprawnie zada pytanie
I się stosuj do tego zawsze.

ps: przenosze na przedszkole. z OOP to nie ma żadnego związku.
teez
facepalmxd.gif

Ok, zmieniłem zatem na
  1. public static function insert(){
  2. if(isset($_POST['send'])){
  3. $d = "INSERT INTO teez_register VALUES (`id`, '".$_POST['login']."', '".md5($_POST['haslo'])."', '".$_POST['email']."');";
  4. }
  5. }


I śmiga. Tylko czy na dłuższa metę jest to dobre rozwiązanie?
nospor
Nie, nie jest. Poczytaj o SQLInjection, a potem zainteresuj się PDO
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.