关于php发邮件mail函数的一些处理

今天尝试了一下使用php的mail函数进行简单的邮件收发,出现挺多的问题的。最后还好大概能解决了。

首先要用通过配置 XAMPP 提供的 sendmail 来使得 PHP 的 mail() 函数可以正常发送邮件:
我用的是qq测试的收发。。   其他应该也是类似的。

1.  找到 xampp/php/php.ini 文件,找到 [mail function] 语句块,修改如下:
[mail function]
SMTP = smtp.qq.com
smtp_port = 25
sendmail_from = xxx@qq.com
sendmail_path = "\"你的xampp安装目录\xampp\sendmail\sendmail.exe\" -t"
2. 找到 xampp/sendmail/sendmail.ini 文件,修改如下:
[sendmail]
smtp_server =  smtp.qq.com
smtp_port = 25
default_domain = qq.com
  debug_logfile=debug.log(这个打开方便你看错误改。)
auth_username = 你的邮箱@qq.com
auth_password = 邮箱密码

force_sender = xxx@qq.com(我这里不填就会出错。。)

然后就能在程序中正常运行了,截下来出现的是一个格式问题。
别人收到的邮件显示的发件人是和正常邮件不泰一样的。 于是我看了一下一个参考:

在使用hostmonster主机的mail(),sendmail()函数法邮件时发送用户名显示XXX@box356.hostmonster.com,在邮件用户名中用hostmonster的主机的标识符,怎么样才能使邮件格式为uname@domain.com

解决方法如下:

1.修改你的php.ini里面的sendmail地址sendmail_path = /usr/sbin/sendmail -t -i -f uname@domain.com

2就是规范发邮件的格式:

                   Examples of headers that should work would be:

Examples of headers that will NOT work:

  • From: “user@domain.com”
  • From: user @ domain.com

版权申明: HostMonster美国虚拟主机中文指南(http://www.hostmonstercn.com/)版权所有,转载请注明

于是乎。 我就在程序中的mail函数函数头那个参数。应该是第三个参数 参照这种格式

 $from = "From: \"你想叫啥\" \r\n";。。。。。。。。

mail($email, 'xxxx', $mesg, $from);

然后之后受到的邮件 就比较正常了。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值