Aha czyli jednak moja poprzednia diagnoza byla bledna. Blad wynika z tego przypuszczalnie ze sciezki do obrazkow styli i calego innego badziewia sa podane relatywnie, a jezeli dodamy ukosnik na koncu adresu to przegladarka traktuje to jako fizyczny katalog na serwerze i stara sie pobrac te elementy z niego. Niestety takiego katalogu nie ma wiec sie wszystko kaszani.
Katalogi moga wygaldac tak:
Kod
/
/index.php
/resrources/style/
/resources/style/style.css
/resources/scripts/script.js
/resources/img/
No i teraz wstawiamy w pliku index.php sciezke do obrazka
Kod
<img src="resources/img/obrazek.gif" />
no i mamy taka sciezke wyowalnia
Kod
http://localhost/index.php
Wtedy wszytko jest cacy, bo przegladarka pobiera wszystko z podkatalgu
resources/img/ i git, jednakze jezeli zmienimy adres na:
Kod
http://localhost/kontakt/
Wtedy szukanie naszego obrazka odbywa sie w katalogu
/kontakt/resources/img/ ktorego oczywiscie nie ma no i jest straszna kaszana.
RozwiazanieRozwiazanie problemu polega na wstawianiu bezwzglednych sciezek do orbazkow zeby sie uchronic przed wzglednym poszukiwaniem plikow przez przegladarke, mozna to osiagnac na pare sposobow ten z ktorego ostatnio korzystam wygalda tak:
<?php
//ustawiamy nasza sciezke
define( 'SITE_PATH_HTTP', '/' );
//wyswietlamy obrazek
echo '<img src=\"' . SITE_PATH_HTTP
. 'resources/img/obrazek.gif\" />'; ?>
<!-- mozna tez wstawiac sciezke w bezposrednio w source -->
<img src=\"
<?php echo SITE_PATH_HTTP
;?>resources/img/obrazek.gif\" />
Rozwiazanie moze malo eleganckie ale skuteczne a o to przeciez chodzi.
Jezeli ktos korzysta ze
smartow to ma jeszcze latwiej o
PRADO juz nie mowiac. W obydwu przypadkach mozna porobic swoje znaczniki a ich obsluga zajac sie w kodzie, dzieki czemu w szablonach nie ma zadnej informacji o zmianie sciezek. No ale to juz zupelnie inna historia

)