hfoppen
Terugkerende gebruiker
- Lid geworden
- 15 nov 2000
- Berichten
- 1.056
Hoi,
ik heb een contactformulier (zie onderstaand), en vandaar worden vaak spamberichten verstuurd (via zo'n bot). Vaak zijn dit berichten met links etc. erin. Heb dit ook vaak bij gastenboeken.
Ik weet dat je zo'n capcha kunt gebruiken, maar krijg ik niet echt voor elkaar. Je moet ook iets kunnen doen, dat je geen HTML-code accepteert in een bericht ofzo. Wie o wie kan onderstaande voor mij wijzigen dat het vermindert? Alvast bedankt..
contact.php:
En de resultaat.php:
ik heb een contactformulier (zie onderstaand), en vandaar worden vaak spamberichten verstuurd (via zo'n bot). Vaak zijn dit berichten met links etc. erin. Heb dit ook vaak bij gastenboeken.
Ik weet dat je zo'n capcha kunt gebruiken, maar krijg ik niet echt voor elkaar. Je moet ook iets kunnen doen, dat je geen HTML-code accepteert in een bericht ofzo. Wie o wie kan onderstaande voor mij wijzigen dat het vermindert? Alvast bedankt..
contact.php:
PHP:
<table><form action="resultaat.php" method="post"><input type="hidden" value="1" name="send">
<tr>
<td><span class="style1">Uw naam:</span></td>
<td><input name="naam" type="text" class="style1" size="20"></td>
</tr>
<tr>
<td><span class="style1">Uw mail adres:</span></td>
<td><input name="email" type="text" class="style1" size="20"></td>
</tr>
<tr>
<td valign="top"><span class="style1">Uw bericht:</span></td>
<td><textarea name="bericht" cols="60" rows="10" class="style1"></textarea></td>
</tr>
<tr>
<td></td>
<td>
<input name="submit" type="submit" value="Verzenden">
<input type="reset" name="Reset" value="Annuleren">
</td>
</tr>
</form>
</table>
En de resultaat.php:
PHP:
<?php
//stukje code om ingevoerde velden te lezen, controleren en te verzenden
if($submit){
if(strlen($naam)==0){
$error_msg[] = "U moet een geldige naam opgeven!<br>";
}
if((strlen($naam)!=0) && (strlen($naam) < 3)){
$error_msg[] .= "U naam moet minimaal uit 3 tekens bestaan!<br>";
}
if(strlen($email)==0){
$error_msg[] .= "Vul alstublief een geldig e-mail adres in!<br>";
}
if((strlen($email)!=0) && (!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $email))){ // email moet geldige constructie hebben, bv ali.g@test.nl
$error_msg[] .= "E-mail adres is ongeldig, vul dit correct in!<br>";
}
if(strlen($bericht)==0){
$error_msg[] .= "Vul een bericht in!<br>";
}
if((strlen($bericht)!=0) && (strlen($bericht) < 5)){
$error_msg[] .= "Het bericht moet minimaal uit 5 tekens bestaan!<br>";
}
if($error_msg){ // als dingen niet correct zijn ingevult
echo "<font face=verdana size=1>";
echo "Uw bericht kon niet verzonden worden vanwege de volgende redenen: <br><br>";
for($i = 0, $j = 1; $i < 4; $i++, $j++){
if($error_msg[$i]){
echo $j . ". " . $error_msg[$i];
}
}
echo "<br>Ga <a href=javascript:history.go(-1)>terug</a> om het probleem te verhelpen.";
echo "</font>";
}else{
$mail = "info@domein.nl";
$onderwerp = "Reactie vanaf domein.nl";
$header = "From: " . $email . "\n";
$body = "Datum van verzending: " . date("d-m-Y") . " om " . date("H:i:s") . ".\n";
$body .= "De volgende informatie werd verzonden:\n\n";
$body .= "Naam: " . $naam . "\n";
$body .= "E-mailaddress: " . $email . "\n\n";
$body .= "Vraag:\n";
$body .= $bericht ;
$Naam="Naam : $naam\n";
$Email="E-mail : $email\n";
mail($mail, $onderwerp, $body, $header);
// Formulier uitgevoerd, mensen bedanken
echo "Bedankt voor uw reactie. ";
?>
<meta http-equiv="refresh" content="3;URL=index.php">
<?
}}
//einde van pagina!!
?>