Créer un formulaire pour envoi par mail

smog

Membre actif
17 Août 2005
717
93
50
Bonjour à tous,

Je suis en train de monter un petit site à partir de Dreamweaver 8.
Il sera hébergé chez amen.fr

Je souhaite mettre une page permettant de m'envoyer un message (questions éventuelles), sans faire apparaître mon adresse mail, histoire d'éviter les robots spameux.

En gros, trois champs : nom (prénom), adresse mail pour réponse, puis intitulé et contenu de la question.
Je souhaiterais que tout ceci arrive dans ma BAL "traditionnelle".

Je sais que l'on peut faire ça avec du javascript (j'avais acheté un bouquin là-dessus), mais ça fait quelques années que je ne suis plus trop dans le coup concernant la réalisation de sites, et je pense que depuis ça a bien évolué. J'ai vu parler ici, en recherchant, de PHP, CGI etc., mais je n'y connais (presque) rien.

Aussi voici ma question : qu'est-ce qui est le plus adapté pour ce type de communication "simple", sans trop de risques de voir mon adresse courir sur le web (si j'ai bien compris, le "mailto:" est contre-indiqué) ?

Pour du PHP, y-a-t-il un site assez accessible pour comprendre ce que ça veut dire et surtout comment mettre ça en œuvre assez simplement ?

Merci pour votre aide.
 
Salut,

Je n'ai pas de site à te conseiller, mais c'est vraiment simple, tu trouveras sur Google.
Je te conseille d'utiliser PHP (CGI c'est moins agréable et moins documenté).

En gros tu fais ton formulaire HTML avec tes trois champs, c'est très facile avec Dreamweaver. Tu as donc un fichier index.html, ou quelque chose comme ça, avec ton formulaire dedans.
Tu mets la balise FORM comme suit :

Bloc de code:
<FORM action="traitement.php" method="post">
... Les trois champs de ton formulaire plus le bouton submit ... 
Pense bien à mettre l'attribut name (et id si nécessaire en fonction du champ)
</FORM>

Il faut aussi que tu fasses un fichier traitement.php. Ce fichier va être appelé lorsque l'utilisateur cliquera sur le bouton submit.
Dans ce fichier, tu te contentes de récupérer le contenu des champs du formulaire, et au choix de :
- T'envoyer les données par e-mail (à voir si la fonction mail est activée chez ton hebergeur).
- Sauvegarder les données dans une base de données (MySQL par exemple) (à voir si tu peux faire ça avec ton hébergeur).
- Sauvegarder les données dans un fichier texte que tu pourras consulter ensuite.

Pour récupérer le contenu des champs de formulaire qui a été envoyé à traitement.php en POST, tu peux utiliser ça :
Bloc de code:
$_POST[name du champ]


JavaScript t'es inutile pour ton programme, à moins que tu veuilles vérifier le contenu des champs pendant que l'utilisateur complète les champs. Si tel est le cas, pense à vérifier la même chose avec PHP, car si l'utilisateur désactive JavaScript aucune vérification ne pourra être faite.


Voilà, je te conseille de trouver un site qui t'expliquera les détails, et plus particulièrement comment protéger ton site (en évitant que l'utilisateur mette n'importe quoi dans les champs, et que tu te retrouves gros jean comme devant).

Oui les mailto et autres adresses écrites en clair sont déconseillés, car n'importe quel robot pourra trouver ton adresse et te spamer. Au pire tu mets une image avec ton adresse dedans, ou tu mets :
nom [at] gmail.com
Et le visiteur se démerdera pour retrouver l'adresse.
Ou sinon tu te fais chier à faire ton programme PHP.

Si t'as besoin d'aide n'hésites pas.
 
Il y a aussi une chose à prendre en compte quand on met un formulaire sur le web : les robots spammeurs. Il faut absolument les empêcher de poster. Pour ça j'ai utilisé le captcha de ploum (dédié au départ à dotclear 1.2x), c'est très facile à adapter à n'importe quelle situation et c'est imparable : je l'ai utilisé personnellement sur le livre d'or du site d'une amie et plus aucun spam n'est passé depuis. :)

