Hallo,
Ik heb een hele tijd een formulier lopen op mijn site. Dit werkte perfect totdat ik er een captcha script tussen zette.
Ik werk in Dreamweaver MX
Wanneer iets niet is ingevuld geeft hij dat aan, wanneer ik een goede code invoer verzend hij de mail inclusief alle ingevulde velden. Wanneer ik een foute code invoer geeft hij wel een melding dat ik de code fout heb ingevoerd maar hij verzend toch de mail.
Ik denk dat het in de "aanvraag.php" zit maar ik zie het niet.. Ik heb write.php met een include in aanvraag.php gezet. Sindsdien doet hij vreemd.
Het aanvraag script:
<?php
include ('write.php');
/* Subject and Email Variables */
$emailSubject = 'Aanvraag proef PDF';
$webMaster = 'mark.liebregts@gmail.com';
/* Gathering Data Variables */
$kaartField = $_POST['kaart'];
$naamField = $_POST['naam'];
$adresField = $_POST['adres'];
$postcodeField = $_POST['postcode'];
$woonplaatsField = $_POST['woonplaats'];
$telnoField = $_POST['telno'];
$emailField = $_POST['email'];
$uitgerekendField = $_POST['uitgerekend'];
$naamkidsField = $_POST['naamkids'];
$geslachtField = $_POST['geslacht'];
$trouwdatumField = $_POST['trouwdatum'];
$tekstField = $_POST['tekst'];
$gevondenField = $_POST['gevonden'];
$body = <<<EOD
<br><hr><br>
Aangevraagd kaartje: $kaartField <br>
Naam: $naamField <br>
Adres: $adresField <br>
Postcode: $postcodeField <br>
Woonplaats: $woonplaatsField <br>
Telefoonnummer: $telnoField <br>
Email: $emailField <br>
Uitrekendatum: $uitgerekendField <br>
Naam kind: $naamkidsField <br>
Geslacht: $geslachtField <br>
Datum trouwen/adoptie/geboorte: $trouwdatumField <br>
Tekst: $tekstField <br>
Naam gevonden: $gevondenField <br>
EOD;
$headers = "From: $emailField\r\n";
$headers .= "Content-type: text/html\r\n";
$success = mail ($webMaster, $emailSubject, $body, $headers);
Het write script:
<?php
session_start();
if (md5($_POST['norobot']) == $_SESSION['randomnr2'])
{ // plaats hier php code voor geslaagde captcha
echo "U hebt een goede code ingevoerd. hartelijk bedankt voor uw aanvraag.<br />U ontvangt uw proefdruk binnen 48 uur in uw mailbox.
";
}
else
{ // plaats hier php code voor gefaalde captcha
echo "U hebt een foutieve code ingevoerd, probeer het opnieuw.";
}
?>
De captcha code, wellicht overbodig:
<?php
// het random nr. aanmaken en gecodeerd opslaan in php sessie
session_start();
$randomnr = rand(1000, 9999);
$_SESSION['randomnr2'] = md5($randomnr);
// captcha plaatje met nummer maken - afmetingen kun je aanpassen gebruikte font
$im = imagecreatetruecolor(100, 38);
// Kleurenbepaling
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
// zwarte rechthoek tekenen - afmetingen kun je aanpassen aan verschillende fonts
imagefilledrectangle($im, 0, 0, 200, 35, $black);
// hier - font.ttf' vervangen met de locatie van je eigen font bestand
$font = 'Aladdin Regular.ttf';
// schaduw toevoegen
imagettftext($im, 30, 0, 22, 24, $grey, $font, $randomnr);
// randomnr. toevoegen
imagettftext($im, 30, 0, 15, 26, $white, $font, $randomnr);
// voorkomen dat afbeelding ge-cached wordt
header("Expires: Wed, 1 Jan 1997 00: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");
// plaatje verzenden naar browser
header ("Content-type: image/gif");
imagegif($im);
imagedestroy($im);
?>
Ik hoop dat er iemand is die weet hoe ik dit kan oplossen. Ik kom er niet uit en ik ben er al even mee bezig..
Alvast bedankt.
Ik heb een hele tijd een formulier lopen op mijn site. Dit werkte perfect totdat ik er een captcha script tussen zette.
Ik werk in Dreamweaver MX
Wanneer iets niet is ingevuld geeft hij dat aan, wanneer ik een goede code invoer verzend hij de mail inclusief alle ingevulde velden. Wanneer ik een foute code invoer geeft hij wel een melding dat ik de code fout heb ingevoerd maar hij verzend toch de mail.
Ik denk dat het in de "aanvraag.php" zit maar ik zie het niet.. Ik heb write.php met een include in aanvraag.php gezet. Sindsdien doet hij vreemd.
Het aanvraag script:
<?php
include ('write.php');
/* Subject and Email Variables */
$emailSubject = 'Aanvraag proef PDF';
$webMaster = 'mark.liebregts@gmail.com';
/* Gathering Data Variables */
$kaartField = $_POST['kaart'];
$naamField = $_POST['naam'];
$adresField = $_POST['adres'];
$postcodeField = $_POST['postcode'];
$woonplaatsField = $_POST['woonplaats'];
$telnoField = $_POST['telno'];
$emailField = $_POST['email'];
$uitgerekendField = $_POST['uitgerekend'];
$naamkidsField = $_POST['naamkids'];
$geslachtField = $_POST['geslacht'];
$trouwdatumField = $_POST['trouwdatum'];
$tekstField = $_POST['tekst'];
$gevondenField = $_POST['gevonden'];
$body = <<<EOD
<br><hr><br>
Aangevraagd kaartje: $kaartField <br>
Naam: $naamField <br>
Adres: $adresField <br>
Postcode: $postcodeField <br>
Woonplaats: $woonplaatsField <br>
Telefoonnummer: $telnoField <br>
Email: $emailField <br>
Uitrekendatum: $uitgerekendField <br>
Naam kind: $naamkidsField <br>
Geslacht: $geslachtField <br>
Datum trouwen/adoptie/geboorte: $trouwdatumField <br>
Tekst: $tekstField <br>
Naam gevonden: $gevondenField <br>
EOD;
$headers = "From: $emailField\r\n";
$headers .= "Content-type: text/html\r\n";
$success = mail ($webMaster, $emailSubject, $body, $headers);
Het write script:
<?php
session_start();
if (md5($_POST['norobot']) == $_SESSION['randomnr2'])
{ // plaats hier php code voor geslaagde captcha
echo "U hebt een goede code ingevoerd. hartelijk bedankt voor uw aanvraag.<br />U ontvangt uw proefdruk binnen 48 uur in uw mailbox.
";
}
else
{ // plaats hier php code voor gefaalde captcha
echo "U hebt een foutieve code ingevoerd, probeer het opnieuw.";
}
?>
De captcha code, wellicht overbodig:
<?php
// het random nr. aanmaken en gecodeerd opslaan in php sessie
session_start();
$randomnr = rand(1000, 9999);
$_SESSION['randomnr2'] = md5($randomnr);
// captcha plaatje met nummer maken - afmetingen kun je aanpassen gebruikte font
$im = imagecreatetruecolor(100, 38);
// Kleurenbepaling
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
// zwarte rechthoek tekenen - afmetingen kun je aanpassen aan verschillende fonts
imagefilledrectangle($im, 0, 0, 200, 35, $black);
// hier - font.ttf' vervangen met de locatie van je eigen font bestand
$font = 'Aladdin Regular.ttf';
// schaduw toevoegen
imagettftext($im, 30, 0, 22, 24, $grey, $font, $randomnr);
// randomnr. toevoegen
imagettftext($im, 30, 0, 15, 26, $white, $font, $randomnr);
// voorkomen dat afbeelding ge-cached wordt
header("Expires: Wed, 1 Jan 1997 00: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");
// plaatje verzenden naar browser
header ("Content-type: image/gif");
imagegif($im);
imagedestroy($im);
?>
Ik hoop dat er iemand is die weet hoe ik dit kan oplossen. Ik kom er niet uit en ik ben er al even mee bezig..
Alvast bedankt.