tanvirtonu Posted November 9, 2007 Share Posted November 9, 2007 I have tried several ways to send mail but I hav failed and I m veryyyyyy upset. Now I have few question about mail sending in php 1. I cant/dont use the smtp server of my ISP. Now which server I can send my mail thru? 2. I want to use yahoo smtp mail server. Now do I have to set yahoo smtp server name and port in php.ini? Cant I set these (both name and port)dynamically in php. if so, how? 3.If the server name I m using uses authenticated smtp, WHERE and how to put code for this in php . If in mail header then in which format? 4. I hav come to know the following things from website of yahoo- Outgoing Mail (SMTP) Server: smtp.mail.yahoo.com (Use SSL, port: 465, use authentication) I am also giving u my account details My yahoo id- bhonest_4ever2007@yahoo.com (created 2day for the test) password- abcdefg Now would anybody pls pls tel me or write me a simple code by which I can send mail without using my Isp's smtp server. DO I need to use those info. in php.ini . Or is there any way to add them dynamically in php. I once tried with the following code but nothing happened <?php //mail($recepeint,$subject,$msg,$mailheader); //define the receiver of the email $to = 'bhonest_4ever@yahoo.com'; //define the subject of the email $subject = 'Test email'; //define the message to be sent. Each line should be separated with \n $message = "Hello World!\r\nThis is my first mail."; //define the headers we want passed. Note that they are separated with \r\n $headers = "From: tanvirtonu@yahoo.com\r\nReply-To: tanvirtonu@yahoo.com"; //send the email $mail_sent = @mail( $to, $subject, $message, $headers ); //if the message is sent successfully print "Mail sent". Otherwise print "Mail failed" echo $mail_sent ? "Mail sent" : "Mail failed"; echo "Thank You <b>Tanvir</b> for ur message"; echo "<p>Your mail address is <p>$to </p>"; echo "<p>Your message was <p> $message </p>"; ?> //I set server=smtp.mail.yahoo.com and port=25 in php.ini and restart the server . NB. If I configure php.ini in php code using ini_set(), wouldn't it be permanent next time. But what happens if I host these php file in another server. There can be a lot other php files trying to do the same thing. Isn't it a problem. I can also send mail using a free smtp server and a mail client in my windows pc which requires default 25 port for smtp. Should I use this port-25 with the above server name smtp.mail.yahoo.com[/code] Quote Link to comment Share on other sites More sharing options...
severndigital Posted November 9, 2007 Share Posted November 9, 2007 switch to PHPMailer http://phpmailer.sourceforge.net/ you can define ANY smtp server form within the script. you don't need to mess with php.ini Also, you may need to check and see if you can even hit the yahoo smtp server. I know that you can only access email outside of the Yahoo Webmail interface with the paid subscription version of yahoo mail. Quote Link to comment Share on other sites More sharing options...
tanvirtonu Posted November 9, 2007 Author Share Posted November 9, 2007 I tried with PHP mailer but it didnt work. All problem is with correct server name and port or something else. Quote Link to comment Share on other sites More sharing options...
severndigital Posted November 9, 2007 Share Posted November 9, 2007 then i would definitely make sure you can access the yahoo smtp server. I would assume they have it wrapped up tighter than a drum to eliminate spam usage. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.