请教:PHP实现邮件发送

时间:2022-09-24 12:05:29
大家好,我是初学者,
但是目前有个问题比较紧急,
希望有这方面经验的朋友指点。

这样子的,我想用PHP实现邮件自动发送。
比如说,有个表单里面有:sendtomail,mailsubject,mailbody等几项,
另外有个按钮submit
我想在点击submit时候,将邮件自动发送到"sendtomail"对应当Email中,

请教高手:留下相关实现的代码?(完整)
这里先谢谢了。

19 个解决方案

#1


要配置好邮件服务器才可以用

mail
寄出电子邮件。

语法: boolean mail(string to, string subject, string message, string [additional_headers]);

返回值: 布尔值

函数种类: 网络系统


 
 
内容说明 


本函数寄出电子邮件到指定的邮件地址 to,subject 表示主题,message 为信件内容。额外的选项 additional_headers 可省略,表示其它的邮件文件头。


 
 
使用范例 


<?
$message="abcdefghijklmnopqrstuvwxyz";
mail("php@wilson.gs", "没有主题", $message, "From: someone@wahaha.org.tw\nReply-To: reply@wahaha.org.tw\nX-Mailer: PHP/" . phpversion());
?> 

#2


$to  :对方的邮件地址
$from :你的邮件地址
$msg   :消息
$title  :消息名称
smtp.sina.com  :邮件服务器的地址,要换成你的邮件服务器的地址

function mail($to, $title, $msg, $from, $fromName=NULL){
        ini_set("SMTP", "smtp.sina.com");
ini_Set('smtp_port', 25);
return @mail($to, $title, $msg, "From: $fromName\r\nReply-To: $from\r\nContent-type:text/html\r\nX-Mailer: PHP/".phpversion());
    }

#3


这个要看你的系统是什么样的如果windows的就不行了,
linux是可以的。

#4


给你一个好用的类:
http://www.phpe.net/class/35.shtml

#5


最简单就是
mail($sendtomail,$mailsubject,$mailbody);

#6


呵呵,我的系统是windows的,
我不是特别明白,为什么一定要配置邮件服务器呢,
这个类似于用outlook来发送邮件,
只是将相关内容匹配到邮件载体而已。

#7


直接在代码里写上以上的代码就可以实现!

#8


在Windows下如果不配置本机的邮件服务器,那么mail()函数就不可以用。你用一个最简单的代码编辑器就可以看到mail()颜色都没有变。

如果你的php空间支持mail(),直接传上去就可以发邮件了。

难点并不是mail()函数本身!

如果觉得这种方法不是很好,可以利用socket来实现发送邮件,能达到同样的效果。

#9


mail($收件人EMAIL,$主题,$内容);

#10


我不是特别明白,为什么一定要配置邮件服务器呢,
这个类似于用outlook来发送邮件,
只是将相关内容匹配到邮件载体而已。
------------------------------------------------
outlook里发信的时候不也要配置SMTP的服务器地址,如果有身份验证的话还要配置用户名和密码
你想发信就必须配置邮件服务器。
WIN系统不自带邮件服务器,需要你指定SMTP服务器地址。不过现在一般都要求身份验证了。
如果程序在LINUX下使用MAIL函数,就会使用系统的SENDMAIL服务器(如果你不做特别设置的话),这个服务器是不需要身份验证的,所以在LINUX下使用MAIL函数是十分方便的。
当然,在WIN系统下也可以通过SOCKET连接SMTP服务器来发信,不过比较麻烦

#11


如果mail函数不可以用的话,也可以用socket连接smtp发信,有写好类,phpclasses.org 上有

#12


先把服务器配好
用mail函数就可以
boolean mail(string to, string subject, string message, string [additional_headers]);

mail($EMAIL,$TITLE,$BODY);

#13


怎么配置邮件服务器啊??有哪些步骤??如果我想做成类似注册后系统自动发送一封信给用户,让用户到某个地址确认注册的mail怎么做啊?

#14


帮顶,我也想知道怎么个调法啊,有什么相关的资料告诉我们罗,谢谢!

#15


win系统可以装webeasymail等
linux系统可以装sendmail,qmail等
装好配置好后,修改php.ini中的相关项就可以用mail函数了。

或是去下载http://www.phpclasses.org/browse/package/1044.html
经测试这个类可以连接需要验证的smtp服务器发信

#16


http://zwills.xxiyy.com/mikespook/softlist.asp?id=72
WIN和LINUX下都可以用,不过一定要配置好服务器~~

#17


