Précédent   Forum des professionnels en informatique > PHP > Outils > EasyPHP
EasyPHP Forum d'entraide sur EasyPHP : installation, utilisation, etc. Avant de poster -> Cours EasyPHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2007, 13h45   #1
Membre à l'essai
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 22
Points : 22
Par défaut probleme avec la fonction mail()

bonjour
j ai tester hier d'envoyer un mail via la fonction mail() mais sans acune resultat il me donne l'erreur suivante:
Citation:
Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in
.
j lai deja cite ca fait un an et qlq et ca marche et mnt je sais pas ou exactement le prob.
si vous avez trouve la solution contacte moi svp
voila mon scripte "envoyer.php"
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
/*
 * Created on 31 mars 07
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */
 $adr=$_POST["adrsmail"];
 $obj=$_POST["objet"];
 $mes=$_POST["message"];
 
    $headers ='From: "taha"<xxxx@hotmail.fr>'."\n"; 
     $headers .='Reply-To: xxxx@hotmail.fr'."\n"; 
     $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; 
     $headers .='Content-Transfer-Encoding: 8bit'; 
     if(mail($adr, $obj,$mes, $headers)) 
     { 
          echo 'Le message a bien été envoyé'; 
     } 
     else 
     { 
          echo 'Le message n\'a pu être envoyé'; 
     } 
?>
et merci
metrax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2007, 13h56   #2
Membre du Club
 
Inscription : octobre 2005
Messages : 112
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 112
Points : 65
Points : 65
Envoyer un message via Skype™ à lebreton22
Bonjour
Citation:
bonjour
j ai tester hier d'envoyer un mail via la fonction mail() mais sans acune resultat il me donne l'erreur suivante:
Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in .
j lai deja cite ca fait un an et qlq et ca marche et mnt je sais pas ou exactement le prob.
si vous avez trouve la solution contacte moi svp
voila mon scripte "envoyer.php"
Avant de comprendre, est-ce que tu peux traduire cela en français?
__________________
lebreton22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2007, 14h58   #3
Rédacteur/Modérateur
 
Avatar de N1bus
 
Inscription : janvier 2003
Messages : 2 018
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France, Charente Maritime (Poitou Charente)

Informations forums :
Inscription : janvier 2003
Messages : 2 018
Points : 1 992
Points : 1 992
Metrax : tu as la réponse dans le message d'erreur

Citation:
Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in .
N1bus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 17h18   #4
Membre à l'essai
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 22
Points : 22
Par défaut il me donne rien comme message

bbonjour j ai configurer le php.ini en mentionnenant le numero de port comme si de suite "smtp_port = 25" mais cette fois il m'affiche rien comme erreur mais au meme temps il n'envoi pas le mail . vous trouverez le scrypte ci joins avec mon message
Fichiers attachés
Type de fichier : rar envoimail.rar (1,1 Ko, 30 affichages)
metrax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 17h50   #5
Membre chevronné
 
Avatar de Hervé Saladin
 
Développeur Web
Inscription : décembre 2004
Messages : 636
Détails du profil
Informations personnelles :
Âge : 30

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2004
Messages : 636
Points : 689
Points : 689
Ben il te dit que le smtp n'est pas joignable.
T'es sûr que t'as un serveur smtp installé sur le même serveur, et qu'il est bien lancé ? (si je pose la question, c'est pasque j'ai une petite idée de la réponse ...).
Si ce n'est pas le cas, deux solutions :
- soit installer un serveur smtp
- soit en utiliser un autre et donc configurer PHP pour ne pas utiliser "localhost" comme serveur smtp, mais l'autre en question
__________________
Ne cliquez pas sur ce lien
Hervé Saladin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 19h06   #6
Membre à l'essai
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 22
Points : 22
Par défaut meme prob avec mail()

