Hej. Det är så att jag precis börjat använda mig av includes för att underlätta webbbyggandet lite och märkte att require_once (som dreamweaver verkade använda sig av) inte är kompis med addresser som börjar på "/katalog". Kan man komma förbi det? Är väl inte hela världen om jag måste anpasssa addressen efter hur djupt sidan ligger men det känns ju lite trist.
nybörjarfråga om includes
5 svar · 570 visningar · startad av qleblat
När du säger till webbläsaren att sökvägen börjar på "/" utgår man från root katalogen på webbservern. Om du vill utgå från den plats där sidan befinner sig, välj bara att börja med "katalog/"
Grejen är att jag vill undvika att behöva lägga till ../ i addressen om sidan som anropar includesen ligger i en undermapp.
I mina vanliga html sidor fungerar det finfint att börja en address med /. Blir det en "annan" webroot i php?
qleblat skrev:
I mina vanliga html sidor fungerar det finfint att börja en address med /. Blir det en "annan" webroot i php?
Min gissning är att "dina vanliga html-filer" råkar ligga under roten...
Om du inte säkert står i samma mapp som den fil du inkluderar så måste du lägga med en sökväg. Då har du två val:
I Antingen visar du relativ sökväg
II Eller absolut sökväg från roten
Några andra alternativ finns inte.
Om du har mapparna:
/home/www/css/aktuell.css
/home/www/php/minFil.php
/home/www/php/alt/annan.php
Och du vill länka till css-filen i båda fallen får du skriva:
I Relativt:
require_once("../css/aktuell.css") resp
require_once("../../css/aktuell.css")
II Absolut
require_once("/home/www/css/aktuell.css") på båda ställena
silfver skrev:
Du kan väl pröva att skriva:
require($_SERVER["DOCUMENT_ROOT"]."/katalog/fil.php");
prövade med detta utan resultat.
Kan jag använda mig av
ini_set("include_path", ".:../:./include:../include");
för att bestämma en include katalog? så de söker i t.ex https://www.suspektafruntimmer.se/include? efter filerna jag letar efter? Sökvägen i exemplet har inget med min site att göra.
Skippat detta för siten i fråga men är nyfiken på hur det fungerar.