begin process at 2012 05 28 22:24:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Server Web

 > 

Apache

 > 

envoie email via fonction php mail()


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

envoie email via fonction php mail()

mercredi 14 septembre 2011 à 02:32:21 | envoie email via fonction php mail()

midoxe

bonjour, c'est la première fois que je viens sur ce forum.

voilà mon problème : j'essaye d'utiliser la fonction mail() dans une page .php en local avec WAMPserver.

ma page contenant un petit formulaire en html envoie le texte vers la page "traitement" en php, cette dernière devrait renvoyer le texte sur mon adresse mail.

mais le message d'erreur suivant s'affiche :

Warning: mail() [function.mail]: Failed to connect to mailserver at "smtp.gmail.com" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() :

Voci mon code :

<?php

if(isset($_POST['email'])) //si variable formulaire reçu
{
$email= $_POST['email'];

//vérification email

if(false == filter_var($email, FILTER_VALIDATE_EMAIL)) //if(!filter_var($email, FILTER_VALIDATE_EMAIL))
{
?>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
x=alert('Adresse email incorrecte...\351ssayez une autre');
location.href='courier_electro.php';
</SCRIPT>
</HEAD>

<?php
}
else
{
$sujet="recuperation mot de passe";
$message="vous allez trouver ici votre mot de passe";

// Declaration des entetes
//$entetes = "From: aouidi.ahmed@gamil.com" ;


ini_set("SMTP", "smtp.gmail.com");
ini_set("smtp_port", 25);//tester avec 465
ini_set("sendmail_from",$email);
$envoi_mail = mail('$email', '$sujet', '$message');



if (!$envoi_mail)
{ echo "<p> Le mail n'a pas &eacute;t&eacute; envoy&eacute; car un probl&egrave;me est survenu...</p>" ;
}

else
{ echo "<p> L'email a &eacute;t&eacute; envoy&eacute; avec succ&egrave;s&nbsp;! </p>"; }

}
}//fin if
?>


je précise que j'ai modifié le fichier php.ini comme cela :

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 25

merci pour vos réponses


...
mercredi 14 septembre 2011 à 03:21:24 | Re : envoie email via fonction php mail()

jnbrunet


Salut !

Je crois que google nécessite une authentification ?

Regarde ce lien : http://email.about.com/od/emailprogrammingtips/qt/PHP_Email_SMTP_Authentication.htm

Il utilise le package PEAR pour rendre l'envoie de courriel via SMTP beaucoup plus facile. L'exemple montre même un envoi de courriel avec une authentification.

Bonne chance !

-Jn-
mercredi 14 septembre 2011 à 12:05:24 | Re : envoie email via fonction php mail()

midoxe

Réponse acceptée !
Bonjour,

C'est bon ça marche voici mon code ça peut servir à quelqu'un

<?php

