Include met css
Map1
a.php
..Map2
..b.php
..Map3
..c.css
in b.php wordt a.php ge-included. In a.php zit opmaak via Map3/c.css.
Als ik rechtstreeks a.php oproep volgt een keurige opmaak.
Als ik b.php oproep krijg ik a.php onopgemaakt.
In mijn onschuld dacht ik, dat de include als eerste verwerkt zou worden in b.php.
Dus als include a.php uitgevoerd wordt zit het script een nivootje hoger (Map 1) en
gebruikt dan gewoon c.css vanuit Map3 en het script keert terug naar b.php en vervolgt
de verwerking, uiteindelijk b.php presenterend met opgemaakte a.php.
Niet dus; wat is de denkfout ?
Hoe roep je het css bestand aan? Met een relatief path waarschijnlijk?
Ramon van Dongen op 15/08/2013 13:26:01:
Hoe roep je het css bestand aan? Met een relatief path waarschijnlijk?
Vanuit a.php als volgt:
Nu kijk je namelijk steeds een map hoger dan waar het bestand zich bevindt, terwijl dat niet steeds het geval is door het includen.
Misschien is het makkelijker om met defines te werken, stel je gaat in de toekomst je mappenstructuur wijzigen moet je alle includes met de hand aanpassen.
Als je nu zoiets als dit doet.
Code (php)
Gewijzigd op 15/08/2013 13:54:15 door Chris PHP
<link href="C:/wamp/www/Map3/c.css" etc.>
a. ik krijg nog steeds geen opgemaakte a.php als ik b.php aanroep
b. als ik andere scripts aanroep, die ook a.php includen, maar die ook in Map1(=www) zitten:
met het relatieve path: goede opmaak
met het absolute path: ook geen opmaak
Van de regen in de drup ?
Toevoeging op 15/08/2013 13:59:11:
Chris NVT op 15/08/2013 13:51:54:
@Ger,
Misschien is het makkelijker om met defines te werken, stel je gaat in de toekomst je mappenstructuur wijzigen moet je alle includes met de hand aanpassen.
Als je nu zoiets als dit doet.
Misschien is het makkelijker om met defines te werken, stel je gaat in de toekomst je mappenstructuur wijzigen moet je alle includes met de hand aanpassen.
Als je nu zoiets als dit doet.
Hey interessant, ga er direct mee experimenteren. Bedankt voor de tip Chris !
Toevoeging op 15/08/2013 15:01:32:
@Chris, nogmaals bedankt voor die tip. Zal het principe zeker gebruiken, maar het lost mijn probleem (nog) niet op.
Kan volgens mij geen css-file includen, want dan geeft de pagina de hele code van de css-file weer.
Misschien moet ik de vraag anders stellen: is het wel mogelijk een php-file te includen, die verwijzingen heeft naar
andere files in andere mappen? Zo nee, dan moet ik ermee leren leven. Zo ja, hoe dan ?
Ger Eielts op 15/08/2013 13:56:57:
Met een absoluut path krijg ik meer problemen.<link href="C:/wamp/www/Styles/Site.css" etc.> oftewel volgens het voorbeeld
<link href="C:/wamp/www/Map3/c.css" etc.>
<link href="C:/wamp/www/Map3/c.css" etc.>
Je moet natuurlijk ook geen locatie op je c schijf meegeven. De browser probeert dat bestand op te halen via een http request, oftewel, het moet een url zijn.
Je moet een css file ook niet includen met include rechtstreeks, deze drukt het gewoon als tekst af.
Probeer het eens zo
Code (php)
1
<link href="<?php echo ROOT_PATH . CSS_PATH . 'Site.css'; ?>" rel="stylesheet" type="text/css" />