spam regel in contact form!

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Xander P

Xander P

17/06/2013 14:37:00
Quote Anchor link
Hallo,

Ik ben nog niet zo lang bezig met PHP, maar nu toch weer een klein probleempje.
Ik krijg spam binnen via het contact formulier.

Weet iemand een codering om spam tegen te gaan die ik in de php kan zetten?
Bijvoorbeeld zo'n controlevraag als "typ getal 19 in letters?"

Ik heb ernaar gezocht, maar veel coderingen herken ik nog niet goed!

Alvast bedankt!

mvg, Xander

Hieronder staat mijn huidige codering:

Codering in contact.html
<form method="POST" action="sendmail.php">
Uw naam: <BR><input name="Naam" type="text" size="40"><br /><BR>
Uw e-mail adres: <BR><input name="E-mail" type="text" size="40"><br /><BR>
Bericht: <BR><textarea name="Bericht" cols="40" rows="4"></textarea><P>
<input type="submit" VALUE="Verstuur">
</form>

Codering in sendmail.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php

$to
      = "[email protected]";      // De e-mail zal naar dit adres worden verstuurd
$subject = 'Onderwerp';                  // Het onderwerp van de e-mail
$from    = '[email protected]';       // De afzender van de e-mail
$url     = 'bedankt.html';               // Na het versturen van het formulier wordt de                                    
                    // bezoeker naar deze URL doorgestuurd                    


$message = 'Formulier van de website\n';
$message = '------------------------\n';  

foreach ($_POST as $key => $val)
{
             
    $message .= "$key = $val\n";
}
  

mail($to, $subject, $message, "From: $from");

header("Location: $url");  

?>
 
PHP hulp

PHP hulp

07/12/2024 06:57:06
 
Chris PHP

Chris PHP

17/06/2013 14:43:01
Quote Anchor link
Ik denk dat je Captcha bedoeld.
Gewijzigd op 17/06/2013 14:43:17 door Chris PHP
 
Xander P

Xander P

17/06/2013 14:49:26
Quote Anchor link
Volgens mij niet, het is meer een soort beveiligingsvraag!

Er staat dan: Vul het getal achttien in:
Dit moet je dan intypen
 
- Ariën  -
Beheerder

- Ariën -

17/06/2013 14:53:38
Quote Anchor link
Dat houdt niet alle botjes tegen. Kom dan met een effectievere vraag, die mensen heel makkelijk kunnen benantwoorden.

Als je dit wel wilt, je kan een array aanmaken:
$array[1] = "Eén"
$array[2] = "Twee"

Dan kan je met simpel rekenwerk wel wat brouwen....
 
Xander P

Xander P

17/06/2013 15:29:25
Quote Anchor link
Je bedoelt een vraag zoals: Wat is de kleur van gras?
Dat is wel effectiever! Je moet het dan wel geregeld es aanpassen, denk ik!

Hoe kan ik dit in mijn sendmail.php verwerken?
 
Arjan hazewinkel

arjan hazewinkel

17/06/2013 16:36:54
Quote Anchor link
Of gewoon meerdere vragen/andwoorden maken dat je elke keer een random vraagt krijgt.
 
Kris Peeters

Kris Peeters

17/06/2013 16:47:20
Quote Anchor link
Het zal nog plezant worden.
Probeer maar eens vragen te bedenken waarop iedereen het zelfde antwoord geeft.

Zorg dat sowieso de antwoorden kort zijn; niet letten op hoofdletters; antwoorden zonder speciale tekens; best antwoorden in 1 woord...

Zie dat bv. een Nederlander en een Vlaming het zelfde antwoord zou geven. Dat kan wel eens verrassen.
 
Koen Hollander

Koen Hollander

17/06/2013 16:56:04
Quote Anchor link
Als ik zelf een captcha maak dan zal ik hem denk ik zo maken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$c
= rand(1,10);
$_SESSION['c'] = $c;
?>

<p>Vul het volgende nummer in: <?php echo $c; ?></p>
<input type="text" name="cap">


Zoals je ziet heb zet ik de rand in een sessie zodat de andere pagina hem blijft onthouden. (Voorkomt een postregeltje extra)

Op de volgende pagina controleer je dat dan aan de hand van de opgeslagen sessie
 
- Ariën  -
Beheerder

- Ariën -

17/06/2013 17:13:43
Quote Anchor link
Je weet dat botjes gegeven plain text direct kunnen gebruiken? Ik geef deze beveiliging weinig kans...
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.