if(isset($_POST['email']))
{
$recipient= $_POST['email'];

//vérification email

if(false == filter_var($recipient, FILTER_VALIDATE_EMAIL)) //if(!filter_var($email, FILTER_VALIDATE_EMAIL))
{

echo '<br/><center style="color:blue"><strong>Adresse email incorrecte...&eacute;ssayez une autre</strong></center>';
}
else
{

//connexion BDD
$conn=oci_connect('hr', 'hr');

$my_query="SELECT * from tb_user where EMAIL ='$recipient'";

$sql_query = 'SELECT COUNT(*) AS NUMBER_OF_ROWS FROM (' . $my_query . ')';

$stmt= oci_parse($conn, $sql_query);

oci_define_by_name($stmt, 'NUMBER_OF_ROWS', $number_of_rows);

oci_execute($stmt);

oci_fetch($stmt);

//echo $number_of_rows; cé très utile


if ($number_of_rows == 0 ) {

echo '<br/><center style="color:blue"><strong>Erreur ..!! Votre email ne correspond &agrave; aucun client<strong></center>';

}
else
{
$truc=oci_parse($conn,"SELECT * from tb_user where EMAIL ='$recipient' ");
oci_execute($truc);
while ($dow = oci_fetch_array($truc, OCI_BOTH))
{
$nom=$dow['NOM'];
$prenom=$dow['PRENOM'];
$mdp=$dow['MDP'];
}


$Name = "Patrice François"; //senders name
$email = "p.françois@gmail.com"; //senders e-mail adress
$mail_body = 'Bonjour Mr'.' '.$nom.' '.$prenom.',<br/> Conformément à votre demande, vous allez trouvez en dessus votre mot de passe.<br/>
Votre mot de passe est : '.$mdp.'.<br/>'.'Cordialement,<br/>Service Informatique XXXX' ; //mail body

$subject = "Récuperer mot de passe"; //subject
$headers ='From: Patrice Baret <'.$email.'>'."\n";
$headers .='Reply-To: a.ahmed@gmail.com'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
//$header = "From: ". $Name . " <" . $email . ">\r\n"; //optional headerfields

ini_set('sendmail_from', $email); //Suggested by "Some Guy"

$envoi_mail = mail($recipient, $subject, $mail_body, $headers);

if ($envoi_mail)
{ echo "<br/><center style='color:blue'> L'email a &eacute;t&eacute; envoy&eacute; avec succ&egrave;s&nbsp;! </center>" ;
}

else
{ echo "<center> Le mail n'a pas &eacute;t&eacute; envoy&eacute; car un probl&egrave;me est survenu...</center>" ;
}
}
}
}//fin if
?>

Merci jnbrunet pour ta réponse elle était utile .

A bientot


Cette discussion est classée dans : mail, port, php, email, smtp


Répondre à ce message

Sujets en rapport avec ce message

mail pb SMTP [ par EMSIEN ] Dans le cadre d'un petit programme que je veux faire,j'ai besoin d'envoyer un e-mail avec PHP,j'ai utilisé la fonction mail(mail,subject,msg)mais ça m Mail() [ par developinform ] Salut;Je suis débutant en php, le message d'érreur suivant saffiche a l'exécution d'un fichier php (envoieMail()): Warning: mail(): Failed t probleme fonction mail [ par PSG_Silver ] Bonjour à tous,voici mon problemej'utilise wampserver 2.0 b;   postgres;  phpje developpe un site et j'aimerai utiliser la fonction mail.mon message d fonction mail [ par buster20 ] j'ai un gros probleme j'ai deja chang SMTP dans php.ini mais j'ai toujours ce message Warning: mail(): Failed to connect to mailserver at "localhost" La fonction mail( ) de mon code PHP ne veut pas fonctionner [ par KolKOR ] Bonjour et merci de prendre le temps de régler mon problème qui est le suivant. J'ai un formulaire complet sur mon site qui utilise la fonction mail ( envoie d'un mail en Php - Javascript avec une seule page Php [ par elfigone81 ] Bonjour,Je voulais demander de l'aide pour le script suivant. En faite je voudrai envoyer un mail avec une seule page php contenant également un petit Connexion SMTP avec AOL [ par michmichman ] Voila mon souci je veux permettre aux client de mon futur site de m'envoyer un mail via une page .php alor j'ais pris un code tout con comme test aucu Envoie de mail avec Windows 2003 (IIS6) et php 4.4.0 [ par zizouth ] Voici l'erreur :Warning: mail(): Failed to connect to mailserver at "smtp.tunisiagames.com" port 25, verify your "SMTP" and "smtp_port" setting in php Newsletter php [ par Travailleuuse06 ] Bonjour,je suis en train de créer une newsletter en php et j'aurais voulu vérifier si un utilisateur est déjà dans ma base de données avant de le supp configuration php.ini pour mail [ par dam_37 ] Avis à tous ceux qui savent,Malgré le nombre important d'infos sur l'envoi de mail, j'ai toujours le même problème:Ma fonction mail est correcte mais


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales