Moin!
wenn ich nach weiterleitung per php suche, bekomme ich immer wieder nur die eine selbe möglichkeit angeboten:
header("Location: %s", $LinkLocation));
problem ist, dass ich in vielen fällen, diese fehlermeldung bekomme:
"Cannot add header information - headers already sent by (output started at /html/test.php:3) in /html/test.php on line 27"
Die Lösung ist ganz simpel: Wenn du irgendeinen Teil der HTML-Seite ausgibst, werden die Header, die du und das System bis dahin generiert haben, ebenfalls ausgegeben. Wenn du hinterher noch header haben willst, bist zu zu spät.
Deshalb: Die Funktion header() kannst du nur benutzen, wenn du vorher keinerlei HTML-Code ausgibst. Dazu gehören HTML-Bereiche außerhalb von <? ?>, Ausgaben mit echo() und Konsorten, von PHP generierte Fehlermeldungen (meist kriegst du eine Fehlermeldung einer fehlgeschlagenen Funktion, und danach dann die Fehlermeldung von header() - ist dann auch nicht mehr weiter schlimm) - was gerne übersehen wird: Auch die Leerzeile zu Beginn einer PHP-Datei ist böse. Sogar ein Leerzeichen ganz am Anfang darf nicht sein. Die erste Zeile einer PHP-Datei muss direkt mit <?php beginnen, und bis zur letzten Anwendung der header()-Funktion darf keinerlei Ausgabe für die HTML-Seite ausgegeben werden.
- Sven Rautenberg
"Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)