Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wymagane pola przy rejestracji
Forum PHP.pl > Forum > Przedszkole
ebate
Otóż chciałbym, aby niektóre pola przy rejestracji były wymagane.

Oto kod:
  1. <?php
  2.  
  3. require('conn.php');
  4.  
  5. if (isset($_POST['konto']) and isset($_POST['password']) and isset($_POST['password2']))
  6.  
  7. {
  8.  
  9. if ($_POST['password']==$_POST['password2'])
  10.  
  11. {
  12.  
  13. $konto = mysql_real_escape_string (trim($_POST['konto']));
  14.  
  15. $password = sha1(mysql_real_escape_string (trim($_POST['password'])));
  16.  
  17. $imie = mysql_real_escape_string (trim($_POST['imie']));
  18.  
  19. $drugie_imie = mysql_real_escape_string (trim($_POST['drugie_imie']));
  20.  
  21. $nazwisko = mysql_real_escape_string (trim($_POST['nazwisko']));
  22.  
  23. $email = mysql_real_escape_string (trim($_POST['email']));
  24.  
  25. $miasto = mysql_real_escape_string (trim($_POST['miasto']));
  26.  
  27. $plec = mysql_real_escape_string (trim($_POST['plec']));
  28.  
  29. $data_urodzenia = date($_POST['data_urodzenia']['rok'].'.'.$_POST['data_urodzenia']['miesiac'].'.'.$_POST['data_urodzenia']['dzien']);
  30.  
  31. $numer_telefonu = mysql_real_escape_string (trim($_POST['numer_telefonu']));
  32.  
  33. $numer_gg = mysql_real_escape_string (trim($_POST['numer_gg']));
  34.  
  35. $ile =mysql_query("SELECT * FROM `user` WHERE login = '$konto'");
  36.  
  37. $ile = mysql_num_rows($ile);
  38.  
  39. if ($ile==0) {
  40.  
  41. $zapytanie="INSERT INTO user (login,password,imie,drugie_imie,nazwisko,email,miasto,plec,data_urodzenia,n
    umer_telefonu,numer_gg) VALUES('$konto','$password','$imie','$drugie_imie','$nazwisko','$email','$miasto','$plec','$data_urodzenia','$numer_telefonu','$numer_gg')"
    ;
  42.  
  43. mysql_query($zapytanie) or die("Wystąpił błąd" );
  44.  
  45. echo('Konto '.$konto.' zostalo utworzone.</br><a href=index.php>Kliknij, aby wrócić do Strony głównej</a>');
  46.  
  47.  
  48.  
  49. }
  50.  
  51. else
  52.  
  53. {
  54.  
  55. echo("Taki uzytkownik juz istnieje. Kliknij <a href=register.php>wstecz</a> aby zarejestrowac sie ponownie");
  56.  
  57. }
  58.  
  59. }
  60.  
  61. else echo ("Podane hasla nie zgadzaja sie.</br><a href=register.php>Wróc, aby wpisac hasła poprawnie</a>");
  62.  
  63. }
  64.  
  65.  
  66. else{
  67.  
  68. ?>


Ma może ktoś pomysł?

Z góry dziękuje.
Swirek
zwykły if i isset

  1. if(!isset($_POST["pole"]) || (!isset($_POST["pole1"])) || (!isset($_POST["pole2"])))
  2. echo "Uzupełnij wszystkie pola!";


edit

drobna poprawka zapędziłem się
Dominis
Funkcje empty() i isset(), sprawdzisz czy jest puste czy nie,
pozatym, nie powinno sie tak porównywać stringów

  1. if ($_POST['password']==$_POST['password2'])


poczytaj:
http://phpkurs.pl/ciagi-znakowe-stringi/
sadistic_son
Cytat(Dominis @ 14.10.2011, 16:36:04 ) *
pozatym, nie powinno sie tak porównywać stringów
  1. if ($_POST['password']==$_POST['password2'])
Bo....?
Swirek
Cytat(Dominis @ 14.10.2011, 15:36:04 ) *
Funkcje empty() i isset(), sprawdzisz czy jest puste czy nie,
pozatym, nie powinno sie tak porównywać stringów

  1. if ($_POST['password']==$_POST['password2'])


poczytaj:
http://phpkurs.pl/ciagi-znakowe-stringi/



z tego co ja wiem to funkcja isset jest po to, aby sprawdzić czy zmienna istnieje. Może być nawet pusta,
sadistic_son
Cytat(Swirek @ 14.10.2011, 17:06:14 ) *
z tego co ja wiem to funkcja isset jest po to, aby sprawdzić czy zmienna istnieje. Może być nawet pusta,
Racja.
  1. $a='';
  2. if(isset($a)){echo 'Jest';}
...zwróci Jest.
Dominis
Może źle się wyraziłem, nie powinno się porównywać w ten sposób zmiennych różnego typu, ponieważ:

  1. <?php
  2.  
  3. $a=0;
  4. $b='0bbb';
  5.  
  6. if($a==$b)
  7. echo 'good';
  8. else
  9. echo 'bad';
  10.  
  11. ?>


Php da odp good, choć to nie jest prawdą.
Dałem linka, w którym jest to zawarte.
Tak naprawde nie wiemy co user wpisze.
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.