Hallo,

Ik zit een beetje vast met mijn paden. Onderaan mijn menu laat ik een image zien. De code hiervoor staat in menu.php en ziet er uit als:

<?PHP
// Path to images
$path = 'database/allfotos/';

// Obtain list of images from directory
$imgList = getImagesFromDir($root . $path);

$img = getRandomFromArray($imgList);

?>
<img width="182" height="128" id="placeholder" name="placeholder" src="<?php echo $path . $img ?>" alt="" />

Dit werkt prima voor alle pagina's op 1 na. Dit is een pagina die staat in subdir1/mypage.php

In mypage.php heb ik het menu ook nodig dus doe ik een include van ../menu.php

Het image in de menubar is nu leeg. Als ik de properties van het img object nu ook opvraag dan staat er www.xyz.nl/subdir1/database/allfotos in plaats van www.xyz.nldatabase/allfotos

Hoe kan ik er voor zorgen dat bij het uitvoeren van code in een subdir de rest blijft werken?
Tip: gebruik de [ignore]
 
[/ignore] tags.

Als je nou in elke bestand boven de include menu.php het volgende zet:


<?php
define("ROOT", "./"); 
/*
of in: subdir1/mylovelypage.php
*/
define("ROOT", "../");

include ROOT . "menu.php";
?>


en dan gebruik je de define op de volgende manier in je menu.php:


<?php
$path  = ROOT . "database/allfotos/";

// de rest van je code
?>


Zo moet hij beter gaan werken!
Path aanpassen.
stomme opmerking, maar het was gister ook wel laat.
Path aanpasen is een leuke opmerking. Wat moet de aanpassing zijn dat zoals het in de gegeven omstandigheden werkt??
Mr. de Jong schreef op 01.03.2009 00:06
[quote='SanThe schreef op 01.03.2009 00:04']Path aanpassen.


Dat gaat niet makkelijk, als je het zelfde bestand (menu.php) in andere bestanden gebruikt.

Mijn idee is gewoon een enorm goed idee :)[/quote]
Ik was een beetje laat. Maar jij past toch ook gewoon het path aan.
Pur sec past Mr. de Jong inderdaad het pad aan. En dat zal de oplossing dan ook wel zijn. Maar als je al e.e.a. hebt geprobeerd en er niet uit komt is het handig om te weten wat de aanpassing moet zijn. En die wordt goed omschreven door Mr. de Jong.

Ik ga de code zo testen

Reageren