Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Ścieżka główna do plików i podstron strony
Malinaa
post
Post #1





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


Witam,
w pliku config zdefiniowałem ścieżki:

// Sciezka glowna
define('DOCROOT', realpath(dirname(__FILE__)).DIRECTORY_SEPARATOR);
// Sciezka
define('PATHROOT', './');

i wszystko było by ok gdyby tak DOCROOT chciał działać w każdym przypadku,
w każdym przypadku działa PATHROOT, ale zależnie od strony / podstrony,
w którym jest katalogu potrzebne jest ./, ../ , ../../ etc. - jakieś rozpoznanie.

Przykładowo strona znajduje się w katalogu:
- localhost/moja-strona.pl/ plik index.php - tutaj potrzebne jest $path = './';
kolejna podstrona tej strony znajduje się w katalogu:
- localhost/moja-strona.pl/podstrony/ plik polska.php - tutaj potrzebne jest $path = '../';
itd. dla katalogów wyżej ../../

Przy include bez problemu działa w każdym przypadku, np.
include(DOCROOT."includes/menu.php");
ale kiedy w kodzie strony mamy echo, np.
<link rel="stylesheet" type="text/css" href="<?php echo PATHROOT.'css/style.css'; ?>">
albo zwykły odnośnik <a href="<?php echo PATHROOT.'index.html'; ?>">Strona główna</a>
potrzebne jest już rozpoznanie czy ma być PATH = ./ czy ../
wymagany jest PATH inny dla strony /index.php i inny dla strony w katalogu /podstrony/polska.php

Może jest jakaś funkcja? W jaki sposób rozwiązać problem?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
in5ane
post
Post #2





Grupa: Zarejestrowani
Postów: 1 335
Pomógł: 34
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----


Gdybyś miał wszystkie podstrony przekierowane na index.php i to on by rozporządzał wyświetlaniem podstron nie było problemu. A w takim wypadku nie wiesz, jak w configu ustawić ścieżkę, bo nie znasz poziomu zagłębienia. Nie wiem, czy nie musisz na początku każdego pliku definiować tą stałą. Kombinuj.
Go to the top of the page
+Quote Post
Malinaa
post
Post #3





Grupa: Zarejestrowani
Postów: 573
Pomógł: 6
Dołączył: 21.07.2008

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


Napisałem funkcje, która określa ścieżkę, ale zastanawiam się jak to jest robione standardowo.
Jak zdefiniować, przekierować i jak rozmieścić pliki w katalogu głównym domeny?
Jak powinienem zdefiniować ścieżkę główną $path dla include i echo (plików i linków w kodzie php i na stronie html)?
Chyba najlepiej w postaci ścieżki (względnej?) ./ ../ ../../ ponieważ w ten sposób działa w każdym przypadku,
po otworzeniu strony w przeglądarce bez względu czy includuje ($path w kodzie php), czy wyświetlam echo ($path na stronie html)?
Prośba o pomoc i instrukcje.
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: 23.08.2025 - 23:37