Problème avec mail et mon hébergeur

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 : Problème avec mail et mon hébergeur

par Invité » 12 juin 2005, 18:22

Bon,
merci à tous pour vos conseils.
Je continue à desesperer car tout ce que vous m'avez conseillé fonctionne parfaitement ....sauf chez mon hébergeur.
J'ai essayé chez des hébergeurs gratuits et comme je le pensais tout marche correctement.
Mais pas depuis le mien. Rien à faire.
J'ai envoyé une demande d'assistance, on verra bien ce qu'ils me disent

Un grand merci à tous en tout cas.

par Cyrano » 10 juin 2005, 23:55

Si tu veux envoyer un message avec mail() au format HTML, il faut préciser le type mime avec les en-têtes. Là, tu n'envoies en en-tête que l'expéditeur, exemple:
<?php
		/* Préparation du message validé */
		/* message */
		$contenu = "<html>
<head>
<title>Message d'un visiteur de monsite.com</title>
</head>
<body>
<p>". nl2br(strip_tags($message)) ."</p>
</body>
</html>
";
		/* Pour envoyer un mail au format HTML, vous pouvez configurer le type Content-type. */
		$headers  = "MIME-Version: 1.0\r\n";
		$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

		/* D'autres en-têtes */
		$headers .= "To: $msg_a <". $adr_dest .">\r\n";
		$headers .= "From: ".$prenom_exp."&nbsp;".$nom_exp." <". $courriel_exp .">\r\n";

		/* Expédition du message validé */
		mail($destinataire, $sujet, $message, $headers);
?>
Tu devrais de cette manière pouvoir intégrer du flash.

par Invité » 10 juin 2005, 22:36

rien de rien.....le pire c'est que ça marche depuis d'autre hébergeurs...........
Pour faire simple j'ai essayé un envoi sans flash

Code : Tout sélectionner

<html> <head> <title>Formulaire de contact</title> </head> <body bgcolor="#ffffff"> <form name="contact" action="mail.php" method="POST"> <center> Votre e-mail : <input type="text" name="email"><br> Objet : <input type="text" name="objet"><br> Votre message : <textarea name="message" rows="10" cols="25"></textarea><br><br> <input type="submit" name="submit" value="envoyer"> </center></form> </body> </html>
et pour le php

Code : Tout sélectionner

<? $email = $_POST['email']; $objet = $_POST['objet']; $message = $_POST['message']; if (mail ("[email protected]", "$objet", "$message","FROM: $email")){ echo 'message envoyé !';} else { echo 'problème lors de l\'envoi !';} ?>
Le pire c'est que ça m'affiche message envoyé ! mais je ne recois rien même dans les mess indésirables

par DocType » 10 juin 2005, 22:21

