Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: file_exists - niech mi ktoś wyjaśni o co chodzi?
Forum PHP.pl > Forum > PHP
konfeusz
Witam. Przedstawiam temat, by mi ktoś wyjaśnił o co w tym biega?

Otrzymałem małą poprawkę do wykonania, którą spokojnie zrobiłem, ale zauważyłem pewną ciekawostkę w skrypcie, której nie do konca obczajam. Podejżewam, ze ktoś kto go pisał, chciał się zabezpieczyć i wcisna w kod odniesienie do pliku na własnym serwerze. Próbuję to jakoś rozgryźć ale z uwagi na to, ze nie jestem orłem w PHP, proszę o pomoc lepszych o wyjaśnienie o co w tym chodzi.

Otóż w kodzie jest taka dyrektywa:
  1. <?php echo (file_exists("test.inc") ? "http://xxxxx.pl/test.inc" : "http://www.yyyyy.pl/test.php"); ?>


rozumiem, ze file_exists sprawdza czy istnieje plik test.inc na serwerze xxxxx.pl, jednak co mnie zaciekawilo... taki plik na danym serwerze nie istnieje (co logicznie rzecz biorac powinno wywalac blad i przerywac skrypt, jednak kiedy wykasuje ze skryptu to sprawdzania, to skrypt sie nie wykonuje... PARANOJA.


Moze mi ktos plopatologicznie wyjasnic o co w tym biega... oraz prosil bym opisanie tego skryptu, bo nie do konca rosumiem co tam robi znak zapytania oraz dwukropek...


Z gory dziekuje i pozdrawiam
wookieb
Cytat(konfeusz @ 26.07.2010, 11:46:48 ) *
rozumiem, ze file_exists sprawdza czy istnieje plik test.inc na serwerze xxxxx.pl, jednak co mnie zaciekawilo... taki plik na danym serwerze nie istnieje (co logicznie rzecz biorac powinno wywalac blad i przerywac skrypt,

Faktycznie to paranoja, że nie wiesz do czego służy file_exists
Cytat
jednak kiedy wykasuje ze skryptu to sprawdzania, to skrypt sie nie wykonuje... PARANOJA.

Czyli masz "jakieś błędy", czyli enigma dla nas.

Cytat
Moze mi ktos plopatologicznie wyjasnic o co w tym biega... oraz prosil bym opisanie tego skryptu, bo nie do konca rosumiem co tam robi znak zapytania oraz dwukropek...

http://phpedia.pl/wiki/Ternariusz
piku235
Ten fragment kodu co przedstawiles, jest to inaczej operacja logiczna funkcja() ? true : false. Czyli według twojego skryptu gdy nie znajdzie tego test.inc to wywoluje "http://www.yyyyy.pl/test.php". Dalej to musisz sam sie zastanowić nad skryptem.
konfeusz
wookieb... dziekuje za odpowiedz, no nie jestem az takim mózgiem jak Ty, wiec ciesze sie, ze moglem poprawic Ci humor bys sie ze mnie posmial.

A powaznie, dzieki Piku, Twoja odpowiedz wyjasnila mi wszystko... konkretna, rzeczowa i bez niepotrzebnej ironii.

Mimo wszystko Wookieb, dzieki za linka, to mi wyjasnilo po co ? i :.

Dziekuje Panowie i pozdrawiam
wookieb
Po prostu pokazuje, że tak trochę lipa wypowiadać się na temat rzeczy, której się nie rozumie, w sposób krytyczny.
konfeusz
no i cholera, musze Ci przyznac racje, bo faktycznie ja masz... teraz jak przeczytalem pierwszego mojego posta tak tez mozna zrozumiec... smile.gif

jak dotad uzywalem file_exists w warunku if i sie zakrecilem nieco... zmylilo mnie to ? i :. Ostatnio siedze w AS i po prostu zapomnialem ze sprawdza na localhoscie

... ucze sie na zasadzie prob i bledow i czasami cos porypie... masz racje, lipa. Ale dziekuje za zprowadzenie na ziemie. Zdrowia zycze

a tak na marginesie... czy jest jakas mozliwosc w php (ew moze byc w JS) zeby odwolywac sie do pliku na innym serwerze i pobierac z niego dane?

Zastanawiam sie jak mozna by zabezpieczyc strony umieszczone na innych serwerach.
muk4
Cytat(konfeusz @ 26.07.2010, 18:33:05 ) *
zeby odwolywac sie do pliku na innym serwerze i pobierac z niego dane?

fopen, file_get_contents file etc., Nawet include z buforowaniem chyba smile.gif
Fifi209
Cytat(muk4 @ 26.07.2010, 18:16:01 ) *
Nawet include z buforowaniem chyba smile.gif


php.ini

allow_url_fopen
allow_url_include

muszą być odpowiednio ustawione ;]
konfeusz
smile.gif nooo dziekuje... dwie krótkie odpowiedzi a jak wiele mozliwosci... Pozdrawiam i dzikuje za pomoc smile.gif

<?php
$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
?>


juz sie zabieram...
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.