Hallo,

Ik zit dit al een tijdje te proberen, maar het lukt me nogsteeds niet.
Ik heb bijvoorbeeld dit, index.php/admin/test/test2
Alles wat in het url staat moet langsgegaan worden of het een map is, als dat zo is dan gaat het script verder naar het volgende gedeelte, kijkt weer of het een map of een file is, als het een bestand is, dan stopt het script en laad dat bestand.

Het lijkt niet echt moeilijk met een loop o.i.d. maar op een een of andere manier krijg ik het niet voor elkaar.

Iemand die me kan helpen?

Mvg,
Jelle Spekken
waarom zou je zoveel aparte mappen willen hebben?
Zo kan de gebruiker zoveel mappen aanmaken als er gewenst is.
Code heb ik nog niet echt.
Denk hier aan:

<?php

// Als er geen route is aangegeven, route = index.
$sRoute = empty($_GET['route']) ? 'index' : $_GET['route'];
$aRouteParts = explode('/', $sRoute);

foreach ($aRouteParts as $sPart) {
if (is_dir($sPart)) {
// Er is een directory gevonden, doorgaan.
continue;
}
if (is_file($sPart.'.php')) {
// Er is een bestand gevonden, stoppen, en dit bestand laden
require_once($sPart.'.php');
break;
}
}

?>

Wat ik dus wil doen is dat als er een een directory gevonden is, dan gaat het script verder met de rest van de url, uitzoeken of er een directorie is, is er een file dan stopt het script, en laad deze file in.

Zoals nu is al een begin, maar kom er niet helemaal uit hoe nu verder.
Heb het onderstaande niet getest, maar waarschijnlijk zoek je zoiets:


<?php

// Als er geen route is aangegeven, route = index.
$sRoute = empty($_GET['route']) ? 'index' : $_GET['route'];
$aRouteParts = explode('/', $sRoute);

$map = '';

foreach($aRouteParts as $sPart){
	if (is_file($map . $sPart . '.php')){
		// Er is een bestand gevonden, stoppen, en dit bestand laden
		require_once($map . $sPart. '.php');
		break;
	}
	
  	if (is_dir($map . $sPart)){
		// Map gevonden, dus in de map zoeken naar de volgende stap
		$map = $sPart . '/';
	}else{
		// Deze map is niet gevonden -> Stoppen met het script
		break;
	}
}

?>
Yes dat was het.
Dankje
graag gedaan ;-)
ipv is_file kan je dan niet beter file_exists gebruiken & is_file?
Lijkt me ook wat veiliger ja...

Reageren