Formulaire PHP

Résolu/Fermé
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 - 29 mars 2013 à 19:14
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 - 5 avril 2013 à 19:25
Bonjour,
j'ai fait un formulaire php pour mon site, et je récupère les données par mail. Pour l'instant tout va bien. Je reçois bien le mail avec les données. Mais quand je change mon adresse email dans la page php par une autre je ne reçois plus aucun mail. J'ai donc essayer d'essayer avec d'autre adresse, le mail est recu. Le problème c'est que je veux a tout pris mettre cette adresse email et c'est justement celle qui ne marche pas . Pourquoi je ne recois pas de mail ? ( l'adresse que je veux est une adresse gmail)
A voir également:

14 réponses

trusttelecom Messages postés 260 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 24 octobre 2013 36
2 avril 2013 à 09:35
Salut,

A mon avis le problème n'est pas ....
Car si tu envoie des mails et qu'ils sont tous reçus sauf celui de ton gmail c'est que tu as un problème sur ton mail et non sur le script qui envoie les mails.

A+
1
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
3 avril 2013 à 14:07
Je pense aussi que cela ne viens pas du code, car cela marche avec une autre adresse gmail que j'ai ...
0
mafitsi Messages postés 5 Date d'inscription mercredi 12 décembre 2012 Statut Membre Dernière intervention 14 avril 2013 1
Modifié par Destrio5 le 5/04/2013 à 20:48
bsr, je pense que PHP bloque l'envoi du message à cette adresse email "(adresse mail supprimée)" à cause du point qui est entre 46 et divers, à suivre ...
1
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
30 mars 2013 à 07:54
Bonjour,

On ne comprend pas bien la nature du problème.... Il est normal qu'en changeant l'adresse mail, vous ne receviez plus les données.

CITE: " je récupère les données par mail"

Données? Du texte, du code? des données enregistrées en base?

Transmettre des données par mail, je parle de vrais données pour une base de données n'est pas la meilleure solution.

Avec un formulaire, on peut transmettre les données en "web service" vers un autre serveur. Je préconise les Web Service en mode REST. Avec Zend Framework, un WS REST se programme en une trentaine de lignes de code.

Exemple ici:
http://html5.immo-scope.com/index.php?page=webservices/WsRestFullViaZendFramework



A+
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
Modifié par Destrio5 le 5/04/2013 à 20:47
Voici mon code :

<?php

$adresse = "(adresse mail supprimée)";
$adresseclient= $_POST['Email'];

$TO = $adresse;

$head = "From: ".$adresseclient."\n";
$head .= "Content-Type: text/plain; charset=\"utf-8\"; DelSp=\"Yes\"; format=flowed \r\n";
$head .= "Content-Disposition: inline \r\n";
$head .= "Content-Transfer-Encoding: 7bit \r\n";
$head .= "MIME-Version: 1.0";

$sujet = "Formulaire de contact";

$informations =
"
Coordonnées du client
Nom: ".$_POST['Nom']." \r\n
Prénom: ".$_POST['Prénom']." \r\n
Email: ".$_POST['Email']." \r\n \r\n
Message:
".$_POST['Message']." \r\n
";

$res = mail($TO, $sujet ,$informations, $head);

if (true == $res) {
Header("Location: [(site supprimé)]");
} else {
Header("Location: [(site supprimé)]");
}
?>


Quand je met mon adresse email "(adresse mail supprimée)" par exemple pour recevoir, le nom, prénom, adresse mail et le message qui a été écrit sur le site par un client, cela marche très bien quand je me connecte sur mes mail.
Par contre, quand je met l'adresse email de mon père, car c'est lui qui doit recevoir ces infos et bien quand je vais sur sa boite mail il ne recoit aucun message où il devrait y avoir le nom, prénom, message et adresse mail du client ... Je ne comprend pas comment cela ne peut pas marcher puisque quand je met mon adresse à moi cela marche. J'espère que ce message sera plus claire que l'autre.
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
1 avril 2013 à 14:22
Bonjour,

Il faut aller voir en courrier indésirable.... Ils sont peut-être là.

J'explique:
- si vous envoyez un mail depuis hotmail.com, le SMTP est celui de hotmail
- si vous utilisez mail() en PHP depuis un site web, c'est le SMTP du site qui est utilisé, donc différend du SMTP du mail expéditeur.
- certaines messageries interprètent cette différence du domaine du mail et le SMTP émetteur comme une tentative de spam et les mails redirigés vers les courriers indésirables....
A+
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
1 avril 2013 à 15:31
Non, ils ne sont pas dans les indésirables
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
duweb Messages postés 353 Date d'inscription dimanche 30 mai 2010 Statut Membre Dernière intervention 6 mars 2014 72
30 mars 2013 à 23:14
Le plus simple est de tester avec phpmailer
http://phpmailer.worxware.com/?pg=examplebgmail
https://github.com/Synchro/PHPMailer

