funnyzocker
Erfahrenes Mitglied
Hallo.
Da mein Gästebuch (was ich komplett selber geschrieben habe) immer mit Spam zugemüllt wurde habe ich den Code nun mal verändert.
Mal die frage an unsere Experten hier im Forum.
Meint ihr ich habe so alles soweit abgesichert das kein Fremder Code in die db gespeichert wird? Ausserdem habe ich ein Rechencaptcha eingebaut.
Nach meiner Meinung müsste doch das GB so eigentlich gegen alles abgesichert sein oder?
Über Verbesserungsvorschläge werde ich auch nicht meckern
Da mein Gästebuch (was ich komplett selber geschrieben habe) immer mit Spam zugemüllt wurde habe ich den Code nun mal verändert.
Mal die frage an unsere Experten hier im Forum.
Meint ihr ich habe so alles soweit abgesichert das kein Fremder Code in die db gespeichert wird? Ausserdem habe ich ein Rechencaptcha eingebaut.
PHP:
session_start();
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}
$sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "29jfkd921");
$sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe);
if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){
unset($_SESSION['rechen_captcha_spam']);
//Captcha Ende
$ip = $_SERVER['REMOTE_ADDR'];
$datum = date("Y-m-d H:i:s");
$name = mysql_real_escape_string($_POST['name']);
$email = mysql_real_escape_string($_POST['email']);
$text = strip_tags($_POST['text']);
switch($send) {
case $_POST['name'] !="":
echo"Bitte den Namen eingeben";
echo"<a href=index.php?do=gb&aktion=form>Zurück</a>";
break 1;
case $_POST['email'] !="":
echo"Bitte die Emailadresse eingeben";
echo"<a href=index.php?do=gb&aktion=form>Zurück</a>";
break 1;
case $_POST['text'] !="":
echo"Bitte einen Text eingeben";
echo"<a href=index.php?do=gb&aktion=form>Zurück</a>";
break 1;
default:
if (!ereg("^.+@.+\\..+$", $_POST[email]))
{
echo "<h2>Die eingegebene Emailadresse ist nicht korrekt!<br>Bitte auf das korrekte Format ( name@domain.endung )achten";
}
else
{
$sql = "INSERT INTO gb
(gb_name, gb_email, gb_ip, gb_text, gb_datum)
VALUES
('".$name."',
'".$email."',
'".$ip."',
'".$text."',
'".$datum."')";
$eintragen = mysql_query($sql);
//Mail senden zur Überprüfung
$sender = "gb@bilder-gigant.de";
$empfaenger = "webmaster@bilder-gigant.de";
$betreff = "Neuer Eintrag in das Gästebuch";
$text = "Hallo Webmaster.
Soeben wurde ein neuer Eintrag in das Gästebuch vorgenommen";
mail($empfaenger, $betreff, $text, "From: $sender");
echo"Vielen Dank für Ihren Gästebucheintrag";
}
}
}
Nach meiner Meinung müsste doch das GB so eigentlich gegen alles abgesichert sein oder?
Über Verbesserungsvorschläge werde ich auch nicht meckern