Bonjour,
Depuis quelques temps un petit malin s'amuse avec le formulaire d'inscription à la newsletter d'un site dont je m'occupe. N'étant pas un expert en php (j'utilise la fonction mail pour recevoir les inscriptions), j'ai cherché à sécuriser un minimum le formulaire.
Voici son code avec le php qui traite les variables générées :
<form action="sommaire.php3" method="post" name="news" OnSubmit="return(VerifForm(this))">
<b>NEWSLETTER</b>, les nouvelles par mail. Je m'inscris :
<input type="text" name="monmail" size="17" maxlength="50" value="Votre e-mail" onclick="this.value=''">
<INPUT name="choix" type="radio" value="oui">
Oui
<INPUT name="choix" type="radio" value="non">
Non
<input name="bouton" type="submit" value="envoyer">
</form>
<?php //Envoi newsletter
if (!empty($_POST['choix']) && !empty($_POST['monmail'])) {
$email2="webmaster@mondomaine.com";
$headers="From: ".$_POST['monmail'];
$titre="NEWSLETTER : ".$_POST['choix'];
$message="Demande pour la newsletter :\n";
$message.="- Choix : ".$_POST['choix']."\n" ;
$message.="- Adresse email : ".$_POST['monmail']."\n";
$message.="\n - Message envoyé par le site http://www.mondomaine.com -\n";
mail($email2,$titre,$message,$headers);
echo "<font color='#FF0000'><b> -> envoyé !</b></font>";
}
?>
J'utilise $_POST comme il est recommandé, pour ne pouvoir récupérer que les variables générées par le formulaire, et bien que mon hébergeur ait laissé les variables globales à ON.
En oubliant la vérification de l'adresse mail via javascript, je devrais recevoir que "oui" ou "non pour la variable "choix". Or, le petit malin arrive à mettre un peu ce qu'il veut dans ces variables, ainsi qu'à faire du bcc vers une adresse aol. C'est pas bien méchant mais j'aime pas trop ça.
Des idées pour blinder tout ça ?