Bonjour à tous

c'est ma première participation sur ce forum et je vais passer pour un c*n mais bon, j'assume

voilà, je code vite fait en HTML-PHP-JS (je fais des trucs de base) et donc je me suis amusé à faire un mini site
j'ai notamment mis une page "webmaster" où je propose au visiteur de me joindre pour m'envoyer un commentaire sur le site

pour ça, le script regarde si une certaine variable existe
- si "non", il crée un form avec champs "nom", "email" et "message" et boutons "envoyer" et "effacer"
- si "oui", il met en forme le message du visiteur et crée un email qui m'est envoyé

en gros quoi, les détails c'est pas le problème

ensuite, petit topo rapide :
le site est hébergé chez free, quand il m'envoie un mail il utilise la boîte mail free associé au compte du site
et les mails vont à une boite hotmail

et donc là, joie, un robot a eu la bonne idée de tomber là dessus en scannant le net (chose que je pensais impossible, comme quoi on est jamais trop prudent) et utilise ce script pour me spammer
là je l'ai viré pour le moment (le script)

et donc je voulais savoir si y avait un moyen de laisser un script qui ferait les mêmes actions mais codé de façon à éviter ce genre de... désagréments
voilà, je suis preneur de toutes propositions, merci d'avance

j'vous pose le code quand même :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
if (!isset($_POST["Webmaster_submit"])) {
  echo '
  <form method="POST" name="Form" action="./Webmaster.php"  onsubmit="return VerifierFormulaire();" >
    <table align="center">
      <tr>
        <td align="left" width="50%">
          Nom :
        </td>
        <td align="left" width="50%">
          <input name="Name" type="text" />
        </td>
      </tr>
      <tr>
        <td align="left" width="50%">
          Adresse e-mail :
        </td>
        <td align="left" width="50%">
          <input name="Email" type="text" />
        </td>
      </tr>
      <tr>
        <td align="left" width="50%">
          Message :
        </td>
        <td align="left" width="50%">
          <textarea name="Message" cols="25" rows="10"></textarea>
        </td>
      </tr>
      <tr>
        <td colspan="2" align="center">
          <input name="Webmaster_submit" type="hidden" />
          <input name="Webmaster_submit" type="submit" value="Envoyer" />
          <input name="Webmaster_reset" type="reset" value="Effacer" />
        </td>
      </tr>
    </table>
  </form>';
}
else {
  $Message = stripslashes(ereg_replace("\n","<br />",$_POST["Message"]));
// Remplacement de '\n' par '<br />' pour gérer les sauts de ligne vu que le mail est envoyé en format HTML, puis on vire les anti-slash
 
  $Email = "<html><head></head><body><font color=\"red\"><b>Nom de l'expéditeur : </b></font><i>".$_POST["Name"]."</i><br /><br /><br /><font color=\"red\"><b>Adresse e-mail de l'expéditeur : </b></font><i>".$_POST["Email"]."</i><br /><br /><br /><font color=\"red\"><b>Message : </b></font><br /><br /><i>".$Message."</i></body></html>";
 
  mail("truc@hotmail.com","Site : commentaire",$Email);
 
  echo '<center>Merci pour votre message.</center>';
}