Wenn ich das richtig sehe, öffnest du über den Link die Seite „pages/main.php“ und gibst als GET-Variable den Wert „main“ mit. Wenn sich jetzt die pages/main.php öffnet, wird die switch-Anweisung ausgeführt. Und siehe da: Bei der GET-Variable mit dem Wert „main“ bindest du noch mal „pages/main.php“ ein. Du „includest“ also praktisch die Datei in sich selber.
Grüße,
Jack
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
o_O reicht Dir das Wort „Zirkelbezug“ um die Augen auf zu bekommen?
Du darfst doch ned die gleiche Datei einbinden, die Du eh schon aufrufst - nachdem die Variablen mitgeschleift werden entsteht bei Deinem Query string mit =main ein Zirkelbezug.
Also mach statt dem main.php ein anderes Ziel, dann sollte es gehen.