2010-02-04 9 views
0

J'ai écrit un formulaire de contact e-mail en php. J'utilise le paquet Pear Mail pour envoyer l'email. Cela fonctionne bien sur mon ordinateur de développement, mais pas sur le serveur. Voici le code:Problème d'envoi de courrier avec Pear en PHP

////////////////////////////////////////////////// 
// EMAIL OPTIONS 
////////////////////////////////////////////////// 
$to = "[email protected]";    
$subject = "Contact Form Submission";   
$smtphost = "localhost"; 
$port = "25"; 
$authenticate = false; 
$username = "smtp_username"; 
$password = "smtp_password"; 

// create and send the email 
$from = $_POST['fullname'] . " <" . $_POST['email'] . ">"; 
$body = str_replace($ph, $rv, $emailTemplate); 

$headers = array (
    'MIME-Version' => '1.0', 
    'Content-type' => 'text/html; charset=iso-8859-1', 
    'From' => $from, 
    'To' => $to, 
    'Subject' => $subject); 

$smtp = Mail::factory('smtp', 
    array ('host' => $smtphost, 
    'port' => $port, 
    'auth' => $authenticate, 
    'username' => $username, 
    'password' => $password)); 

$mail = $smtp->send($to, $headers, $body); 

$error = PEAR::isError($mail); 

if ($error){ 
    echo 'An error occurred.'; 
} 
else { 
    require('thanks.php'); 
    exit; 
} 

Je ne sais pas pourquoi cela échoue sur le serveur. Comment puis-je obtenir des informations plus utiles sur mon objet $ error?

Faisant écho des résultats d'erreur $ avec

1 

Répondre

0

Essayez Changin le $smtphost = "localhost"; à votre domaine de serveur url

+0

Cela ne veut pas réponds à ma question sur l'obtention d'informations plus utiles à partir de l'objet $ error. Je ne m'inquiète pas de l'erreur de mon hôte serveur smtp. –

+0

S'il vous plaît Poster la sortie de $ error – streetparade

+0

Si je fais juste écho $ erreur tout ce que je reçois est 1. –

Questions connexes