[ glamoc @ 11.01.2011. 17:16 ] @
U php-u se desavaju neke za mene cudne pojave sa putanjama.
Projekat mi se nalazi na putanji /var/www/semidevdist/devteam,
a na lokaciji /var/www/semidevdist/devteam/me/Crones/Google/ se nalazi neka skripta google.php u cijoj jednoj f-ji pozivam
Code:
$handle = fopen("test.txt", "r"); 


Kada datoteku test.txt stavim u isti direktorijum kao i skriptu google.php (iz koje pozivam ovu liniju koda) prijavi mi da datoteka ne postoji.
Kada putanju stavim na lokaciju /var/www/semidevdist/devteam/me/Crones sve radi ok

Nije mi jasno zasto ovako radi, jer mi je logicno da ukoliko stavim samo "test.txt" za putanju da onda gleda folder u kome se nalazi skripta iz koje se poziva komanda
[ Predrag Supurovic @ 11.01.2011. 17:51 ] @
Gleda se direktorijum iz koga je skripta pokrenuta.

dirname (__FILE__) ce ti dati putanju na kojoj se nalayi skripta koju si pokrenuo.
[ Miroslav Ćurčić @ 11.01.2011. 20:32 ] @
Ispravka:
dirname($_SERVER['REQUEST_URI']) ce ti dati putanju na kojoj se nalayi skripta koju si pokrenuo.
[ Predrag Supurovic @ 12.01.2011. 13:45 ] @
Kako sam ja razumeo, ne treba mu web putanja do dokumenta nego putanja na lokalnom disku.
[ Miroslav Ćurčić @ 12.01.2011. 15:17 ] @
Tačno, treba mu SCRIPT_NAME, sorry.

Tu će naći lokaciju iz koje je pokrenut PHP, to mu treba.
U __FILE__ je lokacija google.php datoteke.
[ glamoc @ 12.01.2011. 18:24 ] @
Stanite ljudi, sad ste i mene zbunili...
Kad koristim
Code:
dirname (__FILE__)
on mi vrati lokaciju u kojoj se nalazi skript koji se trenutno izvrsava tj. u kojem je pozvana ova komanda,
ne znam kakav google spominjete.
Ako moze pojasnjenje oko ovog googla.
[ Miroslav Ćurčić @ 12.01.2011. 20:08 ] @
U "/var/www/semidevdist/devteam" ti se verovatno nalali index.php (ili neki drugi naziv) skript koji si pokurenuo,
a onda kažeš da negde includ-uješ "me/Crones/Google/google.php".

Datoteku "test.txt" će PHP tražiti u "/var/www/semidevdist/devteam" zato što je tamo PHP skript koji si inicijalno pokrenuo.

Sve ovo uz pretpostavku da si stvarno i pozvao skript iz "/var/www/semidevdist/devteam", zato sam te i uputio na:

echo $_SERVER['SCRIPT_NAME'];