re-vérifie toutes tes variables, cela se peut que c'est tout simplement une d'elle mal nommée...(style l'email destinataire)
et vérifie t mails indésirables ! :roll:

par Invité » 10 juin 2005, 22:06

bon, je retire ce que j'ai dit.......

Code : Tout sélectionner

Warning: mail(): SMTP server response: 550 Requested action not taken: mailbox unavailable or not local in C:\Inetpub\vhosts\vangardis.com\httpdocs\form.php on line 10
réapparait encore.....

par Invité » 10 juin 2005, 19:44

rien de grave pour le message d'erreur j'avais juste oublié de fermer la balise ?>

Mais je suis à nouveau au point de départ...........toujours pas de mail :evil: je commence à desesperer.

Par le plus grand des hasards, et ne riez pas trop fort car je suis vraiment inculte en php Mysql........mais faudrait pas des fois faire une "connection avec la base de données" :oops: :oops: Enfin, dans mon désespoir je me dis que ça semble être la seule différence qu'il peut y avoir entre mon maileur et l'envoi de mails de phpbb........

par Invité » 10 juin 2005, 18:28

Bon désolé mais j'ai du m'absenter....

OUi bien sur........les variables de la fonction mail......suis trop bète....mais je crois qu'à force de tourner en rond je perds un peu les pédales....

Je suis sur qu'on est à 2 doigts de la soluce....

j'ai un message maintenant qui s'affiche

Code : Tout sélectionner

Warning: mail(): SMTP server response: 550 Requested action not taken: mailbox unavailable or not local in C:\Inetpub\vhosts\vangardis.com\httpdocs\form.php on line 10
je suppose que j'ai encore fait une connerie?

par DocType » 10 juin 2005, 13:50

bon, on se rapproche peu à peu de la solution je pense.......

comme depuis flash j'utilise la m"thode post voila ce que j'ai changé au php

Code : Tout sélectionner

<p>Nom : <? echo $_POST['nom']; ?></p> <p>Pr&eacute;nom : <? echo $_POST['prenom']; ?> </p> <p>Adresse mail : <? echo $_POST['admail']; ?></p> <p>Observations : <? echo $_POST['observations']; ?></p>
Et là........miracle les variables s'affichent..... :D

Mais toujours pas d'envoi de mail :x

je remets la totalité du code du fichier php

Code : Tout sélectionner

<p>Votre mail a bien &eacute;t&eacute; envoy&eacute; :</p> <p>Nom : <? echo $_POST['nom']; ?></p> <p>Pr&eacute;nom : <? echo $_POST['prenom']; ?> </p> <p>Adresse mail : <? echo $_POST['admail']; ?></p> <p>Observations : <? echo $_POST['observations']; ?></p> <? $message=$prenom."\n".$nom."\n".$admail."\n".$observations."\n"; mail("[email protected]","Recuperation mail",$message,"From: [email protected]\nReply-To: [email protected]\nX-Mailer: PHP/" ); ?>
ainsi que du flash

Code : Tout sélectionner

on (press) { getURL ("form.php","","POST"); }
et les variables de ta fonction mail c pour faire beau? :roll:

Code : Tout sélectionner

$message=$_POST['prenom']."\n".$_POST['nom']."\n".$_POST['admail']."\n".$_POST['observations']."\n"; mail($_POST['admail'],"Recuperation mail",$message,"From: [email protected]\nReply-To: [email protected]\nX-Mailer: PHP/" );
Penses à regarder dans tes mails indésirables...surtout si en emetteur et recepteur c la meme adresse mail ! :roll: (au passage g revu ton code...)

par Invité » 10 juin 2005, 13:36

bon, on se rapproche peu à peu de la solution je pense.......

comme depuis flash j'utilise la m"thode post voila ce que j'ai changé au php

Code : Tout sélectionner

<p>Nom : <? echo $_POST['nom']; ?></p> <p>Pr&eacute;nom : <? echo $_POST['prenom']; ?> </p> <p>Adresse mail : <? echo $_POST['admail']; ?></p> <p>Observations : <? echo $_POST['observations']; ?></p>
Et là........miracle les variables s'affichent..... :D

Mais toujours pas d'envoi de mail :x

je remets la totalité du code du fichier php

Code : Tout sélectionner

<p>Votre mail a bien &eacute;t&eacute; envoy&eacute; :</p> <p>Nom : <? echo $_POST['nom']; ?></p> <p>Pr&eacute;nom : <? echo $_POST['prenom']; ?> </p> <p>Adresse mail : <? echo $_POST['admail']; ?></p> <p>Observations : <? echo $_POST['observations']; ?></p> <? $message=$prenom."\n".$nom."\n".$admail."\n".$observations."\n"; mail("[email protected]","Recuperation mail",$message,"From: [email protected]\nReply-To: [email protected]\nX-Mailer: PHP/" ); ?>
ainsi que du flash

Code : Tout sélectionner

on (press) { getURL ("form.php","","POST"); }

par DocType » 10 juin 2005, 12:52

...
et pour ta recuperation de champs, utilise $HTTP_GET_VARS['ta_variable_sans_$']
[-X C'est quoi cette formulation : $HTTP_GET_VARS et $HTTP_POST_VARS sont obsolètes, il faut utiliser $_GET ou $_POST et on fait le choix en fonction de la valeur qu'il y a dans l'attribut "method" de la balise <form>

Si ton formulaire utilise la méthode "post", alors récupères tes valeurs dans $_POST['valeur_attribut_name_du_champ'], et avec $_GET sir c'est la méthode "get" bien sur.
je le sais bien et je l'ai signalé au-dessus mais je ne connaissais pas sa version php (pitetre 3 vu le probleme)
donc ayant testé avec http get vars on peut maintenant tester avec $_GET[]
:roll: :wink:
le code devient alors:

Code : Tout sélectionner

<p>Nom : <? echo $_GET['nom']; ?></p> <p>Pr&eacute;nom : <? echo $_GET['prenom']; ?> </p> <p>Adresse mail : <? $_GET['admail']; ?></p> <p>Observations : <? echo $_GET['observations']; ?></p>
tkt cyrano, je suis pas fou :lol:

par Cyrano » 10 juin 2005, 12:50

...
et pour ta recuperation de champs, utilise $HTTP_GET_VARS['ta_variable_sans_$']
[-X C'est quoi cette formulation : $HTTP_GET_VARS et $HTTP_POST_VARS sont obsolètes, il faut utiliser $_GET ou $_POST et on fait le choix en fonction de la valeur qu'il y a dans l'attribut "method" de la balise <form>

Si ton formulaire utilise la méthode "post", alors récupères tes valeurs dans $_POST['valeur_attribut_name_du_champ'], et avec $_GET sir c'est la méthode "get" bien sur.

par DocType » 10 juin 2005, 12:49

ton fichier flash redirige vers form.php3...
car en allant sur http://www.vangardis.com/form.php?nom=m ... tte+cagade cela fonctionne très bien :wink: :roll:

par DocType » 10 juin 2005, 12:48

:shock: :shock: :shock: :shock:
je dois être le roi des malchanceux......

en passant en php tout court et avec

Code : Tout sélectionner

<p>Nom : <? echo $HTTP_GET_VARS['nom']; ?></p> <p>Pr&eacute;nom : <? echo $HTTP_GET_VARS['prenom']; ?> </p> <p>Adresse mail : <? $HTTP_GET_VARS['admail']; ?></p> <p>Observations : <? echo $HTTP_GET_VARS['observations']; ?></p>
ça m'affiche des champs vides même en local
tu as bien modifier ton fichier flash pour qu'il prenne form.php et non form.php3 ?

par Invité » 10 juin 2005, 12:44

:shock: :shock: :shock: :shock:
je dois être le roi des malchanceux......

en passant en php tout court et avec

Code : Tout sélectionner

<p>Nom : <? echo $HTTP_GET_VARS['nom']; ?></p> <p>Pr&eacute;nom : <? echo $HTTP_GET_VARS['prenom']; ?> </p> <p>Adresse mail : <? $HTTP_GET_VARS['admail']; ?></p> <p>Observations : <? echo $HTTP_GET_VARS['observations']; ?></p>
ça m'affiche des champs vides même en local

par DocType » 10 juin 2005, 12:24

modifie tes extensions : passe au php tout court au lieu de php3
et pour ta recuperation de champs, utilise $HTTP_GET_VARS['ta_variable_sans_$']... :wink:

Code : Tout sélectionner

<p>Nom : <? echo $HTTP_GET_VARS['nom']; ?></p> <p>Pr&eacute;nom : <? echo $HTTP_GET_VARS['prenom']; ?> </p> <p>Adresse mail : <? $HTTP_GET_VARS['admail']; ?></p> <p>Observations : <? echo $HTTP_GET_VARS['observations']; ?></p>
a mon avis ca devrait mieux fonctionner...
:roll: