ja ok ich habe jetzt das turtorial ausprobiert und ein neues login gemacht!
aber jetzt ist folgendes:
PHP-Code:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/web38/html/login/config.inc.php:7) in /var/www/web38/html/login/validateLogin.inc.php on line 47
natürlcih hab ich erst gesucht und gegoogelt, und herraus gefunden, dass es an den leerzeichen liegt, aber an welchen?!
PHP-Code:
<?php
session_start();
// Überprüfen, ob das Formular abgeschickt wurde und ob beide Angaben gemacht wurden.
if( isset($_POST['username'], $_POST['passwort'])
AND
strcmp(trim($_POST['username']),'') != 0
AND
strcmp(trim($_POST['username']),'') != 0 ) {
// Einbinden der Konfigurationsdatei
include_once 'config.inc.php';
// Erstellen der Verbindung zur MySQL-Datenbank
if( !$connection = mysql_connect( $_config['host'], $_config['user'], $_config['password'] ) ) {
die( 'Verbindung zum Datenbankserver konnte nicht hergestellt werden.' );
}
if( !mysql_select_db( $_config['database'], $connection ) ) {
die ( 'Die Datenbank ' . $_config['database'] . ' kann nicht verwendet werden. <br />
MySQL-Error: <br />' . mysql_error() );
}
// SQL-Anweisung an die Datenbank senden, um erstens herauszufinden, ob
// diese Kombination von Usernamen und Passwort überhaupt existiert und
// zweitens bei Existenz Userinformationen auszulesen
$sql = "SELECT
_id,
_anzahlLogins
FROM
archiv_login
WHERE
_username = '" . trim($_POST['username']) . "'
AND
_passwort = '" . md5(trim($_POST['passwort'])) . "'";
$res = mysql_query($sql) or die( 'Error[SELECT|User]: <br />
<pre>' . $sql . '</pre>
<br />
MySQL-Error: ' . mysql_error() );
// Nur wenn genau ein Datensatz selektiert wurde wird der User eingeloggt.
// In allen anderen Fällen wird er zurück zum Loginformular geleitet.
if( mysql_num_rows($res) != 1 ) {
header('Location:loginfehler.html');
exit();
}
else {
// Der Schlüssel 'loggedIn' erhält den Wert 'true'. So kann überprüft später werden,
// ob der User eingeloggt ist oder nicht.
$_SESSION['loggedIn'] = true;
// Die userspezifischen Daten werden ausgelesen und der Session hinzugefügt
$user = mysql_fetch_object($res);
$_SESSION['anzahlLogins'] = $user->_anzahlLogins;
$_SESSION['id'] = $user->_id;
// Aktualisierung des Anzahl der Logins
$sql = 'UPDATE
archiv_login
SET
_anzahlLogins = _anzahlLogins + 1
WHERE
_id = ' . $user->_id;
mysql_query($sql) or die( 'Error[UPDATE|User]: <br />
<pre>' . $sql . '</pre>
<br />
MySQL-Error: ' . mysql_error() );
// Der Login war erfolgreich und der User wird zur Startseite des
// passwortgeschützen Bereichs weitergeleitet
header('Location:geheim.php');
exit();
}
}
else {
header('Location:loginformular.html');
exit();
}
?>