Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Résolu

Envoyer un E-mail Php

Archeus01, le mercredi 23 janvier 2008 à 12:24:29
Bonjour,
Je cherche un tutrorial, ou tout ce qui pourrait m'aider à envoyer un Email en utilisant le PHP avec WAMP5. J'en ai essayé plusieurs mais il ne fonctionnent pas.
Configuration: Windows XP
Firefox 2.0.0.9
Répondre à Archeus01  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
le père, le mercredi 23 janvier 2008 à 13:07:17
Bonjour

Peux-tu montrer ton script et donner quelques informations : message d'erreur, comportement innattendu...
Répondre à le père

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Archeus01, le mercredi 23 janvier 2008 à 15:16:29
Bonjour, merci de t'occuper de mon problème.

J'ai essayé en utilisant zend framework que j'utilise pour mon site :
code


<?php
/** Zend_Controller_Action */
//require_once 'Zend/Controller/Action.php';
class IndexController extends Zend_Controller_Action
{
public function indexAction()
{

require_once 'Zend/Mail.php';
$mail = new Zend_Mail();
$mail->setBodyText('Ceci est le texte du message.');
$mail->setFrom('somebody@example.com', 'un expéditeur');
$mail->addTo('somebody_else@example.com', 'un destinataire');
$mail->setSubject('Sujet de test');
$mail->send();
die();
}
}

pris sur http://framework.zend.com/manual/fr/zend.mail.html
et j'ai :

Fatal error: Uncaught exception 'Zend_Mail_Transport_Exception' with message 'Unable to send mail' in C:\Program Files\wamp\php\libraries\Zend\Mail\Transport\Sendmail.php:101 Stack trace: #0 C:\Program Files\wamp\php\libraries\Zend\Mail\Transport\Abstract.php(333): Zend_Mail_Transport_Sendmail->_sendMail() #1 C:\Program Files\wamp\php\libraries\Zend\Mail.php(648): Zend_Mail_Transport_Abstract->send(Object(Zend_Mail)) #2 C:\Program Files\wamp\www\siroco\application\controllers\IndexController.php(21): Zend_Mail->send() #3 C:\Program Files\wamp\php\libraries\Zend\Controller\Action.php(497): IndexController->indexAction() #4 C:\Program Files\wamp\php\libraries\Zend\Controller\Dispatcher\Standard.php(238): Zend_Controller_Action->dispatch('indexAction') #5 C:\Program Files\wamp\php\libraries\Zend\Controller\Front.php(920): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #6 C:\Program Files\wamp\www\siroco\html\index.php(37): Zend_Controller_Front->disp in C:\Program Files\wamp\php\libraries\Zend\Mail\Transport\Sendmail.php on line 101


donc j'ai abandonné Zend, et j'ai tenté plusieurs autres trucs dont

<?php
if($_POST){
//Récupération des données du formulaire----------------------------
$prenom = $_POST["prenom"];
$nom = $_POST["nom"];
$email = $_POST["email"];
$tel = $_POST["tel"];
$message = $_POST["message"];
$subject = $_POST["subject"];
//------------------------------------------------------------------

//Gestion des erreurs de saisie-------------------------------------
$erreurs = array();
if( empty($prenom)) $erreurs = "il manque votre prénom";
if( empty($nom)) $erreurs = "il manque votre nom";
if( empty($email)) $erreurs = "il manque votre email";
if( empty($tel)) $erreurs = "il manque votre téléphone";
if( empty($message)) $erreurs = "il manque votre message";
//------------------------------------------------------------------

if(empty($erreurs)) {
$from = $email;
$reply = $from;
$to = "archeus.monmail@free.fr"; //Mettez l'email de destination ici

//Mise en forme du contenu au format HTML-----------------------
$contenu = "message de : ".$prenom." ".$nom;
$contenu .= "<br /> Tel: ".$tel;
$contenu .= "<br /> Message: <br />";
$contenu .= $message;
//--------------------------------------------------------------

//Entêtes de formatage de l'email en mode HTML------------------
$headers = 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\n";
$headers .= 'From: '.$from."\n";
$reply = $headers."Reply-to: ".$reply."\n";
//---------------------------------------------------------------

//Déclenchement de l'email et reroutage vers une autre page-----
$resultat = mail($to, $subject, $contenu, $reply);

if($resultat) {
echo "email envoyé";
} else {
echo "Echec dans l'envoi de l'email";
}

} else {
$texte_erreur = implode("<br />",$erreurs);
print $texte-erreur;
}

}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Envoi d'email</title>
</head>

<body>
<form action="<?php print $_SERVER["PHP_SELF"]; ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
<table width="100%" border="0" cellspacing="1" cellpadding="2">
<tr>
<td width="19%">Prénom : </td>
<td width="81%"><input name="prenom" type="text" id="prenom" value="<?php print $prenom; ?>" size="50" maxlength="100" /></td>
</tr>
<tr>
<td>Nom : </td>
<td><input name="nom" type="text" id="nom" value="<?php print $nom; ?>" size="50" maxlength="100" /></td>
</tr>
<tr>
<td>Téléphone : </td>
<td><input name="tel" type="text" id="tel" value="<?php print $tel; ?>" size="50" maxlength="50" /></td>
</tr>
<tr>
<td>Votre email : </td>
<td><input name="email" type="text" id="email" value="<?php print $email; ?>" size="50" maxlength="100" /></td>
</tr>
<tr>
<td valign="top">Sujet du message : </td>
<td><input name="subject" type="text" id="subject" value="<?php print $subject; ?>" size="50" maxlength="100" /></td>
</tr>
<tr>
<td valign="top">Texte du message : </td>
<td><textarea name="message" cols="38" rows="10" id="message"><?php print $message; ?></textarea></td>
</tr>
<tr>
<td colspan="2"> <input type="submit" style="margin-left:200px;" name="Submit" value="Envoyer le message" /> </td>
</tr>
</table>
</form>
</body>
</html>

