Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: błąd na stronie
Forum PHP.pl > Forum > Serwery WWW > Apache
chaos
Co do poprzedniego postyu to powiedzmy ze sobie poradzilem zainstalowalem wczesniejsza wersje Apacza. TEraz natomiast mam inny problem bo na mojej stronie przy napotkaniu przykładowo na taką pętlę
Kod
<?
   if( ($dzial == "") || ($dzial == "news") ){
       include("news.php");
   } else
   if( ($dzial == "archiw") ){
       include("archiw.php");
   }
?>

(troche to skrocilem)
pojawia mi sie taki błąd:
Kod
Undefined variable:  dzial in d:\\www\\index.php on line 182

nie otwieraja mi sie tez podstrony z indexu po wy wywołaniu index.php?nazwa
MOze ktoś wie co robie zle. Z gory dzieki.
Yarecki
1. Jeśli dzial jest pobierane z adresu to używaj $_GET['dzial'].
2. Jeśli wchodzisz na stronę index.php, to wtedy $_GET['dzial'] nie istnieje, więc warutek if( $_GET['dzial'] == '' ... ) jest bez sensu, bo porównuje coś ze zmienną, której nie ma.
3. Jeśli domyślnie masz zamiar otworzyć news.php to napisz to tak
  1. <?php
  2. $dzial = ( !empty( $_GET['dzial'] ) ) ? $_GET['dzial'] : 'news';
  3.  
  4. ?>
i wtedy możesz zostawić swoje if'y bez zmian.

Na drugie pytanie, odpowiedź brzmi: index.php?dzial=archiw
chaos
ale to troche zagmatwane bo na wiekszosci stron chyba nie ma takich cudów, moze to wina zlej konfiguracji alboco?
Yarecki
Na większości stron jest używane $_GET, bo to wymóg bezpieczeństwa wprowadzony w php chyba 4.1 (nie pamiętam dokładnie).

Jeśli ktoś wyłącza te zabezpieczenia, tzn. że nie zależy mu na bezpieczeństwie, lub zostało mu to z góry narzucone.

Ten przykład php napisałem w taki sposób, żebyś nie musiał modyfikować swojego kodu.
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.