Mais ce serait bien qu'on sache si les tests sont fait en local, si les mails sont récupérés par un client (windowsmail, thunderbird, ...) ou par le site gmail.com.

Ces questions peuvent paraître abstraites , mais ca nous permettra de mieux répondre
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
1 avril 2013 à 11:58
Les mails sont récupérés via Mozilla Thunderbird sur deux ordinateurs et, via gmail.com sur mon ordinateur. Mais test sont donc fait par le site gmail.

Pour ce qui est de tester par phpmailer je ne comprend pas trop ce que je dois faire car je suis débutante.
0
ReDLoG Messages postés 243 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 28 octobre 2021 57
1 avril 2013 à 15:56
Bonjour,

Tu devrais voir ici https://a-pellegrini.developpez.com/tutoriels/php/mail/
Chapitre 3 "Mise en pratique" lire le petit encadré sur fond jaune et tester ton script modifié comme indiqué...
Cdlt.
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
1 avril 2013 à 16:59
J'ai essayé cela ne marche toujours pas
0
ReDLoG Messages postés 243 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 28 octobre 2021 57
1 avril 2013 à 17:15
Alors encore une tentative en modifiant cette portion de ton code PHP :

$head = "From: ".$adresseclient."\r\n";
$head .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
// on supprime pour le test ceci => DelSp=\"Yes\"; format=flowed \r\n";
// et ceci aussi => $head .= "Content-Disposition: inline\r\n";
$head .= "Content-Transfer-Encoding: 7bit\r\n";
$head .= "MIME-Version: 1.0";

Et si ça ne fonctionne toujours pas, je ne vois pas d'où le problème peut survenir...

Cdlt.
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
1 avril 2013 à 17:26
Cela ne fonctionne toujours pas :/
0
trusttelecom Messages postés 260 Date d'inscription mardi 26 mars 2013 Statut Membre Dernière intervention 24 octobre 2013 36
31 mars 2013 à 01:15
Bonsoir,

Le mail ne serait il pas tout simplement dans le dossier spam ??

A+
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
1 avril 2013 à 11:58
Non il n'y a rien dans les spams malheureusement.
0
mafitsi Messages postés 5 Date d'inscription mercredi 12 décembre 2012 Statut Membre Dernière intervention 14 avril 2013 1
Modifié par mafitsi le 3/04/2013 à 08:10
Bjr, ce que je propose, au lieu de: $adresse = "46.divers@gmail.com";

tu peux essayer en mettant <input type="hidden" name="destinataire" value="46.divers@gmail.com"> après $adresse= $_POST['destinataire'];
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
3 avril 2013 à 14:03
Lorsque je met <input type="hidden" name="destinataire" value="46.divers@gmail.com"> après $adresse= $_POST['destinataire'];
Quand je vais sur le site il me met :
Parse error: syntax error, unexpected '<' in /home/u889438527/public_html/formmail.php on line 4
0
mafitsi Messages postés 5 Date d'inscription mercredi 12 décembre 2012 Statut Membre Dernière intervention 14 avril 2013 1
3 avril 2013 à 16:37
tu peux me donner le code html pour vérifier ?
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
3 avril 2013 à 18:06
<form method=POST action=formmail.php>
<input type="hidden" name="destinataire" value="46.divers@gmail.com">
<p>
<label for="Nom"> Nom: </label> <input type="text" name="Nom" id="Nom" required/>
</p>

<p>
<label for="Prénom"> Prénom: </label> <input type="text" name="Prénom" id="Prénom" required/>
</p>

<p>
<label for="Email"> Email: </label> <input type="email" name="Email" id="Email" required/>
</p>

<p>
<label for="Message"> Message: </label> <br/>
<textarea name="Message" id="Message" required></textarea>
</p>

<p>
<input type="submit" value="Envoyer" />
</p>

</form>
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
3 avril 2013 à 18:12
J'ai mieux refait le code comme vous m'avais dit cela marche avec mon adresse mail mais toujours pas avec celle de mon père... J'ai toujours le même problème
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
3 avril 2013 à 18:15
Je ne pense pas que le problème vienne du code mais plutot de gmail !
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
Modifié par Destrio5 le 5/04/2013 à 20:49
Voici le code que j'utilise depuis le début :

Html:

<form method=POST action=formmail.php>
<p>
<label for="Nom"> Nom: </label> <input type="text" name="Nom" id="Nom" required/>
</p>

<p>
<label for="Prénom"> Prénom: </label> <input type="text" name="Prénom" id="Prénom" required/>
</p>

