Sven Rautenberg: include() nimmt keine GET variablen

Beitrag lesen

Moin!

Wenn ich mit include() eine Datei inkludieren möchte, dann funktioniert das komischerweise nur ohne irgendwelche Parameter.

Der Parameter von include() ist ein Dateiname im Dateisystem.

GET-Parameter existieren nur bei HTTP-Requests über das Netzwerk.

==> include("test.php"); //korrekt
==> include("test.php?var1=hallo"); //warning

Warning: main(test.php?var1=hallo): failed to open stream: No such file or directory in /www/htdocs/w0057e56/index.php on line 131

Der Dateiname deiner Datei lautet "test.php" und endet nach dem "p", alle folgenden Zeichen gehören nicht zum Dateinamen - also sind sie dort nicht anzugeben.

Wenn du in die einzubindende Datei Werte "reinreichen" willst, mach' dir ganz einfach die stinknormale Funktion von include() zunutze:

Include fügt an Stelle des Befehls den Inhalt der benannten Datei als PHP-Programmcode ein (wobei man innerhalb der eingefügten Datei wieder im HTML-Modus startet und erst mit "<?php" in den PHP-Modus schalten muß).

Der eingefügte Programmteil kann auf alle bis dahin definierten Variablen des einfügenden Programms zugreifen!

- Sven Rautenberg