Hallo!
Mal gucken ob es funktioniert, wenn nich schreibe ich nochmal. :)
Genau der Fall ist nu eingetreten.... :?
Hier nochmal der aktuelle Quellcode, ich habe für 'username' "Adrian" eingesetzt und für 'chatroom' "Entry"...
<?php
// Fehlermeldung bei Verwendung unerlaubter Zeichen für
// den Benutzernamen und den Chatroom
$errormessage_char = 'Fehler: Sie dürfen nur die Zeichen '
. 'a, b, c, d, e, f, g, h, i, j, k, l, m, '
. 'n, o, p, q, r, s, t, u, v, w, x, y, z, '
. 'A, B, C, D, E, F, G, H, I, J, K, L, M, '
. 'N, O, P, Q, R, S, T, U, V, W, X, Y, Z, '
. '0, 1, 2, 3, 4, 5, 6, 7, 8, 9 '
. 'für Ihren Usernamen und den Chatroom verwenden!<br /> '
. 'Außerdem müssen Sie mindestens drei Buchstaben '
. 'für den Usernamen und den Chatroom verwenden!<br />'
. "\n ";
// Fehlermeldung bei fehlgeschlagener Verbindung zu $filename
$errormessage_open = 'Fehler: Es konnte keine Verbindung zur'
. "Logdatei hergestellt werden! \n ";
// Fehlermeldung bei fehlgeschlagenem Schreiben in $filename
$errormessage_write = 'Fehler: Ihre Benutzerdaten konnten nicht in'
. "die Logdatei geschrieben werden! \n ";
// Fehlermeldung bei fehlgeschlagenem Schließen von $filename
$errormessage_close = "Fehler: Die Logdatei konnte nicht geschlossen werden! \n ";
// Ausgabe eines Links nach Fehlermeldung, um zurückzukehren
$errormessage_return = 'Klicke '
. '<a href="index.php" target="_top">hier</a> '
. "um zu \"Home\" zurückzukehren!\n";
// Benutzerdaten, die an die Logdatei angehängt werden
$userdata = 'Datum: ' . date("d.m.Y")
. ', Zeit: ' . date("H:i:s")
. ', Zeitzone des Clients: ' . date("T")
. ', IP: ' . getenv("REMOTE_ADDR")
. ', Username: ' . $_POST["username"]
. ', Chatroom: ' . $_POST["chatroom"]
. " \n ";
// Meldung, die der Benutzer über das Loggen seiner Daten erhält
$userinfo = " Deine Daten sind erfolgreich aufgezeichnet worden:<br />\n "
. $userdata;
// Logdatei
$filename = 'userips.txt';
// Variable zum Überprüfen, ob weiter ausgeführt werden soll
$continuation = true;
// Prüfung auf unerlaubte Zeichen
if(
preg_match("/[^a-zA-Z0-9]*/", $_POST['username'].$_POST['chatroom'])==true or
count($_POST['username'])<3 or
count($_POST['chatroom'])<3
) {
// Fehlerausgabe aufgrund von einer falschen Usereingabe
echo $errormessage_char;
$continuation = false;
}
else {
$fh = fopen($filename,'a+b');
if(!$fh) {
// Fehlerausgabe aufgrund von fehlgeschlagenem Verbindungsversuch
echo $errormessage_open;
$continuation = false;
}
else {
// Schreibe Userdaten in die Logdatei
$write_ok = fwrite($fh, $userdata);
if(!$write_ok) {
// Fehlerausgabe aufgrund von fehlgeschlagenem Schreibeversuch
echo $errormessage_write;
$continuation = false;
}
// Schließe Logdatei
$close_ok = fclose($fh);
if(!$close_ok) {
// Fehlerausgabe aufgrund von fehlgeschlagenem Schließversuch
echo $errormessage_close;
$continuation = false;
}
}
}
// Aktionen nach Überprüfung auf unerlaubte Zeichen und Festhalten der Userdaten
if(!$continuation) {
// Keine weiteren Aktionen, oben ist ein Fehler aufgetreten!
// Ausgabe von Rückkehr Link
echo $errormessage_return;
}
else {
// Weitere Aktionen werden ausgeführt, oben ist kein Fehler aufgetreten!
}
?>
Ich finde den Fehler nicht...
Ausgegeben wird der Fehler $errormessage_char .
Mit freundlichen Grüßen,
Adrian