On Nov 14, 2012, at 10:48 PM, tamouse mailing lists <tamouse.li...@gmail.com> 
wrote:

> On Wed, Nov 14, 2012 at 7:19 PM, Rick Dwyer <rpdw...@earthlink.net> wrote:
>> Hello all.
>> 
>> I have some Pear Mail code composing an email and sending it to an external 
>> smtp server for sending.
>> 
>> The issue is determining whether that external server actually accepted the 
>> mail or not.  In the IF(PEAR… code below, it will return success even if I 
>> leave the $to value empty.  However, if I remove the smtp username or 
>> password, it will return an error indicating it could not reach the remote 
>> server.  So the Pear::IsError function seems to only reflect if the intended 
>> server was accessible… and not if the intended server accepted the outgoing 
>> email for delivery.
>> 
>> Anyone have experience with the scenario below… specifically with 
>> determining if the smtp server accepted the mail for delivery?
>> 
>> Thanks for any info.
>> 
>> --Rick
>> 
>> require_once "Mail.php";
>> 
>> $from = "f...@address.com";
>> $to = "t...@address.com";
>> $subject = "Hello!";
>> $body = "Hello!";
>> 
>> $host = "mail.host.net";
>> $username = "myuser";
>> $password = "mypass";
>> 
>> $headers = array ('From' => $from,'To' => $to,'Subject' => $subject);
>> $smtp = Mail::factory('smtp',array ('host' => $host,'auth' => 
>> true,'username' => $username,'password' => $password));
> 
> I'd suggest putting a check here to see if $smtp is a PEAR::Error
> object as well:
> 
> if (PEAR::isError($smtp)) {
>  echo ("<p>" . $smtp->getMessage() . "</p>");
>  // die or return or skip the next part, whatever
> } else {

Same result… which is to say no error returned even for messages sent with no 
email in the to address field.

--Rick


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to