Hoi Allemaal,
Ik probeer al weken lang voor elkaar te krijgen om een Captcha code in mijn contact formulier toe te voegen. Dit omdat ik al maanden last heb van SPAM via het online formulier. Ik wordt er gek van en soms wel een stuk of 10 berichten per dag. Vooral de laatste dagen wordt ik er compleet gestoord van.
Via google heb ik al heel wat scripts gevonden maar het probleem is dat ik het niet krijg toegepast in mijn al bestaande script. Ik wil mijn eigen contact formulier namelijk gewoon behouden. Al op verschillende manieren heb ik pogingen gedaan maar steeds slaat het hele script op hol en werkt niks meer. Via deze website heb ik een goede uitleg van een script gevonden: http://www.joriso.nl/verhaaltjes-webdevelopment-captcha-2.html
Echter ook hiermee lukt het me niet de captcha toe te voegen. Zij geven namelijk dit stukje script aan om toe te voegen in het contact formulier:
Een waslijst, maar onderstaand script is mijn contact formulier:
Ik weet mij geen raad meer en hoop dan ook dat iemand mij hiermee kan en wilt helpen!! Alvast heel erg bedankt, zou blij zijn als het is verholpen!
Groet,
Justin
Ik probeer al weken lang voor elkaar te krijgen om een Captcha code in mijn contact formulier toe te voegen. Dit omdat ik al maanden last heb van SPAM via het online formulier. Ik wordt er gek van en soms wel een stuk of 10 berichten per dag. Vooral de laatste dagen wordt ik er compleet gestoord van.
Via google heb ik al heel wat scripts gevonden maar het probleem is dat ik het niet krijg toegepast in mijn al bestaande script. Ik wil mijn eigen contact formulier namelijk gewoon behouden. Al op verschillende manieren heb ik pogingen gedaan maar steeds slaat het hele script op hol en werkt niks meer. Via deze website heb ik een goede uitleg van een script gevonden: http://www.joriso.nl/verhaaltjes-webdevelopment-captcha-2.html
Echter ook hiermee lukt het me niet de captcha toe te voegen. Zij geven namelijk dit stukje script aan om toe te voegen in het contact formulier:
HTML:
<html>
<head>
<title>html formulier met php captcha</title>
</head>
<body>
<form method="post" action="write.php">
<input class="input" type="text" name="norobot">
<img src="captcha.php"><input type="submit" value="Toevoegen">
</form>
</body>
</html>
Een waslijst, maar onderstaand script is mijn contact formulier:
PHP:
<?
ob_start();
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
$site = "http://www.kermisadviesgroep.nl/home.htm"; // Site waarnaar je terug gaat als je een bericht hebt achtergelaten
$wm_naam = "KAG"; // Webmaster naam
$wm_email = "info@email.nl"; // Webmaster E-mail
$Anti_Spam = "10"; // Anti Spam Tijd in Minuten ( Voer "0" om de Spam Beveiliging uit te zetten )
$html = TRUE; // Een HTML email
// Hierna hoef je niks meer te veranderen!
$naam = $_POST['naam'];
$email = $_POST['email'];
$functie = $_POST['functie'];
$onderwerp = $_POST['onderwerp'];
$bericht = $_POST['bericht'];
$bericht_wrap = wordwrap ($bericht, 90, "\n", 1);
// IP van de verstuurder
if(getenv($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = getenv($_SERVER['HTTP_X_FORWARDED_FOR']);
} elseif(getenv($_SERVER['HTTP_CLIENT_IP'])) {
$ip = getenv($_SERVER['HTTP_CLIENT_IP']);
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
$host = gethostbyaddr($ip); // Host van verstuurder
if($html) {
// Headers
$headers = "From: \"Contact Formulier KAG\" <".$wm_email.">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Return-Path: Mail-Error <".$wm_naam.">\r\n";
// Bericht
$message = "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">";
$message .= "<HTML><HEAD>";
$message .= "<META http-equiv=3DContent-Type content=3D\"text/html; = charset=3Dwindows-1252\">";
$message .= "</HEAD><BODY>";
$message .= "<BR> ";
$message .= "<TABLE>";
$message .= "<tr><td>Naam:</td><td>".$naam."</td></tr>";
$message .= "<tr><td>Email:</td><td><a href=\"mailto:".$email."\">".$email."</a></td></tr>";
$message .= "<tr><td>Functie:</td><td>".$functie."</td></tr>";
$message .= "<BR> ";
$message .= "<tr><td>Bericht:</td><td>".$bericht."</td></tr>";
$message .= "<tr><td colspan=\"2\"> </td></tr>";
$message .= "<BR> ";
$message .= "<tr><td>Datum:</td><td>".date("d-m-Y H:i:s")."</td></tr>";
$message .= "<tr><td>IP:</td><td><a href=\"http://sunny.nic.com/cgi-bin/whois?domain=".$ip."\">".$ip."</a></td></tr>";
$message .= "<tr><td>Host:</td><td>".$host."</td></tr>";
$message .= "</TABLE></BODY></HTML>";
}
else {
// Headers
$headers = "From: \"Contact Formulier KAG\" <".$wm_email.">\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1";
// Bericht
$message = "Naam: ".$naam." \n";
$message .= "E-mail: ".$email." \n";
$message .= "Functie: ".$functie." \n";
$message .= "Bericht:\n".$bericht_wrap." \n ";
$message .= " \n ";
$message .= "Datum: ".date("d-m-Y H:i:s")." \n";
$message .= "------------------------------------------------------- \n ";
$message .= "IP: ".$ip." \n ";
$message .= "Host: ".$host." \n ";
}
// Mail Checker
function checkmail($mail)
{
$email_host = explode("@", $mail);
$email_host = $email_host['1'];
$email_resolved = gethostbyname($email_host);
if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
$valid = 1;
return $valid;
}
// kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
if(!isset($_COOKIE['mailformulier']))
{
// Alles Controleren Wanneer er op Verzenden wordt gedrukt
if(isset($_POST['verzenden']))
{
$fout = "";
if((empty($naam)) OR (strlen($naam) < 3) OR (eregi(">", $naam)))
{
$fout .= "U bent vergeten uw naam in te vullen! <BR>";
unset($naam);
$fout_vakje_naam = "input_fout";
$fout_text_naam = "text_fout";
}
if((empty($email)) OR (strlen($email) < 7) OR (eregi(">", $email)))
{
$fout .= "U bent vergeten uw e-mail adres in te vullen! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "text_fout";
}
elseif(checkmail($email) == 0)
{
$fout .= "Vul een correct e-mail adres in! <BR>";
unset($email);
$fout_vakje_email = "input_fout";
$fout_text_email = "text_fout";
}
if((empty($onderwerp)) OR (strlen($onderwerp) < 3) OR (eregi(">", $onderwerp)) )
{
$fout .= "U bent vergeten een onderwerp in te vullen! <BR>";
unset($onderwerp);
$fout_vakje_onderwerp = "input_fout";
$fout_text_onderwerp = "text_fout";
}
if(empty($bericht))
{
$fout .= "U bent vergeten een bericht in te vullen! <BR";
unset($bericht);
$fout_vakje_bericht = "input_fout";
$fout_text_bericht = "text_fout";
}
elseif(strlen($bericht) < 6)
{
$fout .= "Uw bericht is tekort! <BR>";
$fout_vakje_bericht = "input_fout";
$fout_text_bericht = "text_fout";
}
if(!empty($fout))
{
echo "<center><font color=\"#FF0000\"> $fout </font><br>"; // Weergeven van de fout(en)
}
else
{
mail($wm_email,$onderwerp,$message,$headers);
// Bericht als mail succesvol is verzonden
echo "<head><link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\"></head>";
echo "<BR>Uw contact bericht is succesvol verzonden!<BR>";
echo "Wij streven ernaar zo snel mogelijk reactie te geven.<BR><BR>";
echo "Met vriendelijke groeten,<BR>";
echo "<B>".$wm_naam."</B>";
// cookie zetten tegen spam
setcookie("mailformulier",1,time()+($Anti_Spam*60));
// formulier wordt niet weer getoond
$Formulier = TRUE;
header("refresh:6;url=".$site."");
}
}
}
else {
$Formulier = FALSE;
echo "<html><head><link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\" /></head><body>";
echo "<center><h2> Spam Beveiliging </h2><br />";
echo "U kunt maar eens in de $Anti_Spam minuten een e-mail versturen!</center></body></html>";
header("refresh:3;url=".$site."");
}
if(!isset($Formulier))
{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<link href="style.css" rel="stylesheet" type="text/css" />
<title>Contact Formulier</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<table class="tabel" border="1" cellpadding="5" cellspacing="0" width="300" style="border-collapse: collapse">
<tr><td><br />
<form method="post" action="<? echo $PHP_SELF; ?>">
<table>
<tr><td> </td><td> </td></tr>
<tr><td class="<? echo $fout_text_naam; ?>">Naam:</td><td><input type="text" class="<? echo $fout_vakje_naam; ?>" id="naam" name="naam" maxlength="30" value="<? echo $naam; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_email; ?>">Email:</td><td><input type="text" class="<? echo $fout_vakje_email; ?>" id="email" name="email" maxlength="40" value="<? echo $email; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_functie; ?>">Functie:</td><td><input type="text" class="<? echo $fout_vakje_functie; ?>" id="functie" name="functie" maxlength="40" value="<? echo $functie; ?>" /></td></tr>
<tr><td class="<? echo $fout_text_onderwerp; ?>">Onderwerp:</td><td><input type="text" class="<? echo $fout_vakje_onderwerp; ?>" id="onderwerp" name="onderwerp" maxlength="70" value="<? echo $onderwerp; ?>" /></td></tr>
<tr><td valign="top" class="<? echo $fout_text_bericht; ?>">Bericht:</td><td><textarea id="bericht" name="bericht" class="<? echo $fout_vakje_bericht; ?>" cols="68" rows="10"><? echo $bericht; ?></textarea></td></tr>
<tr><td><input class="input" type="text" name="norobot"> </td>
<td><img src="captcha.php"></td></tr>
<tr><td></td><td><input type="submit" id="verzenden" name="verzenden" value="Verzenden" /><input type="reset" id="wis" name="wis" value="Wis velden" />
</td></tr>
</table>
</form>
</td></tr>
</table>
</body>
</html>
<?
}
?>
Ik weet mij geen raad meer en hoop dan ook dat iemand mij hiermee kan en wilt helpen!! Alvast heel erg bedankt, zou blij zijn als het is verholpen!
Groet,
Justin