Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Rozpoznanie ścieżki do katalogu
Malinaa
post
Post #1





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

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


Witam, szukam sposobu na rozpoznanie ścieżki do katalogu.

Jak zrobić dynamiczne generowaną ścieżkę do katalogu?

Przykład:
Mamy katalog główny, w którym znajduje się plik index.php, w katalogu głównym znajduje się katalog include, w którym jest plik menu.php strony z linkami o stałej ścieżce.
Dla stron znajdujących się w katalogu głównym wszystko jest ok, ale mamy kolejny element strony ogłoszenia, w katalogu głównym ogloszenia/index.php i tu zaczyna się problem, ponieważ jeśli wczytamy za pomocą funkcji include(); menu.php w katalogu ogloszenia/index.php śieżka musi być inna dla wszystkich linków, grafiki niż dla pliku w katalogu głównym index.php.
Potrzebny jest plik menu.php z dynamicznie generowaną ścieżką w zależności od tego, w którym kalalogu zostanie wczytany. Dla katalogu ogloszenia/index.php ścieżka powinna być ../, gdybyśmy mieli kolejne katalogi o poziom wyżej np. ogloszenia/drobne/plik.php ścieżka powinna mieć postać ../../ itd.
Chciałbym zapewnić prawidłowe wyświetlanie wszystkich elementów strony, bez konieczności kopiowanie tych samych plików np. menu tylko dlatego, że ścieżka musi być inna, w zależności od umieszczenia pliku w katalogu bieżącym, nadrzędnym, podrzędnym.
Ach, piszę i nie bardzo wiem jak przedstawić problem. Może ktoś miał podobny, proszę o rozwiązanie.
Pozdrawiam

Ten post edytował Malinaa 20.03.2009, 16:30:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Malinaa
post
Post #2





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

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


dirname jest mi znane, ale nie jest to rozwiązanie jakiego szukam.

Potrzebuję nie tyle co rozpoznać ścieżkę (chociaż takie rozwiązanie może okazać się najlepsze), a rozpozać, który to katalog: główny, nadrzędny, podrzędny?

Napisałem funkcje, która to realizuje, ale myślę, że można to zrobić bardziej mądrze, potrzebuję szanowni użytkownicy rady fachowca.

Funkcja:
  1. <?php
  2. function sciezka_katalogu($znak_podzilu, $element_biezacy) {
  3.    $katalog = getcwd();
  4.    $tablica = explode($znak_podzilu, $katalog);
  5.    $element_nadrzedny = $element_biezacy + 1;
  6.    if (isset($tablica[$element_biezacy])) {
  7.        $katalog_strony = $katalog_biezacy;
  8.    }
  9.    elseif (isset($tablica[$element_nadrzedny])) {
  10.        $katalog_strony = $katalog_nadrzedny;
  11.    }
  12.    return $katalog_strony;
  13. }
  14. ?>


Ten post edytował Malinaa 20.03.2009, 18:04:19
Go to the top of the page
+Quote Post

Posty w temacie


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: 5.10.2025 - 11:25