Cannot modify headers - T-I-M - 14.10.2013 11:52
Hiho liebes Sponsor-Board,
ich bin mal wieder wegen eines Problems ratlos.
Seitdem der storage-plan Server neu ist, geht ein Teil meines CMS nicht mehr - natürlich noch der wichtigste .
Doch nun zum Problem:
Ich hab das Acp mit einem Passwort geschützt, halt einer User-Authentifizierung. Will ich mich nun einloggen - und das Passwort ist richtig, kommt folgende Meldung:
[14-Oct-2013 12:39:38 Europe/Berlin] PHP Warning: session_start() [<a href='function.session-start'>function.session-start</a>]: Cannot send session cache limiter - headers already sent (output started at /home/cms/public_html/administrator/login.php:1) in /home/cms/public_html/administrator/login.php on line 6
[14-Oct-2013 12:39:38 Europe/Berlin] PHP Warning: Cannot modify header information - headers already sent by (output started at /home/cms/public_html/administrator/login.php:1) in /home/cms/public_html/administrator/login.php on line 28
Ich konnte den Fehler jetzt auch schon auf die Dateien login.php und auth.php beschränken (auth is die, die die Sessions checkt)
Hier erstmal meine login.php:
<?php include '../config.php'; $gesendet = mysql_real_escape_string($_POST['sent']); if ($_SERVER['REQUEST_METHOD'] == 'POST') { session_start();
$username = mysql_real_escape_string($_POST['username']); $passwort = mysql_real_escape_string($_POST['passwort']); $passwort= md5(md5($passwort)); $sql = "SELECT * FROM `user` WHERE `name` = '$username'"; $db_erg = mysql_query( $sql ); if ( ! $db_erg ) { die('Ungültige Abfrage: ' . mysql_error()); }else { $meldung = 'Vorgang erfolgreich!';} while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC)) { $password = $zeile['passwrd']; $id = $zeile['id']; $banned= $zeile['banned']; } if($password == $passwort and $banned == '0'){ $_SESSION['angemeldet'] = true; $_SESSION['user'] = $username; $_SESSION['id'] = $id; header('Location: index.php'); exit; }else{$meldung = 'Passwort / Nutzername falsch oder Nutzerkonto gesperrt';} } ?> <!DOCTYPE html> <html> <head> <title>pasterntCMS - Login</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <!-- Bootstrap --> <link href="css/bootstrap.min.css" rel="stylesheet" media="screen"> </head> <body background="img/bg.jpg"> <br><br><br><br><br> <div class="container content"> <div class="page-header"> <h1>pasterntCMS <small class="text-error">Admin-CP</small></h1> </div> <? if(isset($meldung)){ echo '<div class="alert alert-error"> <button type="button" class="close" data-dismiss="alert">×</button>'; echo '<h4>'.$meldung.'</h4>'; echo 'Bitte Passwort / Nutzernamen überprüfen'; echo '</div>'; }?><center> <form action="login.php" method="post" class="form-inline"> <img src="img/logo.png"> <div class="input-prepend"> <span class="add-on">Nutzername:</span> <input class="span2" name="username" type="text" placeholder="Nutzername"> </div> <div class="input-prepend"> <span class="add-on">Passwort:</span> <input class="span2" name="passwort" type="password" placeholder="Passwort"> <input class="span2" name="sent" type="hidden" value="1"> </div> <input type="submit" value="Anmelden" class="btn btn-primary"/> </form></center> </div> <script src="http://code.jquery.com/jquery.js"></script> <script src="js/bootstrap.min.js"></script> </body> </html>
Hier nun die auth.php:
<?php session_start();
$hostname = $_SERVER['HTTP_HOST']; $path = dirname($_SERVER['PHP_SELF']);
if (!isset($_SESSION['angemeldet']) || !$_SESSION['angemeldet']) { header('Location: http://'.$hostname.($path == '/' ? '' : $path).'/login.php'); exit; } ?>
Leider kann ich keinen Fehler erkennen, was is da los?
Wär über Hilfe dankbar.
MfG
Tim
RE: Cannot modify headers - netCiX - 14.10.2013 12:00
Die Fehlermeldung sagt doch eigentlich genug oder?
headers already sent by
Heißt der Header wurde bereits einmal ausgegeben und ein zweites mal ist beim Header in PHP nicht möglich.
RE: Cannot modify headers - Aaron - 14.10.2013 12:00
setz das session_start am Anfang deiner index.php und nimm es sonst überall raus
RE: Cannot modify headers - Loster - 14.10.2013 12:34
Oder arbeite mit output_buffering.
RE: Cannot modify headers - T-I-M - 14.10.2013 14:40
Danke @all, Problem konnte gelöst werden
|