L'avantage de cette solution par rapport à d'autres basée sur un code en image à retaper c'est que c'est accessible à tous (mêmes les personnes aveugles) et qu'on ne fait pas ch.. le visiteur. ;)
 
Moi j'aime bien la solution du blog de MacGé, qui consiste à proposer une opération simple à l'utilisateur ^^.
 
Moi j'aime bien la solution du blog de MacGé, qui consiste à proposer une opération simple à l'utilisateur ^^.

Oui mais avec la méthode de Ploum, l'utilisateur ne doit rien faire : c'est invisible. Regarde le formulaire pour poster un commentaire sur son site, pas de captcha visible. ;)
 
Merci beaucoup à vous deux, c'est déjà bien plus clair. Je vais chercher à en savoir plus sur PHP, et comment ça se met en œuvre. Ca me paraît un peu hardu mais comme ça, j'aurai appris plein de trucs (si ça marche au final !).

Dr_cube, je n'hésiterai pas à te re-solliciter, merci mille fois !
 
Salut !

Si si ! Tu peux faire un mailto. Il suffit de découper l'adresse par un script pour qu'elle ne soit pas "aspirable" par les robots spammeurs. La solution que j'ai utilisée est une bidouille à partir d'un script déniché sur le net (fonctionne avec les version windows de Firefox 2, IE 6 et Safari 3).


Le script à placer dans le head :
<script language="javascript">
<!--
function mailpage()
{
chaine_mail = "mailto:nom.prenom" + "@mail.fr?";
chaine_mail += "subject=sujet du mail" ;
chaine_mail += "&body=le corps du mail" ; location.href = chaine_mail;
}
-->
</script>


Le mailto à placer dans le body :
<a href="javascript:mailpage()" title="si tu veux m'&eacute;crire" class="mailto" style="text-decoration:none">du texte</a>



Et bien entendu, tu remplaces "nom.prenom" par ton login, "mail.fr" par ton fournisseur de messagerie et tu remplis "subject" et "body". Dans le "<a>", tu peux changer la couleur, le texte, la taille, la typo...
 
Merci beaucoup, je vais voir ça aussi... Je n'en suis encore qu'aux débuts de mon site, mais j'arrive bientôt à cette page de formulaire !

Par ailleurs, j'ai juste déposé la page d'accueil sur le serveur distant (chez AMEN, donc). je trouve que l'accès, ensuite, depuis Safari comme Firefox, est très long. Le chargement met des plombes, alors qu'il n' y a presque rien encore (environ 10 objets simples : images, boutons, pour une quinzaine de Ko...)

Dois-je m'en inquiéter ? est-ce "normal" au début, chez un fournisseur de nom de domaine + espace disque ? Est-ce lié au fait que la solution "basique" que j'ai choisie est la moins chère (ce qui me paraîtrait un peu gros, mais bon...) ? Dois-je leur signaler ?

Pour info, voici le lien :

http://www.mogenierjanot.fr
 
Erf :mouais:

Le code est affreux, tu devrais arrêter Dreamweaver et apprendre à coder proprement à la main.

La mise en page est faite avec un tableau, c'est horriblement vieux et mauvais comme façon de faire, et en plus les liens de ton menu son des images sans attribut alt, ce qui fait que quelqu'un avec un lecteur d'écran ou un robot de moteur de recherche ne pourra pas naviguer sur ton site (ou très très mal).

En gros il y a pas mal de chose à refaire.


Quand à la lenteur de chargement, c'est bien dû à ton hébergement vu que ta page est plutôt légère, mais l'accès au serveur est assez long apparemment. Mais ce n'est pas forcément en rapport avec le fait que tu ai pris l'offre la moins cher. :)
 
Euh...

J'entends bien (les alt des menus ne sont pas encore faits, en fait j'apprends Dreamweaver en même temps que je fais mon site...). D'ailleurs il n'y a pas de liens dans mes menus...

J'aimerais avoir le temps de coder "à la main", je ne l'aurai pas.

Ok, les tableaux c'est has-been, mais c'est ce qu'ils font dans leur tutoriel (c'est pas la dernière version, c'est sûr !).

C'est quoi qui est mieux que les tableaux pour avoir un truc "au milieu de la page" ?
 
