Envoi automatique de mail

Résolu
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009 - 11 mars 2009 à 08:54
Queen23 Messages postés 6 Date d'inscription dimanche 27 juillet 2008 Statut Membre Dernière intervention 16 juin 2011 - 16 juin 2011 à 03:22
Bonjour a tous, deja je vous avertis que je débute en php...

Voici mon problème:

J'ai créer une application pour la gestion des incidents au sein d'un service d'une entreprise .

J'ai donc un formulaire d'enregistrement d'un incident qui, lorsque je click sur le submit m'enregistre l'incident dans ma base, jusque la tout va bien .

Mais il me manque un truc , je m'explique

Ce qu'il me manque serait que lorsqu'un incident est enregistrer suite a l'appui sur le bouton submit, il faudrait que j'arrive a gérer l'envoi automatique de maïl

quelqu'un serait-il en mesure de me venir en aide afin de rendre possible l'envoi des mails s'il vous plait

Voici le bout de code qu j'ai réaliser pour le moment en m'appuyant sur la doc de la fonction mail:

/*Envoi du Mail
*/
//les destinataires
$query="SELECT Mail FROM employer WHERE level_employe='2'";
$res= mysql_query($query) or die(mysql_error());
$to=mysql_fetch_array($res);
//le sujet
$subject="Incident !!";
//le message
$message="Un nouvel incident viens d'être enregistré, veuillez-vous connecter dans les plus brefs délais afin de le résoudre. MERCI";
//envoi du mail
mail($to,$subject,$message, 'From: 000.00.000.00@maif.com');
/*=========================================================================
=======================================================================*/

Mais malheureusement, voici le message que cela me renvoi:

/*Message d'erreur
*/
Warning: mail() expects parameter 1 to be string, array given in c:\wamp\www\incidents_editiques\enregistrement\enregistrementincidentmanager.php on line 77
/*=========================================================================
=======================================================================*/

La ligne 77 correspondant a :
/*=========================================================================
=======================================================================*/
mail($to,$subject,$message, 'From: 000.00.000.00@maif.com');
/*=========================================================================
=======================================================================*/

20 réponses

cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
12 mars 2009 à 11:29
Je vous remercis car tout fonctionne
voici le code qui fonctionne:

$to="christophe.mire@maif.fr";
$subject="Incident !!";
$message="Un nouvel incident vien d'être enregistré !!";
$headers .= 'From: editique@maif.fr' . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
if(mail($to, $subject, $message, $headers))
{
echo 'Le message a bien été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}

avec ceci dans mon php.ini

[mail function]
; For Win32 only.
SMTP = smtp.maif

; For Win32 only.
;sendmail_from = editique@maif.fr

encore merci !!
3
goliath2002 Messages postés 43 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 20 mai 2011 1
11 mars 2009 à 10:10
Essai!

//les destinataires
$query="SELECT Mail FROM employer WHERE level_employe='2'";
$res= mysql_query($query) or die(mysql_error());
$to=mysql_fetch_array($res);


$from = "[mailto:000.00.000.00@maif.com 000.00.000.00@maif.com]";
$subject="Incident !!";
$message="Un nouvel incident viens d'être enregistré, veuillez-vous connecter dans les plus brefs délais afin de le résoudre. MERCI";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Content-Transfer-Encoding: 7bit\r\n";
$headers .= "From: " . $from . "\r\n";
mail($to, $subject, $message, $headers);

Il n'est jamais trop tard pour apprendre
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 10:35
merci de mavoir repondu goliath2002

je viens d'essayer ta solution et il me renvoi cela

Warning: mail() expects parameter 1 to be string, array given in c:\wamp\www\incidents_editiques\enregistrement\enregistrementincidentmanager.php on line 93

le ligne 93 correspondant a
mail($to, $subject, $message, $headers);
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 10:36
je ne suis pas sur mais je pense que l'erreur peu venir de cela

$from = "172.20.224.17@maif.com";


ici il faut bien que je mette mon ip_du_serveur@domaine.com ??? nn?
0

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

Posez votre question
goliath2002 Messages postés 43 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 20 mai 2011 1
11 mars 2009 à 13:27
le problèm vient de "$to", il y a erreur dans ton mysql.

Il n'est jamais trop tard pour apprendre
0
goliath2002 Messages postés 43 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 20 mai 2011 1
11 mars 2009 à 13:35
Je n'ai pas testé mais je pense que ca marchera

<?php


//les destinataires
$query=mysql_query("SELECT Mail FROM  employer where level_employe='2' ")or die(mysql_error());
while ($res= mysql_fetch_array($query))
{


$to=$res['Mail'];


$from = "[mailto:000.00.000.00@maif.com 000.00.000.00@maif.com]";
$subject="Incident !!";
$message="Un nouvel incident viens d'être enregistré, veuillez-vous connecter dans les plus brefs délais afin de le résoudre. MERCI";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Content-Transfer-Encoding: 7bit\r\n";
$headers .= "From: " . $from . "\r\n";
mail($to, $subject, $message, $headers);
}
?>

Il n'est jamais trop tard pour apprendre
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 14:09
je les modifier pour qu'il aille bien et voila ce que sa donne
//les destinataires
$query=mysql_query("SELECT Mail FROM employer where level_employe='2' ")or die(mysql_error());
while ($res= mysql_fetch_array($query))
{
$to=$res['Mail'];

$from = "editique@maif";
$subject="Incident !!";
$message="Un nouvel incident viens d'être enregistré !!";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Content-Transfer-Encoding: 7bit\r\n";
$headers .= "From: " . $from . "\r\n";
mail($to, $subject, $message, $headers);
}

==========================================
message d'erreur
==========================================
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:\wamp\www\incidents_editiques\enregistrement\enregistrementincidentmanager.php on line 113



============================================
ligne 113
============================================
mail($to, $subject, $message, $headers);
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 14:11
traduction du message d'erreur


Avertissement : courrier () [function.mail] : Échoué unir(connecter) à mailserver au port "localhost" 25, vérifiez votre "SMTP" et le cadre(l'arrangement) de "smtp_port" dans php.ini ou utilisez ini_set () dans c:\wamp\www\incidents_editiques\enregis trement\enregistrementincidentmanager.p hp sur la ligne 113
0
goliath2002 Messages postés 43 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 20 mai 2011 1
11 mars 2009 à 14:12
ok c'est normal tu es sur ton ordinateur (localhost) , mais ca marchera sur ton serveur!

Il n'est jamais trop tard pour apprendre
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 14:19
ok bien jvais faire des test serveur alors et jte tiens au courant si tu veux
merci
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 14:27
bon sa y'est je viens de faire des test directement sur le serveur et le resultat est le même, exactement le même message d'erreur

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:\wamp\www\incidents_editiques\enregistrement\enregistrementincidentmanager.php on line 113
0
goliath2002 Messages postés 43 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 20 mai 2011 1
11 mars 2009 à 14:33
Tu es chez quel herbergeur?



Il n'est jamais trop tard pour apprendre
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 14:43
Je suis en stage dans une grande entreprise ( la maif ) et donc elle possède son propre hebergeur
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
11 mars 2009 à 14:54
pourquoi cette question?
0
goliath2002 Messages postés 43 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 20 mai 2011 1
11 mars 2009 à 16:36
Parce qu'il y ad des hebergeur qui que la fonction mail() n'est pas activé.
Il n'est jamais trop tard pour apprendre
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
12 mars 2009 à 08:58
je sais pas si sa peux a aider mais j'ai cru comprendre que oui, alors voici le smtp c'est smtp.maif
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
12 mars 2009 à 09:07
Salut,

Il y a des chances (ou des malchances, c'est selon) que tes paramètres liés à la fonction mail du php.ini soient incorrectes.
Renseigne toi sur la façon de te connecter au serveur mail de ta boîte et indique les dans le php.ini
(cf SMTP et smtp_port)

Il peut également exister des restrictions au niveau du réseau.

Cordialement,

Kohntark -
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
12 mars 2009 à 09:26
Bien en fait ce n'est pas vraiment une connexion, mon appli est sur le serveur et donc en clair j'execute juste un programme du serveur donc je n'ai pas besoin de me connecter a lui a ce moment la, si?

ps: merci kohntark de me porter un interet
0
cs_arkonara Messages postés 165 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 28 novembre 2009
12 mars 2009 à 09:57
===========================================
Mon code
===========================================
$to="christophe.mire@maif.fr";
$subject="Incident !!";
$message="Un nouvel incident vien d'être enregistré !!";
$headers ='From: êditique<editique@maif.fr>'."\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
if(mail($to, $subject, $message, $headers))
{
echo 'Le message a bien été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}

===========================================
Mon message d'erreur
===========================================
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:\wamp\www\incidents_editiques\enregistrement\enregistrementincidentmanager.php on line 111
Le message n'a pu être envoyé

=======================================
Ma ligne 111
=======================================
if(mail($to, $subject, $message, $headers))


vois tu ou ce situ mon problème marc.suisse?
j'ai changer dans mon php.ini le smtp et le send_mail
smtp=smtp.maif
send_mail=editique@maif.fr

MERCI !!
0
Queen23 Messages postés 6 Date d'inscription dimanche 27 juillet 2008 Statut Membre Dernière intervention 16 juin 2011
16 juin 2011 à 03:22
salut,
je viens de réaliser même application , mais j'ai pas compris cette phase
[mail function]
; For Win32 only.
SMTP = smtp.maif

; For Win32 only.
;sendmail_from = editique@maif.fr

vous pouvez m’expliquer
qu'est ce que signifie l'adresse editique@maif.fr
0
Rejoignez-nous