Header Problem

Spacedoener

Gesperrt
Hi,

habe eine sehr großes Problem und zwar die Methode "header ()"
funktioniert weder auf Apache noch mit IIS...
Da kommt jedesmal eine Warnung und weiß gar nicht weiter was
ich da machen soll...

Muss ich etwa irgendwas im php.ini aktivieren ?
Wenn ja, dann was genau ?

Bitte bitte, brauche dringend Hilfe und freue mich sehr wenn ihr
mir da Helfen könntet...
Ein sehr großes Dankeschön im Vorraus

MfG
Spacedoener
 
Erstmal ist header eine Funktion und keine Anweisung!

Dann wäre es nicht schlecht zu wissen, wie die Warnung aussieht.

Ich denke aber, du kannst dir das Posten sparen, weil es eh die folgende sein
dürfte:
Can not send header information, headers already sent. Output started in <file>
on line <xy>


Sprich: Du gibst vorher irgendwas aus, seien es HTML-Tags, ein Leerzeichen
oder sonst etwas. Überprüfe dein Script also bitte noch einmal.
 
Regeln für die verwendung der header() direktive:

1.) Vor dem öffnenden <?php des PHP scripts darf NICHTS stehen, keine leerzeichen, keine HTML tags, gar nichts.
2.) Das script darf vor der header() direktive keine daten an den Browser senden. Kein echo, kein print, kein print_r klar?
3.) Dies gilt auch für scripte die eventuell das aktuelle script includen und für welche die von dem aktuellen script includet werden. require mit eingeschlossen.
4.) Sollte sich punkt 1 - 3 nicht realisieren lassen so ist mit ob_start() in jeden fall der ausgabebuffer zu aktivieren BEVOR diese ausgaben stattfinden.
Der ausgabebuffer ist mit ob_end_flush() du beenden sobald der header gesendet wurde.
 
Original geschrieben von chibisuke
Regeln für die verwendung der header() direktive:

1.) Vor dem öffnenden <?php des PHP scripts darf NICHTS stehen, keine leerzeichen, keine HTML tags, gar nichts.
2.) Das script darf vor der header() direktive keine daten an den Browser senden. Kein echo, kein print, kein print_r klar?
3.) Dies gilt auch für scripte die eventuell das aktuelle script includen und für welche die von dem aktuellen script includet werden. require mit eingeschlossen.
4.) Sollte sich punkt 1 - 3 nicht realisieren lassen so ist mit ob_start() in jeden fall der ausgabebuffer zu aktivieren BEVOR diese ausgaben stattfinden.
Der ausgabebuffer ist mit ob_end_flush() du beenden sobald der header gesendet wurde.

Hi,

dankeschön für deine Hilfe...
Aber irgendwie verstehe ich deine 4 Punkte nicht...
Die ersten 3 Punkte Funktionieren nicht, kommt mir auch unlogisch vor...

Und zu Punkt 4 weiß ich gar nicht wie ich das darstellen soll, hab da überhaupt kein plan...
Könntest du oder ihr mir ein oder zwei beispiele geben ?

Würde mich echt sehr freuen, wenn ihr mir dabei Helfen könntet...
Brauche dabei dringende Hilfe :( :sad: :sad: :sad:

MfG
Spacedoener
 
also

das alles ist verboten:

text vor dem öffnenden <?php

PHP:
<htm>
<?php
header(...);
[...]

leerzeichen davor

PHP:
        <?php
header(...);
[...]

textausgabe vor dem header komando

PHP:
<?php
echo "blabla";
header(...);

Natürlich müssen sich auch alle über inlcude oder require eingebungen dateien daran halten. bevor das header komando ausgeführ wurde darf kein echo gemacht werden und es darf nix vor den PHP tags stehen.

Wenn sich das nicht machen läst aus irgendeinem grund dann darf man das hier tun:

PHP:
<?php ob_start(); ?>
<html> 
[...]
<?php
header(....);
?>
[...]
</html>
<?php od_end_flush(); ?>
 
Original geschrieben von chibisuke
also

das alles ist verboten:

text vor dem öffnenden <?php

PHP:
<htm>
<?php
header(...);
[...]


leerzeichen davor

PHP:
        <?php
header(...);
[...]


textausgabe vor dem header komando

PHP:
<?php
echo "blabla";
header(...);


Natürlich müssen sich auch alle über inlcude oder require eingebungen dateien daran halten. bevor das header komando ausgeführ wurde darf kein echo gemacht werden und es darf nix vor den PHP tags stehen.

Wenn sich das nicht machen läst aus irgendeinem grund dann darf man das hier tun:

PHP:
<?php ob_start(); ?>
<html> 
[...]
<?php
header(....);
?>
[...]
</html>
<?php od_end_flush(); ?>

Hi,

dankeschön für deine Hilfe habe das jetzt getestet aber da kommt jetzt fehler meldung und zwar sowas hier:

Warning: Cannot modify header information - headers already sent by (output started at D:\Inetpub\Intranet\www\Bazar-Doener\Bazar3\kunden_reg.php:35) in D:\Inetpub\Intranet\www\Bazar-Doener\Bazar3\kunden_reg.php on line 487

Fatal error: Call to undefined function: od_end_flush() in D:\Inetpub\Intranet\www\Bazar-Doener\Bazar3\kunden_reg.php on line 488

Wie mache ich das nun, wo liegt mein Fehler, ich raff das ganze nicht...

MfG
Spacedoener
 
Hi,

hab jetzt den Fatal Error weg bekommen aber header funktioniert immer noch nicht...

Der Warnung ist immer noch da

Warning: Cannot modify header information - headers already sent by (output started at
D:\Inetpub\Intranet\www\Bazar-Doener\Bazar3\kunden_reg.php:35) in
D:\Inetpub\Intranet\www\Bazar-Doener\Bazar3\kunden_reg.php on line 487

Bitte bitte so Helft mir doch...

MfG
Spacedoener
 
Warning: Cannot modify header information - headers already sent by (output started at
D:\Inetpub\Intranet\www\Bazar-Doener\Bazar3\kunden_reg.php:35) in
D:\Inetpub\Intranet\www\Bazar-Doener\Bazar3\kunden_reg.php on line 487
Das heißt:
Headerinformation konnte nicht gesendet werden, weil in Line 35 schon eine Ausgabe gemacht wurde.
 
Also weißte, wenn du mal nich nur fehlermeldungen sondern auch CODE posten würdest, dann könnte man sehen wo das problem is.
 
Zurück