<p>
<label for="Email"> Email: </label> <input type="email" name="Email" id="Email" required/>
</p>

<p>
<label for="Message"> Message: </label> <br/>
<textarea name="Message" id="Message" required></textarea>
</p>

<p>
<input type="submit" value="Envoyer" />
</p>

</form>


et le php:

<?php

$adresse= 'adresse de mon père';
$adresseclient= $_POST['Email'];

$headers = "From: ".$adresseclient."\n";
$headers .= "Content-Type: text/plain; charset=\"utf-8\"\n";
$headers .= "Content-Transfer-Encoding: 7bit \n";
$headers .= "MIME-Version: 1.0";

$subject = "Formulaire de contact";

$informations =
"
Coordonnées du client
Nom: ".$_POST['Nom']."
Prénom: ".$_POST['Prénom']."
Email: ".$_POST['Email']." \n
Message:
".$_POST['Message']."
";

if (mail($adresse, $subject ,$informations, $headers)) {
Header("Location: [(site supprimé)]");
} else {
Header("Location: [(site supprimé)]");
}

?>
0
ReDLoG Messages postés 243 Date d'inscription mardi 12 mars 2013 Statut Membre Dernière intervention 28 octobre 2021 57
3 avril 2013 à 21:30
J'ai testé ton code par envoi sur mon adresse Gmail et je le reçois correctement.
Voici le code de test que j'ai utilisé et qui est fonctionnel :
<?php
$to = 'xxxxxxxxx@gmail.com';
$from = $_POST['Email'];

$subject = "Test formulaire de contact";

$headers = "From: ".$_POST['Nom']." ".$_POST['Prenom']." <".$from.">\r\n";
$headers .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
$headers .= "Content-Transfer-Encoding: 7bit\r\n";
$headers .= "MIME-Version: 1.0";

$infos = "Coordonnées du client\r\n";
$infos .= "Nom: ".$_POST['Nom']." Prénom: ".$_POST['Prenom']."\r\n";
$infos .= "Email: ".$from."\r\n";
$infos .= "Message: ".$_POST['Message']."\r\n";

if (mail($to, $subject, $infos, $headers)) {
	$msg = "Votre message a été envoyé avec succès sur Gmail.com";
} else {
	$msg = "Impossible d'envoyer votre message sur Gmail.com";
}
?><!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title>&bull; TEST envoi mail sur Gmail.com &bull;</title>
</head>

<body>
<p><?php if(isset($msg)) echo $msg; ?></p>
<form method="post" action="mail_test_envoi_gmail.php">
	<p><label for="Nom">Nom:</label> <input type="text" name="Nom" id="Nom" required /></p>
	<p><label for="Prénom">Prénom:</label> <input type="text" name="Prenom" id="Prenom" required /></p>
	<p><label for="Email">Email:</label> <input type="email" name="Email" id="Email" required /></p>
	<p><label for="Message">Message:</label><br />
	<textarea name="Message" id="Message" required></textarea></p>
	<p><input type="submit" name="SEND" value="Envoyer" /></p>
</form>
</body>
</html>

P.S. : Evite les lettres accentuées dans les name de formulaire car elles peuvent devenir "gênantes" dans un script PHP. Donc :
<input type="text" name="Prenom" id="Prenom" required />

Et dans le script PHP devient :
$_POST['Prenom']


En résumé, j'ai lu quelque part sur le net que Gmail "blacklist" certains domaines considérés comme spam, je ne sais pas si il y a un rapport direct avec ton souci (https://forum.ovh.com/
Mais je le répète, le code ci-dessus fonctionne parfaitement, tu devrais en faire un Copier/Coller et l'enregistrer sous "mail_test_envoi_gmail.php" et tester par toi-même!

Cdlt.
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
4 avril 2013 à 06:57
Bonjours
merci beaucoup de bien vouloir m'aider je ferais les test demain soir et vous tiendrai au courant
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
Modifié par Destrio5 le 5/04/2013 à 20:48
Alors j'ai essayer votre code c'est toujours pareil cela marche avec l'adresse (adresse mail supprimée) mais toujours pas avec l'adresse gmail de mon père ... :/ (l'adresse gmail de mon père contient 3 points en tout) peut etre ce serait ces points qui empèche d'envoyer le mail ?
0
46.Divers Messages postés 48 Date d'inscription samedi 5 novembre 2011 Statut Membre Dernière intervention 5 avril 2013 32
5 avril 2013 à 19:25
J'ai enfin réussi a résoudre le problème!!! Le problème ne venait pas du code mais des points qu'il y avait dans l'adresse gmail.
La réponse est ici :
https://support.google.com/mail/answer/10313?hl=fr
0