bonjour,
voila la partie qui concerne le probleme de mon php.ini
[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
; For Win32 only.
sendmail_from = metrax@hotmail.fr
d'apres ca mon serveur smtp c'est localhost et si je veux installe un autre serveur smtp comment ca et ou?
je pense que cette fonction mail() foction avec le localhost tres bien selon une documentation deja vecu.
en tt cas je souhaite avoir une solution pou ce prob
Merci infiniement
metrax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 19h51   #7
Membre chevronné
 
Avatar de Hervé Saladin
 
Développeur Web
Inscription : décembre 2004
Messages : 636
Détails du profil
Informations personnelles :
Âge : 30

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2004
Messages : 636
Points : 689
Points : 689
Citation:
Envoyé par metrax
d'apres ca mon serveur smtp c'est localhost et si je veux installe un autre serveur smtp comment ca et ou?
Attention, je crois que tu comprends mal.
la ligne de conf:ne signifie pas qu'il y a un serveur smtp d'installé sur ta machine, mais que ton php est configuré pour utiliser le serveur smtp de cette machine ... dans l'hypothèse ou il existe ! car si il n'y a aucun smtp d'installé sur ça ta machine, avec cette conf-là c'est normal que ça ne marche pas.
Donc, tu as le choix entre deux solutions :
- soit installer un serveur smtp sur cette machine, mais étant donné les questions que tu poses je pense qu'il vaut mieux que tu oublies.
- soit configurer php pour utiliser un autre serveur smtp qui éxiste déjà, comme (par exemple) celui ton fournisseur d'accès.
par exemple, moi qui suis chez free, je mettrais : Si tu n'es pas chez free, renseigne toi auprès de ton FAI pour avoir l'adresse de leur smtp s'ils en proposent un. Sinon, tu as peut être un client de messagerie type outlook/thunderbird &cie, dans ce cas regarde dans les params de connexion.
Citation:
Envoyé par metrax
je pense que cette fonction mail() foction avec le localhost tres bien selon une documentation deja vecu
oui, ça fonctionne très bien ... à condition d'avoir un serveur smtp d'installé sur ta machine, ce qui est rarement le cas par défaut avec un poste de travail sous windows et easyPHP. En installer un demande des compétences d'administration système/réseaux, et ici c'est développement/php.

Donc, pour résumer ton principal problème, c'est d'abord de trouver un smtp que tu peux utiliser, ensuite la configuration dans le php.ini est très simple.
__________________
Ne cliquez pas sur ce lien
Hervé Saladin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 20h37   #8
Membre à l'essai
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 22
Points : 22
Par défaut j ai compris,il rest que tester ce que j ai compris

Bonjours ami,
ja i compris le prob grace a votre explication,moi j'utilise le Gmail,j ai trouve le serveur smtp du gmail, c'est smtp.gmail.com, alors il rest que configurer le localhost de php.ini en lui mentionnenant le serveur et je reteste le script et je te contacte le resultat.
merci infiniement ami.
metrax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/04/2007, 13h27   #9
Membre à l'essai
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 22
Points : 22
Par défaut ca marche pas

Bonjours,
j ai configurer mon php.ini de cette facon
[mail function]
; For Win32 only.
SMTP = smtp.gmail.com
smtp_port = 25
; For Win32 only.
sendmail_from = moi@gmail.com

l'erreur que jai la dernier fois est disparu ca implique que jai bien configurer mon php.ini comme le menbre Hervé saladin m'a montre ,mais cette fois il me donne une erreur vraiment bizar!!! c'est il me dit que il vous manque une acolade a la ligne 40 et pourtant j'ai dans mon sript que 24 lignes,je sais quoi faire.
merci de me propoer qlq solutions.
ci joins mon script
Fichiers attachés
Type de fichier : rar envoimail.rar (1,1 Ko, 19 affichages)
metrax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/04/2007, 13h04   #10
Membre à l'essai
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 22
Points : 22
Par défaut une nouvelle erreur!!!!

j l ai essayé une autre fois et j ai senti que je suis pret de la solution mais cette fois il m'affiche cette erreur :
Warning: mail() [function.mail]: SMTP server response: 530 5.7.0 Must issue a STARTTLS command first z33sm3342822ikz in C:\Program Files\xampp\htdocs\envoimail\envoyer.php on line 18
Le message n'a pu être envoyé.

a titre d'information la configuration de mon php.ini c'est:
[mail function]
; For Win32 only.
SMTP = smtp.gmail.com
smtp_port = 25

; For Win32 only.
;sendmail_from = moi@gmail.com

est ce que l'erreur provienne du serveur smtp du gmail ou elle possede pas un?

je sais pas quoi cette erreur?
mercu pour votre aide.
metrax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/04/2007, 22h20   #11
Membre à l'essai
 
Inscription : octobre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 54
Points : 22
Points : 22
Par défaut je suis désolé!! j'ai oblié de deposer le code php

le code pour envoyer un message avec la fonction mail(), vous pouvez vous servir avec:
mais ce code considere que vous avez bien configurer votre php.ini:
par exemple moi j'utilise le messagerie Gmail:

Code :
1
2
3
4
5
6
7
[mail function]
; For Win32 only.
SMTP = smtp.gmail.com
smtp_port = 25
[mail function]
; For Win32 only.
;sendmail_from = <a href="mailto:moi@gmail.com">moi@gmail.com</a>
le code complet

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
//recuperer les variables de la formulaire mail.htm
 
     $headers .='From: "taha"<votre_adresse@gmail.com>'."\n"; 
     $headers .='Reply-To: votre_adresse@gmail.com'."\n"; 
     $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n"; 
     $headers .='Content-Transfer-Encoding: 8bit';
	 //verification des variable ,est ce qu'ils ont bien affecter
	 //variable adresse email
	 if (isset($_POST['adrsmail'])) {
                 $_POST['adrsmail']=trim(stripslashes($_POST['adrsmail']));
				 $adr=$_POST['adrsmail'];
				 echo "variable adresse bien affectee";
        }
		else{
		echo "\n"."variable adresse est mal affectee  "."\n";
		}
		//variable objet
		if (isset($_POST['objet'])) {
                 $_POST['objet']=trim(stripslashes($_POST['objet']));
				 $obj=$_POST['objet'];
				 echo "variable objet bien affectee  "."\n";
        }
		else{
		echo "variable objet est mal affectee   "."\n";
		}
		//variable message
        if (isset($_POST['message'])) {
                 $_POST['objet']=trim(stripslashes($_POST['message']));
				 $mes=$_POST['message'];
				 echo "variable message bien affectee  "."\n";
        }
		else{
		echo "variable message est mal affectee   "."\n";
		}
		//verification de la validite de l'adresse e-mail
	 if (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$adr)){
     // l'adresse e-mail n'est pas valide
                 echo "Votre adresse e-mail n'est pas valide...";
        }
// affichage des variables
	 echo $adr."\n";
	 echo $obj."\n";
	 echo $mes."\n";   
	 // l'envoie du message avec la fonction mail 
     if(@mail($adr, $obj,$mes,$headers)) 
     { 
          echo 'Le message a bien été envoyé'; 
     } 
     else 
     { 
          echo 'Le message n\'a pu être envoyé'." ".$adr; 
     } 
 
     ?>
metrax est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h50.


 
 
 
 
Partenaires

Hébergement Web