Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Problem z rejestracją
Forum PHP.pl > Forum > Przedszkole
mefjiu
Witam serdecznie mój problem dotyczy rejestracji przez użytkowników na stronie. Chciałbym zaznaczyć , iż dopiero zaczynam zabawę z php więc proszę wyrozumiałoś oraz o rozwiązanie w dość przejrzysty dla laika sposób :-)

Skrypt był tak napisany, że można było się rejestrować bez podawania maila więc zabezpieczyłem to wpisując warunek jeżeli nie ma maila wywala błąd. To mi sie udało tylko teras jak ktoś nie wpisze maila to użytkownika dodaje z pustym mailem i wywala błąd. Próbowałem porostu wstawić exit() na końcu funkcji ale to nie dało odpowiedniego rezultatu strona podrostu się nie wyświetlała. Jak to rozwiązać ?
Chciałbym zaznaczyć iż strona jest oddzielona kodem php od html.

Oto kod pliku rejestracji

  1. <?php
  2. //----------------------------------------------------------- user registration
  3. $errors = array();
  4. if (isset($_POST['submit']))
  5. {
  6. if ($_POST['password'] != $_POST['password_conf'])
  7. {
  8. array_push($errors, $lang['reg_err_pass']);
  9. }
  10.  
  11. if ($_POST['mail_address'] == 0)
  12. {
  13. array_push($errors, $lang['reg_err_dajmail']);
  14.  
  15. }
  16. $errors =
  17. $errors,
  18. register_user($_POST['login'],
  19. $_POST['password'],
  20. $_POST['mail_address'])
  21. );
  22.  
  23.  
  24. if (count($errors) == 0)
  25. {
  26. $user_id = get_userid($_POST['login']);
  27. log_user( $user_id, false);
  28. redirect(make_index_url());
  29. }
  30.  
  31. }
  32.  
  33.  
  34. $login = !empty($_POST['login'])?$_POST['login']:'';
  35. $email = !empty($_POST['mail_address'])?$_POST['mail_address']:'';
  36. ?>
Rafał U.
Użyj do tego empty. Np.

  1. <?php
  2. if ( empty ( $_POST['mail_address'] )) {
  3. // to blad
  4. }
  5. ?>
mefjiu
nie pomogło dalej rejestruje użytkownika nawet jak nie podał maila choć blą się wyświetla :-(
skowron-line
  1. <?php
  2. if(empty($_POST['mail'] OR $_POST['haslo' != $_POST['haslo_conf'])){
  3.  if(empty($_POST['mail'])){
  4.  //blad
  5.  }
  6. if($_POST['haslo'] != $_POST['haslo_conf']){
  7.  //blad
  8.  }
  9. }else{ //jesli oba warunki z 1 if sa spelnione
  10. //instrukcja
  11. }
  12. ?>


pisane z palca.
pzdr
Rafał U.
@skowron-line

Dlaczego sprawdzasz dwa razy czy pole mail jest puste i czy hasła się zgadzają? Wystarczy tak:

  1. <?php
  2. if ( isset ( $_POST['submit'] )) {
  3. if ( empty ( $_POST['mail_address'] )) {
  4. // blad 
  5. }
  6. elseif ( $_POST['haslo'] != $_POST['haslo_conf'] ) {
  7. // bledne haslo
  8. } else {
  9. // wszystko ok
  10. }
  11. }
  12. ?>
skowron-line
dla pewnosci:) nie no moj blad jesne ze 2 razy sprawdza niepotrzebnie
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.