php polecenie ,,include'' nie przechodzi do katalogu wyżej

Potrzebujesz pomocy z C, C++, perl, python, itp.
bllleee
Posty: 17
Rejestracja: 01 września 2007, 19:07

php polecenie ,,include'' nie przechodzi do katalogu wyŻej

Post autor: bllleee »

Witam!

Mam taki problem, użycie

Kod: Zaznacz cały

include '../cos_tam.php'
nie działa. Znaczy php nie chce przejść do katalogu wyżej. Bez problemu włączane są pliki z tego samego katalogu lub przez podanie całkowitej ścieżki. Ktoś wie może co zrobić aby to zaczęło działać?
aque
Posty: 29
Rejestracja: 19 kwietnia 2009, 16:19

Post autor: aque »

A posiadasz uprawnienia do przejścia do katalogu wyżej? Bo może to jest przyczyną, spróbuj ustawić dla katalogu w którym znajduję się ten plik chmod 777.
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

aque pisze:spróbuj ustawić dla katalogu w którym znajduję się ten plik chmod 777
Nadanie pełnych uprawnień nie jest dobrym rozwiązaniem. Chmod nie jest po to, aby wszędzie dawać 777 gdzie nam coś nie działa. Może to powodować luki w bezpieczeństwie aplikacji lub nawet całego serwera. Po to mamy możliwość wylistowania atrybutów plików/katalogów, aby sprawdzić czego nam brakuje, i ew. to poprawić.

Więc tak jak pisze aque mogą to być problemy z uprawnieniami do katalogu wyżej, ale sprawdź najpierw za pomocą ls atrybuty katalogu, a dopiero potem nadawaj odpowiednie chmody.
bllleee
Posty: 17
Rejestracja: 01 września 2007, 19:07

Post autor: bllleee »

Uprawnienia na pewno posiadam. Mogę bez problemu włączać pliki przez podanie całej ścieżki czyli np.:
jestem w katalogu główny/stroan i dołączam przez:

Kod: Zaznacz cały

include ('glowny/include/costam.php')
działa bez zarzutów.

Natomiast włączanie przez

Kod: Zaznacz cały

include ('../include/costam.php')
już nie działa.
fnmirk
Senior Member
Posty: 8295
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Jeżeli już, to polecenie powinno tak wyglądać:

Kod: Zaznacz cały

include ('include/costam.php')
I wydane np.: z katalogu, w którym jest katalog ,,include''.
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

fnmirk, sposób podany przez bllleee też działa (to z '../'). Problem może być jeszcze w tym czy jesteś na pewno w tym katalogu, w którym myślisz że jesteś ;-) Wiem, zakręcone zdanie, ale wklej może komunikat błędu który dostajesz, opisz dokładnie strukturę katalogów, i z którego co includujesz.
fnmirk
Senior Member
Posty: 8295
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Tak jak to przedstawiłem, na pewno działa bez względu na to ile jest katalogów nadrzędnych. Miałem podobny problem ze ścieżkami do plików przy przenoszeniu ich na inny komputer z innym układem katalogów.
bllleee
Posty: 17
Rejestracja: 01 września 2007, 19:07

Post autor: bllleee »

Znalazłem przyczynę. Okazało się że faktycznie nie mam praw dostępu do katalogu, bo dołączanie było tam dość skomplikowane (bardzo zawiłe zależności między dołączanymi plikami) i tak naprawdę dołączałem z głównego. Dziękuję za zainteresowanie.
ODPOWIEDZ