Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]include do pliku który znajduje sie, 2 foldery wcześniej
wieprzucpp
post
Post #1





Grupa: Zarejestrowani
Postów: 85
Pomógł: 2
Dołączył: 10.02.2006

Ostrzeżenie: (0%)
-----


Nie wiem dlaczego ale nie moge zincludowac pliku który znajduje sie 2 foldery wcześniej. Wpisuje formułke nastepującą

  1. <?php
  2. include("../../plik.php");
  3. ?>


Wie ktos moze w czym lezy problem?
Go to the top of the page
+Quote Post
mitring
post
Post #2





Grupa: Zarejestrowani
Postów: 78
Pomógł: 1
Dołączył: 4.03.2006

Ostrzeżenie: (0%)
-----


Kod jest poprawny wg. mnie bo dziala u mnie.

Sprawdz czy nie ma bledow w pliku, ktory chcesz includowac.

Ten post edytował mitring 8.06.2006, 22:17:05
Go to the top of the page
+Quote Post
acztery
post
Post #3





Grupa: Zarejestrowani
Postów: 945
Pomógł: 7
Dołączył: 15.03.2005
Skąd: katowice

Ostrzeżenie: (0%)
-----


moze katalog w ktorym jest plik który chcesz includowac nie ma praw do odczytu
Go to the top of the page
+Quote Post
siemakuba
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 112
Pomógł: 20
Dołączył: 10.04.2005

Ostrzeżenie: (0%)
-----


może dziać się tak dlatego, że... hmmm, nie wiem jak to w słowa ubrać, opisze więc:
prawdopodobnie masz sytuację taką, że plik który chcesz includować fizycznie leży dwa katalogi wyżej od pliku includującego. Ale, być może nie leży wcale dwa katalogi wyżej od pliku który faktycznie includuje ten plik. Masło maślnane, co? :P

struktura:
Kod
- /home
- /home/strona/index.php
- /home/strona/dodatki/biblioteki/plik.php
- /home/config.php

sytuacja 1:
- w pliku plik.php masz instrukcję include('../../config.php');
- wklepujesz w przegladarce: http://localhost/strona/dodatki/biblioteki/plik.php -> działa OK

sytuacja 2:
- w pliku plik.php masz instrukcję include('../../config.php');
- w pliku index.php masz instrukcję include('dodatki/biblioteki/plik.php');
- w pliku plik.php masz instrukcję include('../../config.php');
- wklepujesz w przegladarce: http://localhost/strona/index.php -> nie działa OK

dlaczego?
ścieżka ../../ nie jest teraz sprawdzana relatywnie do fizycznego pliku plik.php ale względem pliku w którym ten plik zaincludowałeś (index.php)

rozwiązanie:
ja uparcie będę polecał ścieżki absolutne - nie ma problemów z takimi właśnie historiami, nie ma problemów z np. przeniesieniem aplikacji gdzie indziej.
  1. <?php
  2. define('APP_PATH', 'home/strona/');
  3. include(APP_PATH.'biblioteki/dodatki/plik.php'); // zawsze zadziała
  4. ?>

aha, a może oprócz tego że plik nie został zaincludowany pokazał się jakiś błąd? Jeżeli nie działa tak jak napisałem - podziel się tym błędem. Kod który pokazałeś sam w sobie jest poprawny.

pozdr.
Go to the top of the page
+Quote Post
-Gość-
post
Post #5





Goście







Sprawdz tez czy masz uprawnienia do czytania pliku i czytania z katalogu, w ktorym jest ten plik.
Go to the top of the page
+Quote Post
wieprzucpp
post
Post #6





Grupa: Zarejestrowani
Postów: 85
Pomógł: 2
Dołączył: 10.02.2006

Ostrzeżenie: (0%)
-----


juz wiem (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) thx za pomoc, przydało sie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 02:14