probleme envoi mail

Invité
Invité n'ayant pas de compte PHPfrance

22 déc. 2009, 11:41

Bonjour,

Tout d'abord j'ai installé pear, mais le souci c'est que je ne sais pas comment faire pour voir s'il ai bien installé. J'ai fait un phpinfo() et j'ai bien la ligne :
include_path c:\php5\PEAR c:\php5\PEAR, mais nul part ailleur je n'ai PEAR d'affiché, es-ce normal ?

J'envoi un mail de cette manière :
<?php
include("PEAR.php");
include("Mail.php");

$recipients = "destinataire";

$headers["From"]    = "mail from";
$headers["To"]      = "mail to";
$headers["Subject"] = "Test message";

$body = "TEST MESSAGE!!!";

$params["host"] = "smtp.orange.fr";
$params["port"] = "25";


$mail_object =& Mail::factory('smtp', $params);
if (PEAR::isError($mail_object))
{
  print "<p>construction de l'objet 'Mail' ratée car ";
  die($mail_object->getMessage());
} else
{
  print "<p>objet 'Mail'  construit !";
}
$send_result = $mail_object->send($recipients,$headers,$body);
if (PEAR::isError($send_result))
{
  print "<p>envoi de l'email raté car ";
  die($send_result->getMessage());
} else
{
  print "<p>envoyé !";
}

?>
cela m'affiche a l'ecran juste objet 'Mail' construit !, mais rien d'autre, aucun message d'erreur.
Auriez vous une idée.

Merci

ViPHP
ViPHP | 1136 Messages

22 déc. 2009, 12:49

Salut,

juste pour info :
$mail_object =& Mail::factory('smtp', $params);
le & signifiant que $mail_object sera une référence n'est plus necessaire en php 5 , en effet tout les objets sont automatiquement passé par référence ...


Pour ton probléme :

Comment gères tu l'affichage de tes erreur ? à l'écran ? dans les logs ?
Si c'est dans les logs , as tu été jeter un oeil ?

car si j'ai bien compris , ni

"envoi de l'email raté car "

ni

"envoyé !"

n'est affiché à l'écran ?

Invité
Invité n'ayant pas de compte PHPfrance

22 déc. 2009, 13:07

en effet ni "envoi de l'email raté car "

ni

"envoyé !"

n'est affiché à l'écran !

je viens de voir sur internet pour ma connexion , je suis obliger d'inclure db de la manière suivante ? ou je peux garder mon ancienne connexion.
session_start(); 
require_once('DB.php'); // Indispensable

$dbType = "mysql";
$host = "localhost";
$account = "root";
$pass = "***";
$dbName = "base";
$dsn = "$dbType://$account:$pass@$host/$dbName";

$db = DB::connect($dsn);

if (PEAR::isError($db)) {
echo "Erreur: ".$db->getMessage();
}
Comment gères tu l'affichage de tes erreur ? à l'écran ? dans les logs ?
Si c'est dans les logs , as tu été jeter un oeil ?
je ne sais pas ou je dois regarder ?

merci d'avance

ViPHP
ViPHP | 1136 Messages

22 déc. 2009, 13:14

DB ? c'est un autre probléme ?

si DB est une classe de PEAR , alors l'appel
require_once('DB.php');
est parfait .

Pour les logs :

que retourne :
var_dump(ini_get ( "display_errors" ));

Invité
Invité n'ayant pas de compte PHPfrance

22 déc. 2009, 15:09

cela affiche string(0) ""