rechencaptcha wird angezeigt aber nicht berücksichtigt

Hier werden Probleme rund um das Rechen Captcha behandelt

Moderator: frameguard

rechencaptcha wird angezeigt aber nicht berücksichtigt

Beitragvon theend » 21.12.2008, 20:24

das Formular:



<HTML>
<head>
<title>Mail ME</title>
<body background="../hintergrundbild-blau.jpg" style="background-attachment: fixed">

<div align="center">

<table border="0" cellpadding="0" cellspacing="0" height="453" width="741" bgcolor="#0000FF"><tr>
<td valign="top" width="4">

&nbsp;<td valign="top" width="4">

&nbsp;<td valign="top">

<font color="#FFFFFF">&nbsp;<html>
<head>
<title></title>
<style>
body { font-family:Comic Sans MS; font-size:24px; font-weight:bold; color:#6633FF;}
</style>
</head>
<body link="#FFFFFF" alink="#FFFFFF" vlink="#FFFFFF" topmargin="100">
</font>
</body>
</html>
<p>
<html>
<body link="#FFFFFF" alink="#FFFFFF" vlink="#FFFFFF" topmargin="100">
</p>
<div align="center">
<font color="#FFFFFF">Schicke mir eine nette Nachricht </font>
<img border="0" src="../weih/4.gif" width="76" height="86"><form action="feedback_schreibe.php" method="post">
<table border=0 cellspacing="5" cellpadding="5">
<tr><td width=139><font color="#FFFFFF">Dein Name: </font> </td><td>
<font color="#FFFFFF"><input name="wert_name" style="float: left"></font></td></tr>
<tr><td><font color="#FFFFFF">Deine E-Mail: </font> </td><td>
<font color="#FFFFFF"><input name="wert_email" style="float: left"></font></td></tr>
<tr><td><font color="#FFFFFF">Deine Homepage: </font> </td><td>
<font color="#FFFFFF"><input name="wert_hp" style="float: left"></font></td></tr>
<tr><td><font color="#FFFFFF">Deine Nachricht: </font> </td><td>
<p align="left"><font color="#FFFFFF"><textarea name="wert_text" rows=6 cols=30></textarea></font></td></tr> <tr><td><font color="#FFFFFF">
Sicherheitstest:</font></td><td>
<tr>
<td><img src="rechen-captcha.php"></td>
<td><input type="text" name="sicherheitscode" size="5"></td>
</tr>
<tr><td> </td><td><font color="#FFFFFF"><input type=submit value="Senden"> <input type=reset value="Reset"></font></td></tr>
</table>
<p>
<img border="0" src="../weih/2.gif" width="116" height="106" align="left"></p>
<p>&nbsp;</p>
<p align="right"><font color="#FFFFFF" size="2">&nbsp; script written by
KillerVirus&nbsp;&nbsp;&nbsp; </font></p>
</form>
</div>
</body>
</html></table>
</HTML>







und die feedback_schreibe.php, die das formular verarbeitet:

<html>
<?php
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);
}
?>
<head>
<title></title>
<style>
body { font-family:Comic Sans MS; font-size:18px; font-weight:bold; color:#6633FF;}
th { font-size:24px; background-color:#6633FF; color:#EEEEEE;}
td { font-size:24px; background-color:#6633FF; color:#EEEEEE;}
</style>
</head>
<body topmargin="200" link="#6633FF" alink="#6633FF" vlink="#6633FF">
<div align="center">
<?php
$sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "12121212");
$sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe);
$wert_name = $_POST["wert_name"];
$wert_email = $_POST["wert_email"];
$wert_hp = $_POST["wert_hp"];
$wert_text = $_POST["wert_text"];

$text_name = "Name: $wert_name \n";
$text_email = "E-Mail: $wert_email \n";
$text_hp = "HP: $wert_hp \n";
$text_text = "Text: $wert_text \n";

if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe ==

$_SESSION['rechen_captcha_spam']){

$dateiname = "feedback/feedback.php";
$fp = fopen ($dateiname , "a+");

unset($_SESSION['rechen_captcha_spam']);
fwrite ($fp , '<table border=0 cellspacing="5" cellpadding="5">');
fwrite ($fp , '<tr><td width=130>Name</td><td width=600>'.$wert_name.'</td></tr>');
fwrite ($fp , '<tr><td>E-Mail</td><td>'.$wert_email.'</td></tr>');
fwrite ($fp , '<tr><td>Homepage</td><td>'.$wert_hp.'</td></tr>');
fwrite ($fp , '<tr><td>Nachricht</td><td>'.$wert_text.'</td></tr>');
fwrite ($fp , '</table><br>');
fclose ($fp);

echo "Danke für deine Nachricht!";
}
else
{
echo "Deine Nachricht wurde NICHT gespeichert, falscher Sicherheitscode";
}
?>
<br><br>
<a href="../Start.html">Zurück</a>
</div>
</body>
</html>





und die rechen-captcha.php:

<?php
session_start();
unset($_SESSION['rechen_captcha_spam']);
$zahl1 = rand(10,20); //Erste Zahl 10-20
$zahl2 = rand(1,10); //Zweite Zahl 1-10
$operator = rand(1,2); // + oder -

if($operator == "1"){
$operatorzeichen = " + ";
$ergebnis = $zahl1 + $zahl2;
}else{
$operatorzeichen = " - ";
$ergebnis = $zahl1 - $zahl2;
}

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);
}

$_SESSION['rechen_captcha_spam'] = encrypt($ergebnis, "12121212"); //Key
$_SESSION['rechen_captcha_spam'] = str_replace("=", "", $_SESSION['rechen_captcha_spam']);

$rechnung = $zahl1.$operatorzeichen.$zahl2." = ?";
$img = imagecreatetruecolor(80,15);
$schriftfarbe = imagecolorallocate($img,13,28,91);
$hintergrund = imagecolorallocate($img,162,162,162);
imagefill($img,0,0,$hintergrund);
imagestring($img, 3, 2, 0, $rechnung, $schriftfarbe);
header("Content-type: image/png");
imagepng($img);
imagedestroy($img);
?>





wenn ich anstatt die daten zu verarbeiten folgendes versuche:

echo $_SESSION['rechen_captcha_spam'];
echo $sicherheits_eingabe;

kommen keine zahlen, sondern irgend ein text.

wie: YmY
theend
 
Beiträge: 2
Registriert: 21.12.2008, 20:19

mhm

Beitragvon theend » 21.12.2008, 20:29

jetzt funktionierts :)

ich versuch das jetzt seit paar stunden und jetzt gerade nach paar minuten funktionierts^^

es lag am sicherheitscode
ich habe 12121212
durch eine andere ersetzt
theend
 
Beiträge: 2
Registriert: 21.12.2008, 20:19


Zurück zu Rechen Captcha

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron