headers in PHP mail function

Hello:

I  am using PHP mail function. All is going well except the "FROM: " is not giving the correct email address. The header information is coded as follows:

    $headers = "From: DONOTREPLY@mysite.org\r\n";
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

By the way, the email is in HTML format.

What I get in the From field is "From: someid@myhostingdomain.com". What I want is "From: DONOTREPLY@mysite.com".
The idea is that the user will ask a question from the site and the answer is emailed to the user using PHP email. However, the userid used in from is supposed to be outgoing mailbox only. Since I do not know how to setup outgoing mailbox, what I am doing is using an email address that does not exist. In this case even if someone wants to reply to the email, they will get an error my their email system.

Thanks,
<<< Ali >>>
MohammadAliQureshiAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

 
Beverley PortlockCommented:
If you send email out from a non-existent domain, most receiving servers will treat it as spam and your users/customers will never get it. It is common for a mail server to do a reverse lookup on the originating IP and see if the claimed domain is present there.

Other than that, the 'from' address is not set in the headers, but the 'Reply-to' address is set there. The 'from' is the first parameter in the mail() function.
0

Experts Exchange Solution brought to you by ConnectWise

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
 
MohammadAliQureshiAuthor Commented:
Hello bportlock:
Thanks for the quick reply ...

The domain does exists, just the email is afake one. May be when server looksup the email address and does not find it, it treats as spam.

May be missed something, I think the TO is the first parameter in the mail() function, than subject, then message and then header.

May be I need to find out "How to setup outgoing only email address".

I will try to use a real email address in FROM and update you with the result.

Thanks,
<<< Ali >>>
0
 
Beverley PortlockCommented:
"I think the TO is the first parameter in the mail() function,"

In PHP's mail() function - I was thinking of the PEAR HTML-mail class. Sorry......  :-(

0
 
Dave BaldwinFixer of ProblemsCommented:
Sometimes you have to put a 5th parameter specifying the From address to get it to work right.  Otherwise, the email address that is in 'php.ini' is used.
<?php
mail($to, $subject, $message, $headers, "-femail.address@example.com");
?>

Open in new window

0
 
MohammadAliQureshiAuthor Commented:
I changed the from header to include a real email address and it is now working properly.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.