Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/04/2011, 12h10   #1
Invité régulier
 
Inscription : mai 2002
Messages : 13
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : mai 2002
Messages : 13
Points : 7
Points : 7
Envoyer un message via MSN à jdeheul
Par défaut problème d'envoi de mail

bonjour j'ai mis en place sur mon site web un formulaire de contact qui doit m'envoyer le formulaire par mail. je remplis le formulaire et j'envoi. le retour est le suivant: confirmation de l'envoie du mail mais pas de mail dans ma boite mail.

voici le code php

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php 
 
 
// récupération des variables
// donné un autre nom au variable pour évité les problèmes avec Register Global à ON
$formNom = $_POST['nom'];
$formPrenom = $_POST['prenom'];
$formmessage = $_POST['message'];
$formPhone = $_POST['phone'];
$formMail = $_POST['email'];
 
 
// pour éviter des erreurs de Notice dans le cas ou le champs est resté vide, on aurait pu mettre !
// $formMail = (!isset($_POST['mail']))?$_POST['mail']:'none';
// Dans le cas ou les variables sont destiné à allimenter un base de donné il faut toujours valider les valeurs pour éviter les problèmes d'injection ! cf Google
//En règle général on traite les variables avec les fonctions htmlentities, mysql_escape_string(),addslash() ...
// Dans l'exemple on va juste vérifier que le nom, le prenom et le mail soit pas vide.
if(!empty($formMail) && !empty($formPrenom) && !empty($formNom) ){
  //ok pas vide //on convertie les caractètres HTML du commentaire
  $formmessage = htmlentities($formmessage);
 
  //mise en forme du mail
  $message = "$formNom $formPrenom vous contact via votre formulaire\n\n";
  $message .= "message:\n $formmessage\n\n";
  $message .= "coord:\n $formMail $formPhone";
 
  if( mail('monadresse@mail.com','contact du site appligento.com',$message) ){
    echo 'les informations on bien &eacute;t&eacute; envoy&eacute;!';
  }
  else{
    echo 'une erreur est survenu lors de l\'envoi du message';
  }
}
  else{
    //il y a des champs vide
    echo 'merci de remplir les champs nom, prenom et mail';
}
 
?>
savez vous d'ou ca peux venir?

je vous confirme que mon site est en ligne sur internet donc je dispose d'un serveur mail.

merci d'avance
jdeheul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2011, 12h25   #2
Membre éclairé
 
Avatar de Ceddoc
 
Homme Cédric
Développeur Java / Web / .NET
Inscription : janvier 2009
Messages : 327
Détails du profil
Informations personnelles :
Nom : Homme Cédric
Âge : 23
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Java / Web / .NET
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : janvier 2009
Messages : 327
Points : 369
Points : 369
Tu as patienté combien de temps? Je suis en train de travailler avec cette fonction et des fois j'ai des mails dans l'instant et d'autres fois ils arrivent jusqu'à 20 minutes après sans que j'ai changé quoi que ce soit.

Tu as vérifié dans tes messages indésirables? je suppose que oui mais on ne sait jamais.
Ceddoc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2011, 13h32   #3
Membre à l'essai
 
Développeur Web
Inscription : octobre 2010
Messages : 55
Détails du profil
Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : octobre 2010
Messages : 55
Points : 21
Points : 21
sur mon serveur en mettant une vrai adresse à la place de 'monadresse@mail.com' ça marche bien.

Pour éviter d'être pris pour du spam il faut entre autre ajouter des champs a paramètre suivant additional_headers, genre l'exemple de la doc PHP :
Code :
1
2
3
$headers = 'From: webmaster@example.com' . "\r\n" .
     'Reply-To: webmaster@example.com' . "\r\n" .
mail('monadresse@mail.com','contact du site appligento.com',$message,$headers)
Titum est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2011, 15h00   #4
Invité régulier
 
Inscription : mai 2002
Messages : 13
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : mai 2002
Messages : 13
Points : 7
Points : 7
Envoyer un message via MSN à jdeheul
il fallait bien patienté.

le premier message de test est arrivé aprés 25 minutes d'attentes.

merci de vos réponses.
jdeheul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2011, 15h30   #5
Membre éclairé
 
Avatar de Ceddoc
 
Homme Cédric
Développeur Java / Web / .NET
Inscription : janvier 2009
Messages : 327
Détails du profil
Informations personnelles :
Nom : Homme Cédric
Âge : 23
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Java / Web / .NET
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : janvier 2009
Messages : 327
Points : 369
Points : 369
parfois il suffit d'être patient ^^.

Par contre si quelqu'un à un élément de réponse concernant ce délai aléatoire avant réception d'un mail je suis preneur. Ce matin j'ai fait une fonction de mailing et j'ai reçu certains mail plus d'une demi-heure après...
Ceddoc est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h36.


 
 
 
 
Partenaires

Hébergement Web