rrabe
08.09.2009, 20:24:22
Hallo! In index.php wird mit einem include-Befehl die Datei cat.inc aufgerufen. Das ist diese:
cat.inc:
<?PHP
$cat_assignment = array(
'home' => 'cat1.php',
'galerie' => 'cat2.php',
'files' => 'cat3.php',
'whois' => 'cat4.php',
'logout' => 'cat5.php');
$cat_get=$_GET['cat'];
foreach($cat_assignment as $cat_set => $file) {
if (isset($cat_get)){
if($cat_get == $cat_set){
require("{$file}");
break;
}
if($cat_get !== $cat_set){
require_once("error.php");
break;
}
}
if (!isset($cat_get)){
require_once("cat0.php");
}
}
?>
in den jeweiligen cat0.php bis cat5.php ist reiner Text, der je nachdem, welche Seite aufgerufen wird (z.B. index.php?cat=home) in der index.php includiert wird. Bei cat=home ist das auch möglich, bei allen anderen Seiten (z.B. index.php?cat=galerie) wird jedoch trotzdem der Inhalt von error.php angezeigt.
Mein Ziel ist es, dass ich nurnoch eine index.php und
bei falscher Angabe von $cat_get eine Fehlermeldung erzeugt wird,
bei nicht gesetzter $cat_get cat0.php aufgerufen wird und
bei "richtig" angegebener $cat_get die entsprechende Datei aufgerufen wird.
Realisiert werden soll das Ganze durch das jeweilige Aufrufen der cat0-5.
Warum erfolgt die Darstellung nicht korrekt?
cat.inc:
<?PHP
$cat_assignment = array(
'home' => 'cat1.php',
'galerie' => 'cat2.php',
'files' => 'cat3.php',
'whois' => 'cat4.php',
'logout' => 'cat5.php');
$cat_get=$_GET['cat'];
foreach($cat_assignment as $cat_set => $file) {
if (isset($cat_get)){
if($cat_get == $cat_set){
require("{$file}");
break;
}
if($cat_get !== $cat_set){
require_once("error.php");
break;
}
}
if (!isset($cat_get)){
require_once("cat0.php");
}
}
?>
in den jeweiligen cat0.php bis cat5.php ist reiner Text, der je nachdem, welche Seite aufgerufen wird (z.B. index.php?cat=home) in der index.php includiert wird. Bei cat=home ist das auch möglich, bei allen anderen Seiten (z.B. index.php?cat=galerie) wird jedoch trotzdem der Inhalt von error.php angezeigt.
Mein Ziel ist es, dass ich nurnoch eine index.php und
bei falscher Angabe von $cat_get eine Fehlermeldung erzeugt wird,
bei nicht gesetzter $cat_get cat0.php aufgerufen wird und
bei "richtig" angegebener $cat_get die entsprechende Datei aufgerufen wird.
Realisiert werden soll das Ganze durch das jeweilige Aufrufen der cat0-5.
Warum erfolgt die Darstellung nicht korrekt?