php.ini:

   sendmail_path=??????????????

    I installed Sendmail using RPM,  so is it /usr/sbin  ??

    I have tried it,but  failed!  :(

   3ks!

#18


谢谢大家,我要好好试试。
这里的朋友真好。
如果有更好的方法,
请继续。

#19


function send_mail($to, $title, $msg, $from, $fromName=NULL,$smtphost)
{
        ini_set("SMTP", $smtphost);
ini_Set('smtp_port', 25);
return @mail($to, $title, $msg, "From: $fromName\r\nReply-To: $from\r\nContent-type:text/html\r\nX-Mailer: PHP/".phpversion());
}

#1


要配置好邮件服务器才可以用

mail
寄出电子邮件。

语法: boolean mail(string to, string subject, string message, string [additional_headers]);

返回值: 布尔值

函数种类: 网络系统


 
 
内容说明 


本函数寄出电子邮件到指定的邮件地址 to,subject 表示主题,message 为信件内容。额外的选项 additional_headers 可省略,表示其它的邮件文件头。


 
 
使用范例 


<?
$message="abcdefghijklmnopqrstuvwxyz";
mail("php@wilson.gs", "没有主题", $message, "From: someone@wahaha.org.tw\nReply-To: reply@wahaha.org.tw\nX-Mailer: PHP/" . phpversion());
?> 

#2


$to  :对方的邮件地址
$from :你的邮件地址
$msg   :消息
$title  :消息名称
smtp.sina.com  :邮件服务器的地址,要换成你的邮件服务器的地址

function mail($to, $title, $msg, $from, $fromName=NULL){
        ini_set("SMTP", "smtp.sina.com");
ini_Set('smtp_port', 25);
return @mail($to, $title, $msg, "From: $fromName\r\nReply-To: $from\r\nContent-type:text/html\r\nX-Mailer: PHP/".phpversion());
    }

#3


这个要看你的系统是什么样的如果windows的就不行了,
linux是可以的。

#4


给你一个好用的类:
http://www.phpe.net/class/35.shtml

#5


最简单就是
mail($sendtomail,$mailsubject,$mailbody);

#6


呵呵,我的系统是windows的,
我不是特别明白,为什么一定要配置邮件服务器呢,
这个类似于用outlook来发送邮件,
只是将相关内容匹配到邮件载体而已。

#7


直接在代码里写上以上的代码就可以实现!

#8


在Windows下如果不配置本机的邮件服务器,那么mail()函数就不可以用。你用一个最简单的代码编辑器就可以看到mail()颜色都没有变。

如果你的php空间支持mail(),直接传上去就可以发邮件了。

难点并不是mail()函数本身!

如果觉得这种方法不是很好,可以利用socket来实现发送邮件,能达到同样的效果。

#9


mail($收件人EMAIL,$主题,$内容);

#10


我不是特别明白,为什么一定要配置邮件服务器呢,
这个类似于用outlook来发送邮件,
只是将相关内容匹配到邮件载体而已。
------------------------------------------------
outlook里发信的时候不也要配置SMTP的服务器地址,如果有身份验证的话还要配置用户名和密码
你想发信就必须配置邮件服务器。
WIN系统不自带邮件服务器,需要你指定SMTP服务器地址。不过现在一般都要求身份验证了。
如果程序在LINUX下使用MAIL函数,就会使用系统的SENDMAIL服务器(如果你不做特别设置的话),这个服务器是不需要身份验证的,所以在LINUX下使用MAIL函数是十分方便的。
当然,在WIN系统下也可以通过SOCKET连接SMTP服务器来发信,不过比较麻烦

#11


如果mail函数不可以用的话,也可以用socket连接smtp发信,有写好类,phpclasses.org 上有

#12


先把服务器配好
用mail函数就可以
boolean mail(string to, string subject, string message, string [additional_headers]);

mail($EMAIL,$TITLE,$BODY);

#13


怎么配置邮件服务器啊??有哪些步骤??如果我想做成类似注册后系统自动发送一封信给用户,让用户到某个地址确认注册的mail怎么做啊?

#14


帮顶,我也想知道怎么个调法啊,有什么相关的资料告诉我们罗,谢谢!

#15


win系统可以装webeasymail等
linux系统可以装sendmail,qmail等
装好配置好后,修改php.ini中的相关项就可以用mail函数了。

或是去下载http://www.phpclasses.org/browse/package/1044.html
经测试这个类可以连接需要验证的smtp服务器发信

#16


http://zwills.xxiyy.com/mikespook/softlist.asp?id=72
WIN和LINUX下都可以用,不过一定要配置好服务器~~

#17


php.ini:

   sendmail_path=??????????????

    I installed Sendmail using RPM,  so is it /usr/sbin  ??

    I have tried it,but  failed!  :(

   3ks!

#18


谢谢大家,我要好好试试。
这里的朋友真好。
如果有更好的方法,
请继续。

#19


function send_mail($to, $title, $msg, $from, $fromName=NULL,$smtphost)
{
        ini_set("SMTP", $smtphost);
ini_Set('smtp_port', 25);
return @mail($to, $title, $msg, "From: $fromName\r\nReply-To: $from\r\nContent-type:text/html\r\nX-Mailer: PHP/".phpversion());
}

#20