![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 572 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich,
już wcześniej zastanawiałem się nad problemem ścieżki do plików katalogów. I chciałbym znaleźć z Waszą pomocą odpowiedź. Pytanie na przykładzie. Katalogi www / include www / uslugi www / uslugi / masaz mam strukturę katalogów strony (załóżmy, że strona znajduje się w katalogu o nazwie www) w tym też katalogu znajduje się plik index.php (strona główna) w katalogu www mamy katalog include, w którym są pliki (np. naglowek.php, menu_lewe.php) ładowane prze funkcje include() dla pliku index.php i innych plikach znajdujących się w katalogu www) Wszystko jest ok do czasu kiedy potrzebuję dodać kolejny katalog np. uslugi ponieważ wówczas dla nowego pliku znajdującego się w katalogu uslugi np. masaz.php ścieżki "includowanych" plików nie zgadzaja się, ponieważ ustawione są dla katalogu www, a nie uslugi. Jak napisać skrypt generujący ścieżkę dynamicznie dla plików katalogu, a nie określoną statycznie. Tak, aby includowane pliki nie trzeba było kopiować i dodawać kolejne takie same tylko dlatego, że ścieżka się nie zgadza. Tak, aby jeden plik (np. naglowek.php) z katalogu include mógł być używany nie zależnie czy znajduje się w katalogu www, czy uslugi, czy innym. A najlepiej byłoby jak myślę, aby w każdym pliku ścieżki były tworzone dynamicznie, dla każdej lokalizacji elementów strony. Zacząłem pisać funkcje, ale nie mam przekonania, że to jest najlepszy pomysł:
Szukam dobrego rozwiązania, a przedstawione powyżej działa, ale nie jest tak jak bym chciał. ![]() Potrzebna pomoc Ten post edytował Malinaa 21.04.2010, 20:25:38 -------------------- I welcome you on the Internet >>> Design by Malina
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 275 Pomógł: 32 Dołączył: 17.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
źle się za to bierzesz.. poczytaj o mod_rewrite..
wtedy sciezki typu: mojastrona.pl/uslugi/index.php to tylko dodatkowa zmienna w GET, ktorą sobie pobierzesz i w/g niej zincludujesz.. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 572 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
mod_rewrite jest mi po krótce znany i napewno będę chciał zrobić ładne linki w dalszej części projektu, ale obecnie pracuje nad stroną na localhost i nie mam tutaj zainstalowanego mod_rewrite (nie na każdym serwerze działa), ale obecnie nie w tym rzecz.
Potrzebuję $path (jesli tak mozna to określić), który będzie generowny dynamicznie dla każdego adresu. Tak, aby wspomniame pliki z katalogu include można było użyć dla plików stron serwisu nie zależnie od tego czy są one w katalogu nadrzędnym, podrzędnym itp. w pliku index.php dla wszystkich adresów zaczynając od <head> po </body> przykład: <head> <link href="<?php echo $path.'css/menu.css'; ?>" type="text/css" rel="stylesheet"> <body> <?php // Naglowek strony include($path."include/naglowek.php"); ?> w pliku naglowek.php <table width="100%" cellspacing="0" cellpadding="0" border="0"> <tr> <td width="180" height="110"><a href="<?php echo $path.'index.php'; ?>"><img src="grafika/logo.jpg" width="180" height="110" border="0" alt=""></a></td> <td width="580"><img src="<?php echo $path.'grafika/naglowek.jpg'; ?>" width="580" height="110" border="0" alt=""></td> </tr> </table> Aby w zależności od katalogu $path = "./"; lub $path = "../"; lub $path = "../../"; itd. wówczas mógłbym używać jednego pliku naglowek.php niezależnie od tego w którym katalogu znajduje się plik główny includujący nagłowek strony i zawsze ścieżka będzie ok, a nie jak mam obecie gdzie jest statycznie określona i jeśli plik głowny będzie w innym katalogu to trzeba tworzyć kolejny plik naglowek_2.php tylko po to, aby w prezentowanej wyżej tabeli w miejsce $path wpisać inną ścieżkę. Patrząc na funkcje wyżej zastanawiam się, czy nie byłoby dobrze w każdym pliku na początku dać: $path = dirname(__FILE__); Chyba najprościej, ale czy dobrze? --- Zrobione, jeżeli chcesz zrobić coś dobrze zrób to sam ![]()
W przypadku ciekawszego rozwiązania, dzięki za post. See you Ten post edytował Malinaa 21.04.2010, 20:14:22 -------------------- I welcome you on the Internet >>> Design by Malina
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.04.2025 - 05:08 |