Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] instrukcje
Forum PHP.pl > Forum > Przedszkole
Lethys
Mam instrukcje :

  1. <?php
  2. if ($stat[miasto] == virginia) {
  3.  
  4.  include"virginia.php";
  5.  }
  6. if ($stat[miasto] == yuma) {
  7.  
  8.  include"yuma.php";
  9.  }
  10.  if ($stat[miasto] == elpaso) {
  11.  
  12.  include"elpaso.php";
  13.  }
  14.  if ($stat[miasto] == denver) {
  15.  
  16.  include"denver.php";
  17.  }
  18.  if ($stat[miasto] == deadwood) {
  19.  
  20.  include"deadwood.php";
  21.  }
  22.  if ($stat[miasto] == kansas) {
  23.  
  24.  include"kansas.php";
  25.  }
  26.  if ($stat[miasto] == oklahoma) {
  27.  
  28.  include"oklahoma.php";
  29.  
  30.  }else{
  31.  print "<center><b>Wybierz miasto</b></center><br><img src=\"images/miasta.jpg\"><br><br>Aby wybrać miasto kliknij na nazwie.";
  32.  }
  33.  
  34. ?>


Czemu kiedy np. moje miasto to kansas to i tak wykona sie kod po else ?
phpion
Dlatego, że stosujesz cały czas if w związku z czym sprawdzane są wszystkie warunki. Po wyjściu z warunku sprawdzanie następuje dalej i w momencie:
  1. <?php
  2. if ($stat[miasto] == oklahoma)
  3. ?>

nie jest spełnione (bo miasto to kansas) więc wykonywany jest blok else.
Rozwiązanie? Zmień wszystkie wystąpienia "if" (oprócz pierwszego!) na "else if".
slash^
A wg mnie to raczej switch" title="Zobacz w manualu PHP" target="_manual ..
phpion
Cytat(slash^ @ 1.01.2008, 18:07:51 ) *

Wiesz, czepiać się można wielu elementów. Samo odwołanie do indexów tablic nie jest do końca poprawne, wartości do porównania powinny być w '. Ponadto ja bym zastosował tablicę z dozwolonymi miastami i includował pliki na jej podstawie zamiast pisać X warunków lub instrukcji wyboru.
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.