Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Problem z rejestracją
mefjiu
post
Post #1





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


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. ?>
Go to the top of the page
+Quote Post
Rafał U.
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.03.2006
Skąd: Polska

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


Użyj do tego empty. Np.

  1. <?php
  2. if ( empty ( $_POST['mail_address'] )) {
  3. // to blad
  4. }
  5. ?>


Ten post edytował Rafał U. 13.09.2006, 19:56:46
Go to the top of the page
+Quote Post
mefjiu
post
Post #3





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

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


nie pomogło dalej rejestruje użytkownika nawet jak nie podał maila choć blą się wyświetla :-(
Go to the top of the page
+Quote Post
skowron-line
post
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


  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

Ten post edytował skowron-line 14.09.2006, 08:35:58
Go to the top of the page
+Quote Post
Rafał U.
post
Post #5





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.03.2006
Skąd: Polska

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


@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. ?>


Ten post edytował Rafał U. 14.09.2006, 13:37:49
Go to the top of the page
+Quote Post
skowron-line
post
Post #6





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


dla pewnosci:) nie no moj blad jesne ze 2 razy sprawdza niepotrzebnie
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 01:57