Håller på med en ganska omfattande sajt om måste ha alla länkar root-relaterade för enklast möjliga hantering vid bl.a. flytt av hela sajten osv.
Men jag fattar inte varför somliga länkar funkar galant som root-relaterade, medan andra på samma sida INTE funkar alls.
Exempel på länkar på samma sida. Mapparna "img" och "resources" ligger i root (högst i hierarkin):
img src="/img/header-travel-asia.jpg" Funkar.
link href="/resources/styles/main.css" Funkar
<?php include('/resources/footer.include'); ?> Funkar inte. :( utan måste vara <?php include('../../../resources/footer.include'); ?> (eller kanske nån annan root-relaterad väg.
Adresserna i <img> och <link> är URL:ar dvs de evalueras av webbläsaren när sidan levererats och absoluta adresser går mot webbplatsens "rot" (dvs http://example.com)
include är en php-funktion som körs på serversidan, och när den körs är det filstrukturen på serverns diskar som gäller som adressering (och det är inte samma "filsystem" som webbplatsens URL-struktur, som du konstaterat)
"/" för include är t.ex. "C:\" om du kör Windows, och inte "C:\inetpub\wwwroot" som brukar motsvara webbplatsens toppnivå, dvs som är "/" för webbplatsens URL-adresser
Kör du Unix antar att du kan försöka med /home/mittkonto/public_html/resources/footer.include (eller vad som gäller på din server) om du vill ha en absolut adress till din includefil.
Ett annat alternativt är att se till att katalogen där dina inkluderingar finns, alltid finns med i include_path (för då slipper du bry dig om var de egentligen ligger) - men det förutsätter att du har rätt att ändra include_path på din server...
Adresserna i <img> och <link> är URL:ar dvs de evalueras av webbläsaren när sidan levererats och absoluta adresser går mot webbplatsens "rot" (dvs http://example.com)
include är en php-funktion som körs på serversidan, och när den körs är det filstrukturen på serverns diskar som gäller som adressering (och det är inte samma "filsystem" som webbplatsens URL-struktur, som du konstaterat)
"/" för include är t.ex. "C:\" om du kör Windows, och inte "C:\inetpub\wwwroot" som brukar motsvara webbplatsens toppnivå, dvs som är "/" för webbplatsens URL-adresser
Kör du Unix antar att du kan försöka med /home/mittkonto/public_html/resources/footer.include (eller vad som gäller på din server) om du vill ha en absolut adress till din includefil.
Ett annat alternativt se till att katalogen där dina inkluderingar finns, alltid finns med i include_path (för då slipper du bry dig om var de egentligen ligger) - men det förutsätter att du har rätt att ändra include_path på din server...
Du har skrivit helt rätt vad det gäller html om man ska utgå ifrån rooten :)
Angående PHP:n så får du nog rätt svar om du frågar(eller om någon moderator flyttar) din fråga till rätt forum
mv icaaq
Eftersom det är BÅDE vanlig html OCH php så blir det ju lite kinkigt....är det inte en aning opraktiskt att dela upp frågan och krångla med korslänkar från båda inläggen så att folk ska förstå sammanhanget i så fall?
Men om det är fler som tycker att det ska flyttas, så flytta på bara... :)