Probleme envoi mail php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme envoi mail php

Re: Probleme envoi mail php

par emile » 25 mars 2015, 11:32

bonjour,

les champs ne correspondent pas dans le fichier php avec les labels du formulaire

un exemple
$name = @trim(stripslashes($_POST['nom']));
$email = @trim(stripslashes($_POST['email']));
$subject = @trim(stripslashes($_POST['sujet']));
$message = @trim(stripslashes($_POST['message']));

$email_from = $email;
$email_to = '[email protected]';//replace with your email

$body = 'Nom: ' . $name . "\n\n" . 'Email: ' . $email . "\n\n" . 'Sujet: ' . $subject . "\n\n" . 'Message: ' . $message;

Re: Probleme envoi mail php

par Elie » 22 janv. 2015, 11:31

Bonjour,

le @ avant trim masque l'erreur genérée si il y en a une.
Donc ca se trouve tu as une erreur très explicite qui est cachée.

Le plus simple donc est de retiré le @ déjà
Et de faire un
<?php print_r($_POST); ?>
pour voir si tes variables sont bien passées.

PS : Je cherche un graphiste pour des projets !

Probleme envoi mail php

par YomghY » 21 janv. 2015, 15:17

Bonjour

Sur mon site j'aimerai faire un envoi de mail par formulaire. Lorsque je teste l'envoi je reçois bien un mail mais il ne contient aucune information tapée dans le formulaire.

Mon code html est le suivant
<form id="main-contact-form" class="contact-form" name="contact-form" method="post" action="sendemail.php" role="form">
                    <div class="row">
                        <div class="col-sm-5">
                            <div class="form-group">
                                <input type="text" id="name" name="name" class="form-control" required placeholder="Prénom Nom">
                            </div>
                            <div class="form-group">
                                <input type="text" id="subject" name="subject" class="form-control" required placeholder="Objet">
                            </div>
                            <div class="form-group">
                                <input type="text" id="email" name="email" class="form-control" required placeholder="Adresse Email">
                            </div>
                            <div class="form-group">
                                <button type="submit" class="btn btn-primary btn-lg">Envoyer</button>
                            </div>
                        </div>
                        <div class="col-sm-7">
                            <textarea name="message" id="message" required class="form-control" rows="8" placeholder="Message"></textarea>
                        </div>
                    </div>
                </form>
et mon fichier php est le suivant
<?php
    header('Content-type: application/json');
    $status = array(
        'type'=>'success',
        'message'=>'Email envoyé !'
    );
 
    $name = @trim(stripslashes($_POST['name']));
    $email = @trim(stripslashes($_POST['email']));
    $subject = @trim(stripslashes($_POST['subject']));
    $message = @trim(stripslashes($_POST['message']));
 
    $copy = 'yes';
    $email_from = $email;
    $email_to = '[email protected]';
 
    $body = 'Name: ' . $name . "\n\n" . 'Email: ' . $email . "\n\n" . 'Subject: ' . $subject . "\n\n" . 'Message: ' . $message;
 
    $success = @mail($email_to, $subject, $body, 'From: <'.$email_from.'>');
 
    echo json_encode($status);
    die;
     
?>
le $status fonctionne correctement mais le mail que je reçois contient seulement

Name:

Email:

Subject:

Message:

Est ce que quelqu'un aurait une idée pour résoudre mon problème ?

Merci :)