Envoie de mail [Résolu]

Signaler
-
Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021
-
Bonjour,

J'ai un site avec un formulaire de contact et j'aimerai que quand la personne ai renseignée ses données et qu'elle appuie sur le bouton envoyer, que ses données soient envoyées directement sur une adresse mail sans ouvrir l'adresse mail de l'expéditeur.

Voici mon code html de mon formulaire de contact :

<[https://www.commentcamarche.net/contents/242-introduction-au-dynamic-html-dhtml div] class="col-md-9 mb-md-0 mb-5">
            <form id="contact-form" name="contact-form" method="POST">
              
                <!--Grid row-->
                <div class="row">

                    <!--Grid column-->
                    <div class="col-md-6">
                        <div class="md-form mb-0">
                            <input type=$text id="name" name="name" class="form-control">
                            <label for=$name class="" style="color: #FFFF">Votre nom</label>
                        </div>
                    </div>
                    <!--Grid column-->

                    <!--Grid column-->
                    <div class="col-md-6">
                        <div class="md-form mb-0">
                            <input type=$text id="email" name="email" class="form-control">
                            <label for=$email class="" style="color: #FFFFFF">Email</label>
                        </div>
                    </div>
                    <!--Grid column-->

                </div>
                <!--Grid row-->

                <!--Grid row-->
                <div class="row">
                    <div class="col-md-12">
                        <div class="md-form mb-0">
                            <input type=$text id="subject" name="subject" class="form-control">
                            <label for=$subject class="" style="color: #FFFFFF">Sujet</label>
                        </div>
                    </div>
                </div>
                <!--Grid row-->

                <!--Grid row-->
                <div class="row">

                    <!--Grid column-->
                    <div class="col-md-12">

                        <div class="md-form">
                            <textarea type="text" id="message" name="message" rows="2" class="form-control md-textarea"></textarea>
                            <label for= $message style="color: #FFFFFF">Votre message</label>
                        </div>

                    </div>
                </div>
                <!--Grid row-->

            </form>

            <div class="text-center text-md-left">
                <a class="btn btn-primary" onclick="document.getElementById('contact-form').submit();" style="color: #FFFFFF">Envoyer 
              </a>
            <p></p>
            </div>
            <div class="status"></div>
        </div>

2 réponses

Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021
3 183
Bonjour,

Le html seul ne te le permettra pas.
Tu dois utiliser un langage "serveur" tel que du php.
Par exemple : https://www.commentcamarche.net/faq/4516-webmaster-un-formulaire-de-contact-pour-votre-site

Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021
3 183 > Antho
pour faire fonctionner du php... il faut un "serveur".
En local, tu peux en émuler un à l'aide d'un logiciel tel que laragon
https://laragon.org/download/index.html
>
Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021

je me suis mis sur un serveur ftp avec FileZilla, il faut juste que je trouve quoi mettre en php pour l'envoie à une adresse mail
Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021
3 183 > Antho
un serveur "FTP" ne sert qu'à recevoir/transmettre des fichiers.
Tu veux parler d'un hébergement web ( donc avec apache/php) ? Si oui, c'est bon... et dans ce cas là tu dois pouvoir adapter l'exemple que je t'ai donné.
<?php

$nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;
$email = !empty($_POST['email']) ? $_POST['email'] : NULL;
$subject = !empty($_POST['subject']) ? $_POST['subject'] : NULL;
$message= !empty($_POST['message']) ? $_POST['message'] : NULL;

$to = "truc@machin.com";


$body = "<br>Nom " . $name . "<br> email : ".$email . " <br>message :".$message;

mail($to,$subject,$body);

?>
<form id="contact-form" name="contact-form" method="POST" action="">
              
                <!--Grid row-->
                <div class="row">

                    <!--Grid column-->
                    <div class="col-md-6">
                        <div class="md-form mb-0">
                            <input type=$text id="name" name="name" class="form-control">
                            <label for=$name class="" style="color: #FFFF">Votre nom</label>
                        </div>
                    </div>
                    <!--Grid column-->

                    <!--Grid column-->
                    <div class="col-md-6">
                        <div class="md-form mb-0">
                            <input type=$text id="email" name="email" class="form-control">
                            <label for=$email class="" style="color: #FFFFFF">Email</label>
                        </div>
                    </div>
                    <!--Grid column-->

                </div>
                <!--Grid row-->

                <!--Grid row-->
                <div class="row">
                    <div class="col-md-12">
                        <div class="md-form mb-0">
                            <input type=$text id="subject" name="subject" class="form-control">
                            <label for=$subject class="" style="color: #FFFFFF">Sujet</label>
                        </div>
                    </div>
                </div>
                <!--Grid row-->

                <!--Grid row-->
                <div class="row">

                    <!--Grid column-->
                    <div class="col-md-12">

                        <div class="md-form">
                            <textarea type="text" id="message" name="message" rows="2" class="form-control md-textarea"></textarea>
                            <label for= $message style="color: #FFFFFF">Votre message</label>
                        </div>

                    </div>
                </div>
                <!--Grid row-->

            </form>
>
Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021

Merci !!!

Je reçois bien les mails maintenant, je ne reçois juste pas encore le nom et le sujet mais je reçois l'adresse mail et le message.

Merci beaucoup, bonne journée !
Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021
3 183 > Antho
Petite erreur
$nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;

A remplacer par
$nom = !empty($_POST['name']) ? $_POST['name'] : NULL;
Messages postés
858
Date d'inscription
dimanche 1 novembre 2015
Statut
Membre
Dernière intervention
1 janvier 2021
107
Hey,

Ou bien tu peux utiliser WAMP si tu est sous Windows,
je te conseilles très fortement de suivre un cours sur PHP et sa mise en place, ça répondra très certainement à tes questions :)
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/4237816-preparez-votre-environnement-de-travail
Messages postés
31050
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 janvier 2021
3 183
Laragon est pour windows également.
Il est plus simplet et surtout a moins de soucis que wamp.
C'est pour ça que je lui ai proposé celui là.
On aurait aussi pu lui proposer xampp ou easyphp.... mais bon
sauf que j'ai pas trop le temps de suivre des cours car il faudrait que je résoud ça avant ce soir :) mais merci beaucoup pour ta réponse !