• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Warning: Cannot modify header information

pr0bl3mk1nd

Neues Mitglied
Hallo!

habe folgendes Problem. ich bekomme immer diese fehlermeldung:

Warning: Cannot modify header information - headers already sent by (output started at /users/gbh2011/www/index.php:29) in /users/gbh2011/www/login.php on line 29

Warning: Cannot modify header information - headers already sent by (output started at /users/gbh2011/www/index.php:29) in /users/gbh2011/www/login.php on line 30

-----------------------------------

login.php:

PHP:
<?php
    if (isset($_POST['btnLogin'])) {
        $name = $_POST['edtName'];
        $pw = $_POST['edtPW'];
        $result = mysql_query("SELECT id, admin FROM user WHERE name = '$name' AND pw = '$pw'");
        if (mysql_num_rows($result) == 1) {
            $id = mysql_result($result, 0, "id");
            $_SESSION['admin'] = mysql_result($result, 0, "admin");
            setcookie("gbh2011_id", $id, time() + 60 * 60);
            header("LOCATION: index.php"); // 29
        } // 30
        else
            echo "<script>alert('Login fehlgeschlagen!');</script>";
    }
?>

index.php:

PHP:
<div id="content" style="color: white;"><?php include "include.php"; ?></div> // 29

kann mir wer helfen?
smile.gif
habe bisher gegoogelt und dort steht, dass kein leerzeichen vor <?php stehen darf und dass vor header() kein html an den brwoser gesendet werden darf. nur hilft mir das bei meiner fehlersuche nicht weiter... was muss ich machen?
 
Werbung:
Eigentlich hast du dir deine Antwort bereits selber gegeben.

Das <div> in Zeile 29 deiner index.php ist eine HTML-Ausgabe.
Das darf nicht sein, wenn du später im Quellcode Header-Informationen senden willst.

Eine wenig elegante aber funktionierende Lösung wäre ein Output-Buffer.
das sorgt dafür, dass erst der vollständige Quellcode abgearbeitet wird, bevor die Ausgabe an den Browser geschieht.
Füge dazu an den Anfang des Dokumentes ob_start() ein.
Solltest du eine Session öffnen kommt ob_start() aber zwingend erst nach session_start()
 
Werbung:
Hallo Problemkind,

1. Öffne die Datei im Windows Texteditor. Gehe auf Datei->Speichern Unter und wähle den Dateityp "ANSII" aus und wenn nötig, überschreibe vorhandene Daten.
F5 ( oder STRG+F5 ) im Browser und die Fehlermeldung sollte weg sein,.. außer Fall 2. trifft zu.

2. Wird die Datei eventuell von einer anderen Datei "included" ?

Gruß
 
Zurück
Oben