Der Martin: include vs. HTTP-Request

Beitrag lesen

Hallo Ron,

ich will eine Datei includen und bekomme, sobald ich Variablen an diese Datei anhängen will, eine Fehlermeldung.
<?php include('reinmit.php?rubric=wasauchimmer'); ?>

natürlich, PHP versucht hier die Datei "reinmit.php?rubric=wasauchimmer" einzubinden, die nicht existiert, schon deshalb nicht existieren *kann*, weil das Fragezeichen in den meisten Dateisystemen kein erlaubtes Zeichen für Dateinamen ist.

Wenn ich folgenden Code benutze (ohne Fragezeichen und Variablen) funktioniert es einwandfrei.
<?php include('reinmit.php'); ?>

Ja. Mach dir bitte klar, dass PHP hier wirklich auf Datei-Ebene arbeitet! Was du meinst, ist die Übergabe von URL-Parametern, die aber so nur im HTTP-Protokoll vorgesehen ist. Und ein include ist (normalerweise) kein HTTP-Request.

Sobald ich nur ein Fragezeichen anfüge kommt die Fehlermeldung.
Die Datei ist ja vorhanden.

Nicht die, die du angibst. ;-)

Wenn du einem includierten Script Variablen zur Verfügung stellen willst, definiere sie einfach im übergeordneten Script. Der eingefügte Code kann ganz normal auf den Variablenbestand des Gesamt-Scripts zugreifen, ohne dass man ihm diese Variablen extra "übergeben" müsste.

So long,
 Martin

--
Wer im Glashaus sitzt, sollte sich nur im Dunkeln ausziehen.