Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: If, else...
Forum PHP.pl > Forum > Przedszkole
Macieqqq
Mam drobny problem...

  1. <?php
  2. if(file_exists($_GET['id']=="tytul1")){$title = 'tytul1';}
  3. if(file_exists($_GET['id']=="tytul2")){$title = 'tytul2';}
  4. if(file_exists($_GET['id']=="tytul3")){$title = 'tytul3';}
  5. if(empty($_GET['id'])){$title = 'stronastartowa';}
  6. else{$title = 'Błąd!';}
  7. ?>


Jak zrobic, aby else nie odwolywalo sie do do konkretnego if, a stanowilo wyjatek kiedy zadne if nie jest spelnione?



Z gory dzieki
Pozdrawiam
skowron-line
mozesz np cos takiego machnac

  1. <?php
  2. if(a>b){
  3. echo'tak';
  4. }else{
  5. $error[] = 1;
  6. }
  7. if(a==b){
  8. echo'tak';
  9. }else{
  10. $error[] = 1;
  11. }
  12.  
  13. if(count($error) > 0){
  14. //twoj else
  15. }
  16. ?>


*takie na szybko rozwiazanie
Macieqqq
Ale i tak za kazdym razem uzywa sie else...
Cysiaczek
Użyj innej konstrukcji
[php]
if(){}
elseif(){}
elseif(){}
else{}
[php]

Najlepiej jednak użyj instrukcji switch" title="Zobacz w manualu PHP" target="_manual
Macieqqq
Ok, dzieki Cysiaczek smile.gif A dlaczego switch bedzie lepsza?
skowron-line
Cytat(Macieqqq @ 31.07.2007, 14:41:58 ) *
Ale i tak za kazdym razem uzywa sie else...



yyy no racja moj blad
Cysiaczek
Bo to właśnie switch jest stworzony dla wielu warunków - nie trzeba bez przerwy pisać ifelse(){} - jest przekrzyściej.

Pozdrawiam.
Macieqqq
A jak uzywajac switch zastapic ta linijke?

  1. <?php
  2. if(empty($_GET['id'])){$title = 'stronastartowa';}
  3. ?>
Kicok
Wyrzucić ją przed switcha:

  1. <?php
  2.  
  3. if( empty( $_GET['id'] ) ) {
  4. // startowa
  5. }
  6. else
  7. {
  8. switch( $_GET['id'] )
  9. {
  10. case 'tytul1': /* ... */ break;
  11. case 'tytul2': /* ... */ break;
  12.  
  13. default: $title = 'Błąd';
  14. }
  15. }
  16.  
  17. ?>
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.