I have a script written using PHP's mail() function to send an email to a user after they complete a form on my website, as well as to send an email to a friend's email account that the user supplies. Like a "tell a friend about this site" email.
What tips and tricks can I persue to ensure that the emails are recieved, and stay out of the spam folder?
Does it make a difference if the email is html or not? Are there certain works or linking styles best to avoid? Are there ways to get white listed by email servers?
If it makes a difference, each email is sent one at a time, and only when the form is submitted.
One thing I would make sure of is the "friend" getting the email they know who the email is from maybe put the friends name in the email title so they see their name and don't just hit the spam button.
If I don't know the sender many times I just hit spam and it is gone.
This is about the only place I can see ya getting into trouble with spam the other is a not the issue.
Make sure your server is not sending out email as the "nobody" user. Some scripts instead of authenticating or if your host/server is not using phpsuexec then the emails get sent from "nobody" instead of email@example.com
I ran into this problem on a client's site and for my client we had 2 possible fixes:
1. Change how php was used on the server to use phpsuexec
2. Rewrite the scripts that they were using to make certain all of them "authenticated" and did not use the nobody user to send email which is the default way that php will send unless you change the php settings on the server.
3. If all your other email is getting through ok, and it is just your script, then try making sure you are authenticating with a real user that has an account on the box and see if that helps.
Make sure that your domain dns have spf Record Defined.
to get your right SPF record for hotmail go to this link: [microsoft.com...]
Go through the wizard, fill your preferences, then you will have a ready SPF record. search google to make sure how to add it, or contact your server administrator to add it, then allow 24\48 hours for update, this should let your messages go to inbox in hotmail \ msn accounts, if not contact microsoft to fix it telling them you defined your SPF record.
Adding the record will help getting emails to inbox in google and yahoo as i believe, i think it will work for gmail, you should try it with yahoo.