ich habe das Script eingebaut nur funktioniert es nicht, egal was ich mache das Formular wird immer abgesendet.
Die kon.php ist in der index.php included und bekommt von dort seine session
Vielleicht kann mir hier jemand helfen
hier mal meine beiden scripte:
rechen-captcha.php
- Code: Alles auswählen
<?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, "12345"); //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);
?>
kon.php
- Code: Alles auswählen
<?php
if(isset($_REQUEST['senden']) && $_REQUEST['senden'] == 'Abschicken' ){
echo "<table border='0' align='center'><tr><td colspan='2' align='center'>";
$error=0;
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"], "12345");
$sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe);
if($sicherheits_eingabe == $_SESSION['rechen_captcha_spam'] AND is_numeric($_POST["sicherheitscode"]) == true AND $sicherheits_eingabe == true){
unset($_SESSION['rechen_captcha_spam']);
}
else{
echo"Falscher Sicherheitscode !!<br>";
$error++;
}
### captcha script ende
if(empty($_REQUEST['Name']) || empty($_REQUEST['PLZ']) || empty($_REQUEST['Ort']) || empty($_REQUEST['Anliegen']) ){
echo "Bitte füllen Sie die Pflichtfelder aus!<br>";
$error++;
} if(!preg_match("/^[0-9]+$/i",$_REQUEST['PLZ']) || strlen($_REQUEST['PLZ']) != 5){
echo "Bitte geben Sie eine korrekte PLZ an!<br>";
} if (!preg_match("/^[aA-Zz]+$/i",$_REQUEST['Name']) || strlen($_REQUEST['Name']) < 2){
echo "Bitte geben Sie einen korrekten Namen an!<br>";
$error++;
} if (!empty($_REQUEST['Vorname'])){
if(!preg_match("/^[aA-Zz]+$/i",$_REQUEST['Vorname']) || strlen($_REQUEST['Vorname']) < 2){
echo "Bitte geben Sie einen korrekten Vornamen an!<br>";
$error++;
}}if (!empty($_REQUEST['Strasse'])){
if(!preg_match("/^[aA-Zz]+$/i",$_REQUEST['Strasse']) || strlen($_REQUEST['Strasse']) < 2){
echo "Bitte geben Sie einen korrekten Straßennamen an!<br>";
$error++;
}}if (!empty($_REQUEST['Mail'])){
if(!preg_match("/^([_a-zA-Z0-9-]+)(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$/i",$_REQUEST['Mail']) || strlen($_REQUEST['Mail']) < 5){
echo "Bitte geben Sie eine korrekte Mailadresse an!<br>";
$error++;
}}if (!empty($_REQUEST['Ort'])){
if(!preg_match("/^[aA-Zz]+$/i",$_REQUEST['Ort']) || strlen($_REQUEST['Ort']) < 2){
echo "Bitte geben Sie einen korrekten Ortsnamen an!<br>";
$error++;
}}if(isset($_REQUEST['ant'])){
if($_REQUEST['ant'] == 'Fon' && empty($_REQUEST['Fon'])){
echo "Wenn ich via Telefon antworten soll, benötige ich Ihre Telefonnummer!<br>";
$error++;
}elseif ($_REQUEST['ant'] == 'Fax' && empty($_REQUEST['Fax'])){
echo "Wenn ich via Telefax antworten soll, benötige ich Ihre Faxnummer!<br>";
$error++;
}elseif($_REQUEST['ant'] == 'Mail' && empty($_REQUEST['Mail'])){
echo "Wenn ich via Mail antworten soll, benötige ich Ihre Mailadresse!<br>";
$error++;
}}
echo "</td></tr><tr><td align=center>";
echo "<form action='index.php?link=kon' method='POST' target='_self'>";
echo "<input type='Submit' name='back' class='formulare' style='width:100' value='Zurück'></form>";
echo"</td></tr></table>";
if($error == 0){
echo "<table border='0' align='center'><tr><td colspan='2' align='center'>";
$sql = mysql_query("INSERT INTO ".$praefix."kontakt VALUES ('', '".$_REQUEST['Name']."', '".$_REQUEST['Vorname']."', '".$_REQUEST['Strasse']."', '".$_REQUEST['Hnr']."', '".$_REQUEST['PLZ']."', '".$_REQUEST['Ort']."', '".$_REQUEST['Fon']."', '".$_REQUEST['Fax']."', '".$_REQUEST['Mail']."', '".$_REQUEST['ant']."', '".$_REQUEST['Anliegen']."') ");
$i=0;
if (!is_array($HTTP_POST_VARS))
return;
reset($HTTP_POST_VARS);
while(list($key, $val) = each($HTTP_POST_VARS)) {
$GLOBALS[$key] = $val;
$val=stripslashes($val);
echo "<b>$key</b> = $val<br>";
$message = $message. "$key = $val\n";
}
$mailto = "test@test.com";
$subject = "Anfrage";
$from = $_REQUEST['Name'];
$message = "$message";
mail( "$mailto", "$subject", "$message", "From: $from");
echo "Daten erfolgreich abgesendet!<br><br>Vielen Dank für Ihr Vertrauen.<br><br>";
echo "<form action='index.php?link=kon' method='POST' target='_self'>";
echo "<input type='Submit' name='back' class='formulare' style='width:100' value='Zurück'></form>";
echo "</td></tr></table>";
}
}else{
echo"
<form action='".$PHPSELF."' method='POST' target='_self'>
<table border='0' align='center'>
<tr>
<td colspan='2'><h1>Kontaktformular</h1></td>
</tr>
<tr>
<td colspan='2'><h2>Geben Sie hier bitte Ihre Kontaktdaten an!</h2></td>
</tr>
<tr>
<td>Name:*</td>
<td><input class='formulare' type='Text' name='Name' size='34' maxlength='100'></td>
</tr>
<tr>
<td>Vorname:</td>
<td><input class='formulare' type='Text' name='Vorname' size='34' maxlength='100'></td>
</tr>
<tr>
<td>Straße/Hnr:</td>
<td><input class='formulare' type='Text' name='Strasse' size='28' maxlength='100'><input class='formulare' type='Text' name='Hnr' size='3' maxlength='10'></td>
</tr>
<tr>
<td>PLZ/Ort:*</td>
<td><input class='formulare' type='Text' name='PLZ' size='5' maxlength='5'><input class='formulare' type='Text' name='Ort' size='26' maxlength='100'></td>
</tr>
<tr>
<td>Fon:**</td>
<td><input class='formulare' type='Text' name='Fon' size='34' maxlength='20'></td>
</tr>
<tr>
<td>Fax:**</td>
<td><input class='formulare' type='Text' name='Fax' size='34' maxlength='40'></td>
</tr>
<tr>
<td>Mail:**</td>
<td><input class='formulare' type='Text' name='Mail' size='34' maxlength='100'></td>
</tr>
<tr>
<td>Anliegen:*</td>
<td><textarea name='Anliegen' cols='33' rows='5' class='formulare'></textarea></td>
</tr>
<tr>
<td colspan='2'> </td>
</tr>
<tr>
<td colspan='2'><h2>Auf welchem Weg soll ich Ihnen antworten?</h2></td>
</tr>
<tr>
<td colspan='2' align='center'>
<input type='Radio' name='ant' value='Fon'>Fon
<input type='Radio' name='ant' value='Fax'>Fax
<input type='Radio' name='ant' value='Mail'>Mail
</td>
</tr>
<tr>
<td><img src='rechen-captcha.php'></td>
<td><input type='text' class='formulare' name='sicherheitscode' size='5'></td>
</tr>
<tr>
<td colspan='2'><input type='Submit' name='senden' class='formulare' style='width:305' value='Abschicken'></td>
</tr>
<tr>
<td colspan='2'> </td>
</tr>
<tr>
<td colspan='2'>* Pflichtfelder<br>** bedingte Pflichtfelder</td>
</tr>
</table>
</form>
";
}
?>
