Frage zu "switch"+"include"

PHP:
<?php
if(isset($_GET['section'])) {
	 switch($_GET['section'])
		 case "news":
			 $inhalt = include "news.php";
			 $bild = "news.jpg";
		 break;
		 default:
			 $inhalt = include "default.php";
			 $bild = "default.jpg";
		 break;
} else {
	 $inhalt = include "default.php";
	 $bild = "default.jpg";
}
 
echo "Text Text ".$inhalt." Text Text<br>";
echo "<img src='".$bild."'>";
?>
Ungetestet!
 
Ich bekomme
Parse error: parse error, unexpected T_CASE, expecting ':' or '{' in /kunden/xxx/webseiten/xxx/test/index.php on line 10
bei diesem Code:
PHP:
<?php
if(isset($_GET["section"])) {
     switch($_GET["section"])
         case "news":
             $inhalt = include "news/aktuell.php";
             $header = "news_header.gif";
             $navi = "news.gif";
         break;
         default:
             $inhalt = include "news/aktuell.php";
             $header = "default_header.gif";
             $navi = "default.gif";
         break;
} else {
     $inhalt = include "news/aktuell.php";
     $header = "default_header.gif";
     $navi = "default.gif";
}
?>
An den jeweiligen Stellen habe ich
PHP:
<?php echo "<img src='".$header."'>"; ?>
usw.

Wo liegt der Fehler?

line 10 ist die Zeile mit case "news".
 
Okay, den Parse Error konnte ich beheben (eine Klammer hat gefehlt)...

Mein neues Problem: ich habe das von Dr Dau gepostete Script in den head meiner php-Datei eingebaut - ich wusste nicht, wo ich das sonst hinpacken sollte. Auf jeden Fall zeigt er mir nun das zu inkludierende auch im Browser ganz oben an, und nicht da, wo es hinsoll. Was mache ich nur falsch?

:(
 
Dass mit den Klammern kann passieren..... wie gesagt, ungetestet. ;)
Im IF und ELSE werden ja die Variablen definiert, dieses muss natürlich vor der Ausgabe (z.b. per ECHO) passieren.
Ansonsten sollte es egal sein wo der Switch steht.
Hast Du die gleichen Variablennamen evtl. woanders nochmal?
 
Zurück