操作系统:windows. 相关配置信息: *************************************php.ini************************************************* [mail function] ; For Win32 only. SMTP = smtp.qq.com smtp_port = 465 ;For Win32 only. sendmail_from = rrrrrise@hotmail.com ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). sendmail_path ="D:/Install/sendmail/sendmail.exe -t" ***************************************sendmail.ini********************************************** smtp_server=smtp.qq.com ; smtp port (normally 25) smtp_port=465 auth_username=9等等等等6@qq.com auth_password=M省略x.7 //密码有符号可以吧 force_sender=9等等等等6@qq.com *************************************测试脚本****************************************** <?php $now = date("Y-m-d h:i:s"); $from_name = '测试寄件人'; $from_email = $headers = 'From: $from_name <$from_email>'; $body = '嗨, \n 这是一封测试邮件来自 $from_name <$from_email>.'; $subject = '[$now] 测试邮件发送'; $to = 'rrrrrise@hotmail.com'; if (mail($to, $subject, $body, $headers)) { echo "success!"; } else { echo "fail…"; } ?> 一直是fail 调试信息: 14/08/25 17:56:39 ** Connecting to smtp.qq.com:465 14/08/25 17:56:40 ** Disconnected. …… 14/08/25 17:56:40 ** Socket Error # 10060<EOL>Connection timed out.
可以采用 phpmailer类,来做邮件发送,这也是很多PHP程序所采用的一个类发送,你做出来的程序,给别人用或者开发,别人也跟着修改php.ini吧
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
require (ROOT. '/class/phpMailer.class.php' ); //邮件发送类 /** * 发送邮件 * @param string $to 接收人邮件地址 * @param string $title 邮件标题 * @param string $contents 邮件内容 * @param string $type 判断是否要加附件 * @param string $accessory 附件的名字 * @return 成功返回true,失败返回错误信息 */ function sendEmail( $to , $title , $contents , $type = '' , $accessory = '' ){ $mail = new PhpMailer(true); $mail ->IsSMTP(); $mail ->CharSet = "UTF-8" ; //编码 $mail ->Debugoutput = 'html' ; $mail ->Host = T_SMTP_SERVER; //HOST 地址 $mail ->Port = 25; //端口 $mail ->SMTPAuth = true; $mail ->Username = T_SMTP_LOGIN; //用户名 $mail ->Password = T_SMTP_PASSWORD; //密码 $mail ->SetFrom(T_SMTP_FROM,T_SMTP_FROM_NAME); //发件人地址, 发件人名称 $mail ->AddAddress( $to ); //收信人地址 //$mail->Subject = "=?utf-8?B?" . <a href="https://www.baidu.com/s?wd=base64_encode&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dBuHbvPW9hmvnzP1f1mHFh0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EP1fYPHRsn1DdPHRYPWD4nWDz" target="_blank" class="baidu-highlight">base64_encode</a>() . "?="; if (! empty ( $type )) { $mail ->AddAttachment( $type , $accessory ); // 添加附件,并指定名称 } $mail ->Subject = $title ; //邮件标题 $mail ->MsgHTML( $contents ); if ( $mail ->Send()){ return true; } else { return $mail ->errorMessage(); } } |