Que de nostalgie ! J'ai l'impression de revoir mon premier site ! On retrouve les tableaux pour la présentation et le JS pour les rollover ! C'est exactement comme ça que je faisais il y a 8 ans ^^.

Les choses ont évoluées maintenant ^^. Tout ce que tu as fait peut se faire sans tableaux et sans JavaScript. Pour les tableaux c'est pas trop grave, mais le JavaScript c'est certainement plus chiant à gérer qu'une bonne CSS, ne serait-ce que pour tes boutons/liens.

En tout cas j'ai vraiment l'impression de déterrer une relique ancienne, de plonger dans un passé lointain en voyant cette source.

Contrairement à p4bl0 je pense que tu peux continuer Dreamweaver, mais apprendre à te passer de l'aperçu, et tout faire dans le code. Dreamweaver est bon pour l'autocomplétion, les onglets etc. De même pour les ALT sur les images : on s'en fout quand on débute. Et tout dépend de l'objectif du site. Je ne pense pas que ce soit le plus important à apprendre au début, même si c'est bien de prendre de bonnes habitudes ^^. Surtout que c'est un truc très simple. Mais disons que ce n'est pas la chose la plus grave qu'on trouve dans cette source ^^.

Pour la lenteur de chargement, ça vient certainement de ton hébergeur. C'est assez inquiétant parce que c'est déjà lent alors qu'il y a presque rien sur la page.
 
Arrêtez un peu d'arceler tous les débutants pour leur dire que leur site est mal codé ou que les éditeurs wysiwyg sont pas bien. Tout le monde a pas envie d'en faire son métier. C'est son problème s'il y a des tableaux, ça va pas empêcher la terre de tourner.
 
Bon, c'est très intéressant tout ça, et je suis conscient de ne pas faire un site "dernier cri", et je suis aussi "embêté" que vous si Dreamweaver génère du code de m****. Je ne lui ai pas demandé de "ne pas mettre de Javascript", je ne sais pas où on paramètre ce genre de chose dans le logiciel:D.
J'apprécie aussi l'ironie... Quand elle n'est pas à la limite de l'humiliation. Mais bon, encore une fois, je vous remercie pour votre aide, je vais essayer de comprendre un peu mieux ce que c'est que CSS, parce que pour quelqu'un qui n'a pas d'expérience, reconnaissez que c'est un peu abrupt.
Merci Lugdanum, je n'y comprends pas grand chose mais je vais essayer.

Bonne journée à tous !

Smog, débutant et désolé de ne pas être à la page (mais qui fait l'effort de progresser en venant ici poster).
 
Désolé je ne voulais pas t'humilier en critiquant ton site. Je remarquais juste qu'on avait commencé de la même manière, et ça me faisait bizarre de revoir un site que j'aurais pu faire à mes débuts. Il n'y avait pas de jugement de valeur derrière mon message.
Je n'ai rien contre les gens qui utilisent des tableaux à la place des div, ou du JS à la place du CSS. Même si ce n'est pas à la mode, ça reste parfaitement correct. Je n'ai rien non plus contre les gens qui utilisent des éditeurs WYSIWYG comme Dreamweaver pour créer leur site.
Je le redis : je ne voulais pas me moquer de toi.
 
Dr_Cube -> aucun soucis !

Bon, je me lance dans les tutos même si je n'aurai pas assez de temps... Tant pis, je ne dormirai plus...

Je commence à comprendre l'esprit du CSS, mais une chose m'échappe (ce qui est normal, je n'en suis qu'au début !) : les roll-overs sont faits sur le même principe que javascript, c'est-à-dire deux images ON et OFF, mais gérées "dans" le CSS ? c'est ça ?
J'ai vu essentiellement des menus dynamiques "made in CSS" faits à partir de texte, pas à partir d'images... D'où ma question...
 
il y a deux possibilités :

  1. Si ton texte est bien du texte html et c'est juste l'image de fond qui change, tu peux utiliser uniquement les css. Ne pas oublier de donner quand même une couleur de fond au cas où les images seraient désactivées et ne pas se retrouver, par exemple, avec des lettres blanches sur fond blanc. (un autre tuto)
  2. Si tu veux utiliser une police exotique avec plein d'effet photoshop et là, il n'y a pas le choix, c'est tout en image avec un rollover javascript.