Hi Andreas-Lindig,
#wenn kein druckbares Zeichen gefunden wird, sondern allenfalls whitespaces oder nichts
if(!preg_match("/\S/", $antwort))
Nun, ich hab das mal eingebaut, aber die Prüfung wird entweder nicht durchgeführt, oder aber das Ergebnis einfach übergangen.
if (!isset($_POST['name']) || !isset($_POST['nachricht'])) {
@readfile("guestbook/speicher.txt");
} else if (!empty($POST['name']) || !empty($POST['nachricht'])) {
if(!preg_match("/\S/",$name)) {
echo "<p>Der Name darf nicht nur aus Leerzeichen bestehen!</p>";
@readfile("guestbook/speicher.txt");
exit;
} else if(!preg_match("/\S/",$nachricht)) {
echo "<p>Die Nachricht sollte etwas mehr als nur Leerzeichen enthalten!</p>";
@readfile("guestbook/speicher.txt");
exit;
}
} else if ((isset($_POST['name']) && $_POST['name'] == "") || (isset($_POST['nachricht']) && $_POST['nachricht'] == "")) {
echo "<p>Name und Kommentar müssen ausgefüllt werden!<br>Bitte geben sie diese Daten korrekt ein!</p>";
@readfile("guestbook/speicher.txt");
} else if (isset.......
Es ist nach wie vor möglich Posts mit nur Leerzeichen in den Feldern Name und Nachricht abzuschicken. Das komplette Script kann man hier besichtigen:
http://faq.united-web.at/guestbook/gaestebuch.phps
Und wie sieht es mit neuladen nach dem Abschicken eines Postings aus? Vermehren sich da die Einträge?
Jep, leider.
Wie könnte man das vermeiden, ohne gleich mit Sessions zu arbeiten?
(Hab noch nie damit was gemacht, kenn mich also null damit aus).Brauchst Du auch nicht. Trenne auslesen und schreiben der Datei. Wenn die Datei geschrieben wurde, leite wieder zum Ausgangsscript (lesen und ausgeben) weiter. Dann existiert die POST-Anfrage nicht mehr.
Spätestens hier wird leider eine völlige Umstrukturierung des Scriptes nötig. *seufz*
Das wird aber eine Weile dauern. Trotzdem Danke für den Tip, jetzt weiss ich wenigstens, wie ich es angehen sollte.
Gruß
Kurt
Nein, ich beantworte keine Anfragen per e-mail.
ss:( zu:) ls:[ fo:) de:] va:| ch:| sh:( n4:° rl:( br:? js:| ie:% fl:( mo:?
"Tadele nicht den Fluss, wenn du ins Wasser faellst." (ind. Sprichwort)
http://elektro-dunzinger.at
http://shop.elektro-dunzinger.at