Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Include - błąd otwierania
Forum PHP.pl > Forum > Przedszkole
laik-php
Hejka, mam pytanie, dosyć nietypowe lub znane, ale ja nie wiem jak to zrobić. Otóż mam plik w public_html w: /kontakt/mini/form.php
I chcę pobrać go i wyświetlić. Robię to tak:

  1. <?php include("./kontakt/mini/mail.php"); ?>


Ale gdy przejdę na podstronę np. o nas nie wyświetli. I tu jest wręcz banalne pytanie. Jak zmodyfikowac kod by mógł się otwierać nawet w /katalog/katalog/katalog/katalog/katalog/katalog/katalog/katalog/ ...
kipero
Trochę za mało podałeś informacji, żeby cokolwiek powiedzieć. W jaki sposób masz zbudowaną stronę? Pokaż więcej kodu.
thek
Najprościej mieć zdefiniowany adres bazowy i to wedle niego potem robić ścieżki plików. Bo adres bazowy jest niezmienny, niezależnie gdzie jesteś w strukturze plików.
laik-php
moze tak .. przykładowo index.php

  1. <?php include("admin/1.php"); ?>
  2. .. tresc strony
  3. <?php include("admin/2.php"); ?>


i np. podstrona:
  1. /onas


  1. <?php include("../admin/1.php"); ?>
  2. .. tresc strony
  3. <?php include("../admin/2.php"); ?>


i ten kod w 1 poście jest w 2.php czyli tam mam ten skrypt kontaktu, linki i aktualnosci

Cytat(thek @ 16.03.2010, 15:47:45 ) *
Najprościej mieć zdefiniowany adres bazowy i to wedle niego potem robić ścieżki plików. Bo adres bazowy jest niezmienny, niezależnie gdzie jesteś w strukturze plików.


Nie bardzo wiem jak, zreszta nick mówi sam za siebie

Pomoże ktoś smile.gif
kipero
Zajrzyj: set_include_path
laik-php
Robię coś źle ?

  1. <?php
  2. ini_set('include_path', '/kontakt/mini/mail.php');
  3. ?>


Po porostu chce, żeby kod pobierało na obojętnie jakiej stronie z folderu /kontakt/mini/mail.php
nospor
Nie czytalem całego tematu, ale zwracam uwage na:
Cytat
jakiej stronie z folderu /kontakt/mini/mail.php

/kontakt/mini/mail.php nie jest folderem a plikiem mail.php

dla include_path trzeba podac sciezke do folderu a nie do pliku
laik-php
Cytat(nospor @ 18.03.2010, 11:49:36 ) *
Nie czytalem całego tematu, ale zwracam uwage na:

/kontakt/mini/mail.php nie jest folderem a plikiem mail.php

dla include_path trzeba podac sciezke do folderu a nie do pliku


W takim razie jak to zrobić, żeby pobierało mi kod PHP z tego pliku (mail.php) i wyświetlało w stopce na każdej podstronie ? dodam ze ten kawałek kodu będzie się mieścić w pliku 2.php który jest w /admin/2.php <-- a ten znowu jest na każdej podstronie.
blacha14
Wg mnie podajac ścieżke ./admin/ itd w include to podajesz sciezke absolutną czyli powinno być dobrze. Jedyne co moge zasugerowac zobacz jaka jest sciezka absolutna wg servera i zobacz czy jest taka sama jak w twoim include

  1. echo $_SERVER['DOCUMENT_ROOT'];
laik-php
Wyświetla mi to:

  1. /home/dariuszs/domains/niepodamadresu.pl/public_html
blacha14
Cytat(laik-php @ 18.03.2010, 12:58:51 ) *
Wyświetla mi to:

  1. /home/dariuszs/domains/niepodamadresu.pl/public_html


i sproboj tak zaincludowac /home/dariuszs/domains/niepodamadresu.pl/public_html/kontakt/mini/mail.php
laik-php
nic....

Warning: include(/home/dariuszs/domains/***.pl/public_html/kontakt/mini/mail.php ) [function.include]: failed to open stream: No such file or directory in /home/dariuszs/domains/***.pl/public_html/admin/2.php on line 9

Warning: include() [function.include]: Failed opening '/home/dariuszs/domains/***.pl/public_html/kontakt/mini/mail.php ' for inclusion (include_path='.:/opt/php/bin/5.2.10/lib/php') in /home/dariuszs/domains/***.pl/public_html/admin/2.php on line 9

ma ktos jeszcze pomysł ?


Proszę o pomoc sad.gif
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.