code pris sur http://www.intras.fr/tutoriels/formation-php-formulaire-email.php
et j'ai

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\Program Files\wamp\www\export\formulaire-prise-contact.php on line 41
Echec dans l'envoi de l'email
Répondre à Archeus01

3


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
le père, le mercredi 23 janvier 2008 à 16:53:26
re-bonjour
Failed to connect to mailserver at "localhost"

Comme tu n'as sûrement pas de serveur de mail sur ta machine, il ne faut pas mettre "localhost" comme serveur de mail. Je sais, ce n'est pas toi qui l'a mis, il est là parce que Php est livré comme ça.
Va dans php.ini et dans la rubrique [mail function] modifie la ligne SMTP= pour mettre ton 'vrai' serveur de mail :
SMTP = smtp.wanadoo.fr si TON FOURNISSEUR D'ACCES est wanadoo
SMTP = smtp.free.fr si c'est free
je ne sais pas pour les autres, mais ça apparaît sûrement quelque part sur le site de ton F.A.I.
Répondre à le père

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Archeus01, le mercredi 23 janvier 2008 à 17:00:57
Ok, je me suis renseigné (je suis en stage en entreprise alors c'est pas simplement un truc du genre smtp.free.fr que je peux trouver facilement ^^').
j'éditerai mon message dans 2-3 minutes pou dire si ça marche

[Edit]
voila la réponse :( :
Warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for archeus.frederic@free.fr in C:\Program Files\wamp\www\export\formulaire-prise-contact.php on line 41
Répondre à Archeus01

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
le père, le mercredi 23 janvier 2008 à 17:08:39
Si tu as un client email dans ta machine (outlook express) avec un compte qui marche, regarde ce qu'il y a comme serveur SMTP (Outils / comptes / propriétés / serveurs)
Répondre à le père

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Archeus01, le mercredi 23 janvier 2008 à 17:30:00
C'est bon, on m'a donné l'information et je l'ai remplacé dans php.ini (mais on n'a pas voulu me dire comment la trouver et outlook express n'était pas configuré, j'y accède par webmail.). A la limite, maintenant que je l'ai , je m'en fous ^^ de savoir comment l'obtenir.
Tout marche, même le code avec Zend ^^.
Merci beaucoup
Répondre à Archeus01

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 KenTin, le samedi 24 mai 2008 à 14:32:56
Moi aussi jai un probleme de ce type quand j'essaye de retrouve mon mot de passe sur un site avec mon adressse mail il me dise ca
Unable to send e-mail. Please contact the forum administrator with the following error message reported by the SMTP server: "535 5.7.1 http://mail.google.com/support/bin/answer.py?answer=14257 e11sm7501789fga.1 ".
Répondre à KenTin

Résultats pour Envoyer un E mail Php

Problème envoi de mail PHP (Résolu) Bonjour, J'ai un petit souci, j'essaye veinement d'envoyer un mail en utilisant php, mais je ne recois jamais ce mail, j'ai essayer plusieur script, jusqu'à utiliser le plus simple possible: www.commentcamarche.net/forum/affich-4839628-probleme-envoi-de-mail-php
Envoi mail multiples (pb de variable) (Résolu) Bonjour, j'ai un problème débile... j'ai un fichier qui me permet d'envoyer des données par mail : www.commentcamarche.net/forum/affich-3335971-envoi-mail-multiples-pb-de-variable
Envoyer des email avec php (Résolu) Bonjour, je veux envoyer des email avec php mais le script ne fonctionne pas et le navigateur affiche un message d'eerur voilà le script www.commentcamarche.net/forum/affich-8707642-envoyer-des-email-avec-php

Résultats pour Envoyer un E mail Php

''E-mail Address Not Verified'' s'affiche à côté du pseudoIntroduction Lorsque vous utilisez MSN Messenger ou Windows Live Messenger avec une adresse non fournie par le réseau MSN (c'est-à-dire ne se terminant pas par @hotmail @msn ou @live), vous devez, soit enregistrer l'adresse e-mail sur le réseau... www.commentcamarche.net/faq/sujet-12215-e-mail-address-not-verified-s-affiche-a-cote-du-pseudo

Résultats pour Envoyer un E mail Php

Problème config serveur pour envoie mail (Résolu)Bonjour, Je suis actuellement en train de tester mon site web mais j 'ai toujours un soucie avec mon formulaire d'envoi mail. J'utilise php5 et MySQL. j'ai toujour un message d'erreur qui apparait lors de mes tentatives... www.commentcamarche.net/forum/affich-6232718-probleme-config-serveur-pour-envoie-mail
Mail() php probléme d'accent dans sujet (Résolu)Bonjour, J'ai un problème (souvent évoqué I Know!) J'envoi un mail (en php) dont les éléments sont importé depuis une base postgresql. Le corps du message (qui contient des caractères accentués) est correct a la reception de e-mail. Mais le... www.commentcamarche.net/forum/affich-7033714-mail-php-probleme-d-accent-dans-sujet