Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Include
Forum PHP.pl > Forum > PHP
konrado
Na sojej stronie mam listę rozwijaną z odniesieniem do innego pliku przez funkcję include:
  1. <script LANGUAGE="JavaScript">
  2. function selecturl(s) {
  3. var gourl = s.options[s.selectedIndex].value; window.top.location.href = gourl;
  4. }
  5. <SELECT NAME="urljump" OnChange="selecturl(this)">
  6. <?php include("lista.htm"); ?>
  7. </SELECT>
  8. </FORM>

A w pliku lista.htm:
  1. <OPTION VALUE="1.php">1</OPTION>
  2. <OPTION VALUE="2.php">2</OPTION>
  3. <OPTION VALUE="3.php">3</OPTION>
  4. <OPTION VALUE="4.php">4</OPTION>

Na innym forum dowiedziałem się że "że w ten sposób można mi załadować do ramki dowolny adres". Jednak nie do końca zrozumiałem. Chodzi o to czy kod jest zrobiony w sposób bezpieczny i nic mi nie grozi?
Cysiaczek
Nie wiem o jaką ramkę chodzi, bo żadnej nie widzę, ale skrypt nie wydaje się bezpieczny. Możesz to oczywiście olac pod warunkiem, że częśc serwerowa aplikacji będzie dobrze zabezpieczona.
konrado
A co należy zrobić aby skrypt był bezpieczny?
Cysiaczek
Sam JavaScript jest odwrotnie proporcjonalnie bezpieczny do umiejętności przeciętnego webmastera. Faktycznie, można pokusic się o takie fake strony, żeby np. zmieniał adresy stron. Nie jestem specjalistą od zabezpieczeń JavaScript, więc nie bardzo mogę powiedziec Ci, jak zabezpieczyc ten skrypt. Dla mnie sprawa jest prosta jesli chodzi o zabezpieczenie tego na serwerze za pomocą php. Tobie zapewne chodzi o to, aby uniemożliwic komuś podmianę Twoich stron, na które chcesz przekierowac odwiedzającego - o to, trzeba zapytac kogoś od JavaScriptu

Nie podoba mi się plik, który includujesz. Jest on typu *.htm, co nie jest dobrym rozwiązaniem. Lepiej ukryj zawartośc tego pliku w zmiennej php. Wówczas podgląd pliku nie będzie możliwy w przeglądarce. Poza tym plik .htm przez niektóre serwery są traktowane jako pliki zawierające kod do przetworzenia i dłużej się wczytują. Moim zdaniem, powinieneś ola ten JavaScript i skupic się na odpowiedniej kontroli przy pomocy php na serwerze bo jest to pewniejsze.
konrado
Wielkie Dzięki! smile.gif
Kreton
Ja bym najpierw sprawdził czy istnieje ten plik na twoim serwsze/dysku/katalogu tongue.gif poprzez file_exists a potem includował. Mozesz tez zrobić include z katalogu wyzej poprzez include(./blablabla.html) ( tak mi sie wydaje tongue.gif )
Ale myśle ze wystarczy z tym file_exists ^^
konrado
A mógłbyś mi trochę opisać ten file_exists . A przy okazji: Która wersja php jest bezpieczniejsza i lepsza i dlaczego? - 5 czy 4
Kreton
Sry mój błąd w powyższym poscie instrukcja ./ pozwala na dołącznie plikow tylko z katalogu w którym sie znajduje się skrypt.

Cytat
Taka instrukcja pozwala na dołączanie jedynie plików które znajdują się w katalogu ze skryptem czyli nie można załączyć pliku z innego serwera.


Tutaj link do opisu biggrin.gif
http://www.faq.pl/php/html/function.file-exists.html
Cysiaczek
php5 jest bezpieczniejsze od php4, co wynika z tego, że jest nowszą wersją języka, więc więcej błędów zdążyli chłopaki usunąć. Samo bezpieczeństwo stron www jest jednak przedewszystkim zależne od serwera www. Nawet najlepiej zabezpieczona aplikacja padnie, jeśli serwer nie jest bezpieczny.
konrado
A po czym najlepiej sprawdzić bezpieczenstwo serwera? Co musi miec, czego nie itp.
Cysiaczek
No wiesz... Wątpię, żeby jakiś administrator udzialał informacji na temat zabezpieczeń jego serwera smile.gif
konrado
Nie jego serwera biggrin.gif Mojego serwera wykupionego w ofercie jakiejs firmy np. home.pl , nazwa.pl
LamaMASTER
No to jego serwer, przecież chyba nie wykupiłeś serwerowni home winksmiley.jpg
konrado
No w sumie... snitch.gif Dzięki, już zrozumiałem
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.