Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Mały problem z wyjatkami, try i catch :)
dzesi
post
Post #1





Grupa: Zarejestrowani
Postów: 235
Pomógł: 0
Dołączył: 3.05.2006

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


Witam ostatnio dość dużo używam wyjątków w php i javie , i mam dość nie typowy problem bo ostatnio robie walidacje formularza i postanowiłem użyć wyjątków no ale dajmy taki przykład
  1. <?php
  2. public function sprawdzanie_formularza()
  3.  {
  4. try {
  5. if(empty($this->login)&& $this->haslo)
  6. {
  7. throw new Exception("bład nie podałes loginu lub hasla");
  8.  }
  9.  }
  10. catch(Exception $e)
  11. {
  12.  
  13.  echo $e->getMessage();
  14. }
  15. }
  16. ?>

i jak nie podam np hasla to i tak pokazuje mi komunikat np który miał sie pokazać dopiero po sprawdzeniu czy dana fraza istnieje w bazie , jakoś do wyjątków i walidacji formularzy w php nie mam przekonania , proste ify załatwiły cała sprawę
Tylko nie wiem dla czego jak mam if(empty($this->login)&& $this->haslo)
{
throw new Exception("bład nie podałes loginu lub hasla");
} to Wyjątki nie przechwytują np zmienej login tylko np zmienna hasło a ta login w ogóle nie zostaje przechwycona nawet jak dla danej zmienne zorbie osobny wyjątek zawsze gdzieś tam coś gubi ?.Nie wiem czy do konca wyjaśniłem problem .A może ja coś źle robie , hm możliwe po 10 godzinach pracy wszystko sie może pokrzanić
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
lord_t
post
Post #2





Grupa: Zarejestrowani
Postów: 603
Pomógł: 131
Dołączył: 24.07.2007
Skąd: Górny Śląsk

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


Na pewno o to Ci chodziło w ponizszej linijce?
  1. <?php
  2. if(empty($this->login)&& $this->haslo)
  3. ?>


Moze chciales cos takiego:

  1. <?php
  2. if(empty($this->login) || empty($this->haslo) )
  3. ?>


Bo tak jak masz w tej chwili to pusty lancuch znakow $this->haslo jest konwertowany na FALSE.
A
(TRUE && FALSE) => FALSE
(FALSE && FALSE)=> FALSE

Ten post edytował lord_t 22.01.2008, 23:34:09
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 - 18:40