|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
Bonjour,
Je suis actuellement en train de mettre en place un formulaire de contact qui envoi un mail grâce à la méthode POST. Je n'ai aucun problèmes dans l'envoi et réception de données, cependant je suis un peu perdu au niveau de la sécurisation. Tout d'abord, est ce qu'il y a un intérêt à sécuriser un formulaire de contact vu qu'il n'y a aucun accès à une base de données ? Si oui, je suis un peu perdu avec toutes les méthodes, laquelle utilisée, htmlentities, stripslashes, strip_tags ? Et pour finir, j'ai un problème dans l'affichage du mail pour tout ce qui est accent ou caractères spéciaux, je pensais que ça se réglait avec un en-tête de ce type : Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() David GuillotChef de projet en SSII Inscription : mars 2004 Messages : 879 ![]() |
![]() Je ne peux pas répondre à toutes tes questions, mais concernant la sécurisation, il y a 2 niveaux : - Sécurisation des variables reçues : un bon htmlspecialchars te débarrassera des balises HTML (que tu ne veux probablement pas voir interprétées du côté du destinataire de l'e-mail) et des attaques XSS ; strip_tags étant à mon avis un peu extrême, et la gestion des slashs inutile dans ce contexte - Sécurisation du formulaire : elle est très importante pour éviter les envois automatisés créant du flood voire du spam sur la boîte destinataire. Tu dois donc protéger ton formulaire à l'aide, par exemple, d'un CAPTCHA (je te conseille reCaptcha, dont l'intégration est facile, qui gère l'accessibilité, et qui est plutôt efficace). Pour les problématiques d'encodage, je ne peux que te conseiller d'envoyer ton e-mail en UTF-8 (compatible avec plus de clients mail), en dehors de ça je suis assez peu compétent. Si tu ne veux pas te prendre la tête, utilise une bibliothèque comme phpmailer, qui s'occupe de tout ça
__________________
Avant de poser une question ici : ![]() Après résolution de votre question : un clic sur , un et un vote pour les personnes qui vous ont aidé |
|
10
|
|
|
#3 |
|
Membre Expert
![]() ![]() Tiger Scott Développeur Web Inscription : juin 2006 Messages : 1 248 ![]() |
si tu ne veux pas trop te prendre la tete pour la securisation de ton formulaire :
- test si les champs sont vides (surtout celui qui contient le corps du message) - utilise filter_var() (avec FILTER_VALIDATE_EMAIL) si tu ne veux pas te prendre la tete avec des regexp - si tu ne veux pas ajouter de capcha : ajoute un hidden Code html :
<input type="hidden" id="email" name="email" value="" />
=> on dira que ce sont des astuces rapides et facile a mettre en place, ce ne sont pas les meilleures. (rien ne vaut quelques bonnes lignes de codes)
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins. N'oubliez pas le Le tag resolu. Need_! |
|
|
10
|
|
|
#4 |
|
Membre Expert
![]() ![]() Demazy MbellaDéveloppeur Web Inscription : août 2010 Messages : 620 ![]() |
en complément de ce que les autre ont dit, je te conseille d'utiliser un charset avec UTF-8 ça t'évitera tous les problèmes liés aux accents et autres
![]() aussi il faut verifier le format de l'adrese email par une expression régulière il y a un exemple dans les forum de developpez.com le lien est le suivant : http://www.developpez.net/forums/d963010/webmasters-developpement-web/javascript/expression-reguliere-validation-email/ a++
__________________
Trois personnes peuvent garder un secret si deux d'entre elles sont mortes. :Benjamin FranklinL'humanité se divise en trois catégories : ceux qui ne peuvent pas bouger, ceux qui peuvent bouger, et ceux qui bougent : Benjamin FranklinLe hasard, c'est le déguisement que prend Dieu pour voyager incognito : Albert Einsteinbon je m'arrête là au risque de me faire buter
|
|
|
10
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mai 2010 Messages : 8 ![]() |
Merci pour toutes vos réponses, j'ai donc opté pour htmlspecialchars() et utf-8, tout est ok sauf les apostrophes qui sont précédés d'un antislash et les guillemets mais c'est normal.
Sinon j'avais déja fait le test sur l'adresse mail et pour voir si les champs sont bien remplis, mais pas le input hidden |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com