Father, Google is your friend. In short, there is no easy answer to your question. Email delivery is not very trivial, especially since it is completely independent of your programming.
99% is your host error. If you use VPSing or on a shared hosting, you can forget about it, since you inherit the reputation of another 300 people using the same server.
If you have a server, check your IP reputation and then indicate that you need 2-3 months of flawless email to start receiving through.
5K, , ReturnPath - CampaignMonitor MailChimp ESP .
DEBUG: root/shell, :
- "dig mx yahoo.com"
- telnet (IP/) 25
- SMTP
- , Yahoo.
P.S. , ! , SMTP-, . , SMTP- Yahoo: , , .
P.P.S. DNS, SPF, DKIM MTA. , .
P.P.P.S. http://www.senderbase.org/, IP-.
.