Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Blad - popadam w paranoje :)
Forum PHP.pl > Forum > Przedszkole
rafff
Witam!
Wiem, ze temat jest banalny, ale nie wiem co mam zrobic - stanalem w przyslowiowej kropce. Otoz mam plik php o nastepujacej tesci:
  1. <?php
  2. ...
  3. if(file_exists($_GET['id'].'.php.')) include $_GET['id'].'.php';
  4. else include('blad.php');
  5. ...
  6. ?>

oraz
  1. <a HREF="?id=glowna">Index</a>

sluzacy do "includowania" poszczegolnych plikow.
Generalnie skrypt laduje pliki jak powinien, lecz wyskakuje mi nastepujacy blad zaraz po uruchomieniu strony:

Notice: Undefined index: id in c:\program files\easyphp1-8\www\index.php on line 32

Pozniej, gdy zmienna "id" juz ma ustawiona wartosc - wszedlem na podstrone - problem znika. Jak wyeliminowac ten problem?
Z gory dziekuje
drPayton
Sprawdź najpierw, czy ta zmienna istnieje:
  1. <?php
  2. if(isset($_GET['id']) AND file_exists($_GET['id'].'.php')) {
  3. include $_GET['id'].'.php';
  4. } else {
  5. include 'blad.php';
  6. }
  7. ?>
Cysiaczek
Ten skrypt zawiera poważną lukę bezpieczeństwa.
Nigdy nie ufaj danym od użytkownika! Poczytaj Temat: Bezpieczenstwo skryptow PHP

Błąd notice to nie jest poważny bład. Po prostu php zauważyło, że odwołujesz się do indeksu, który nie został wcześniej zdefiniowany.
Jak zmniejszysz czułość raportowania błędów, to to zniknie. Bodajże dodaj ~E_NOTICE w php.ini

Pozdrawiam.

Popraw proszę tytuł topiku na zgodny z zasadami forum Przedszkole
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.