Bonjour,
C'est mon premier post sur ce forum mais je connais ce site depuis bien longtemps, il m'a bien aidé sur pas mal de problème en html/css. Maintenant, j'ai un petit soucis en php et j'ai besoin de votre aide :
J'ai mis en place un formulaire de contact sur un site onepage. Tout fonctionne bien sauf un petit détail. Dans le formulaire, il est demandé au visiteur 4 informations : le nom, l'e-mail, le sujet du message et le message. Or, lorsque je fais mon php demandant de récupérer les 4 messages, je n'en reçois que 2 sur 4, mais si j'en demande 2 tout se passe bien. Voici le code actuel qui fonctionne :
<?php
mail('xxxxxxx@lilo.org', 'Formulaire de contact', $_POST['email'], $_POST['message']);
header('Location: index.html');

et si je fais ce code :
<?php
mail('xxxxxxx@lilo.org', 'Formulaire de contact', $_POST['email'], $_POST['message'], $_POST['name'], $_POST['subject']);
header('Location: index.html');

Il n'y a que 2 informations que je reçois par mail. A votre avis, comment je peux faire pour récupérer toutes les variables du formulaire, pas juste 2 informations?
Merci d'avance de votre aide.
Vanessa
Bonjour,
En regardant la fonction mail tu ne passes que 4 param dans cette fonction, le destinataire, le sujet, le corps du message et éventuellement une entête (expéditeur).
Donc dans ton cas ,il faut passer tout ton formulaire dans le corps du message.
En espérant t'avoir aidé.
Bonjour Manu91, Merci de ton retour rapide!
J'avoue avoir essayé cette option en vain mais étant très débutante en php, j'ai du mal écrire mon code :
<?php
$messageok = $_POST['name, email, subject, message']
mail('xxxxxxxx@lilo.org', 'Formulaire de contact', $_POST['email'], $messageok);
header('Location: index.html');

Comment fait-on pour ajouter des valeurs dans la fonction POST, visiblement, ce ne sont pas les virgules;)
Merci d'avance pour les pistes d'écriture en php.
Modifié par vanessaguedj (10 Dec 2018 - 09:40)
tu ne donnes pas bcp d'info,

le mieux aurai été de nous fournir le code du formulaire.

sinon ton tableau $messageok n'est pas bon


$messageok = [$_POST['name'], $_POST['email'], $_POST['subject'], $_POST['message']];

Modifié par biduletruck (10 Dec 2018 - 09:50)
Je ne voulais pas vous surcharger Smiley biggrin , mais, voici mon code html :
  <section id="contact" class="section-padding">
      <div class="contact-form">
        <div class="container">
          <h2 class="section-title wow flipInX" data-wow-delay="0.4s"><img src="assets/img/puceondes.gif" alt="puce"> Contact</h2>
          <div class="row contact-form-area wow fadeInUp" data-wow-delay="0.4s">
            <div class="col-md-6 col-lg-6 col-sm-12">
              <div class="contact-block">
                <h3>Vous pouvez nous envoyer un message</h3>
                <form id="contactForm"  method="POST" action="contact.php">
                  <div class="row">
                    <div class="col-md-6">
                      <div class="form-group">
                        <input type="text" class="form-control" id="inputname" name="name" placeholder="nom" required data-error="Merci d'entrer votre nom">
                        <div class="help-block with-errors"></div>
                      </div>
                    </div>
                    <div class="col-md-6">
                      <div class="form-group">
                        <input type="text" placeholder="Email" id="inputemail" class="form-control" name="email" required data-error="Merci d'entrer votre mail">
                        <div class="help-block with-errors"></div>
                      </div>
                    </div>
                     <div class="col-md-12">
                      <div class="form-group">
                        <input type="text" placeholder="Subject" id="inputesubject" name="subject" class="form-control" required data-error="Merci d'entrer votre sujet">
                        <div class="help-block with-errors"></div>
                      </div>
                    </div>
                    <div class="col-md-12">
                      <div class="form-group">
                        <textarea class="form-control" id="inputmessage" name="message" placeholder="Votre message" rows="5" data-error="Merci d'écrire votre message" required></textarea>
                        <div class="help-block with-errors"></div>
                      </div>
                      <div class="submit-button">
                        <button class="btn btn-primary" id="submit" type="submit" VALUE="Envoyer">Envoyer</button>
                        <div id="msgSubmit" class="h3 text-center hidden"></div>
                        <div class="clearfix"></div>
                      </div>
                    </div>
                  </div>
                </form>
              </div>
            </div>
Merci biduletruck, j'ai essayé le code php mais cela ne fonctionne pas, J'ai ce message qui apparaît :
Parse error: syntax error, unexpected 'email' (T_STRING), expecting ']' in C:\wamp64\www\contact.php on line 2
ok

essai ca (contact.php)et copie le resultat stp


<?php
echo '<pre>';
var_dump($_POST);
echo '</pre>;

die();

Modifié par biduletruck (10 Dec 2018 - 10:52)
Finalement, j'ai trouvé la solution, voici mon bon code si ça peut aider :
<?php
mail('xxxxxx@lilo.org', 'Formulaire de contact',  $_POST['email'] . ' ' . $_POST['message'] . ' ' . $_POST['name']. ' ' . $_POST['subject']);
header('Location: index.html');

Modifié par vanessaguedj (10 Dec 2018 - 11:16)
Bonjour,
Je suis graphiste et je veux ajouter la corde "intégrateur" à mon arc.
Je suis en galère pour mettre en place un form de contact. J'ai copié ce que j'ai vu ici mais sans résultat. Alors excusez mon amateurisme mais le site doit-il être mis en service pour que cela fonctionne, ou suffit-il de passer par MAMP (comme je fais déjà) ?
P.S.: Je ne connais rien au php, mais j'ai quand même ajouté ?> à la fin du dernier code affiché ici.