社区
基础编程
帖子详情
WINDOWS下PHP发送EMAIL的问题。
flyonet
2005-05-20 10:24:22
mail函数在WINDOWS下应该是不好使的吧?
APACHE和PHP应该怎样配置,才可以用PHP发送出EMAIL?
有知道的可以指点一下吗?
...全文
574
12
打赏
收藏
WINDOWS下PHP发送EMAIL的问题。
mail函数在WINDOWS下应该是不好使的吧? APACHE和PHP应该怎样配置,才可以用PHP发送出EMAIL? 有知道的可以指点一下吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
flyonet
2005-06-03
打赏
举报
回复
各位仁兄,有没有能给我一个比较全面的说明的?
zhiin1
2005-05-22
打赏
举报
回复
在win32环境下 如何才能使支持mail函数直接发送呢?
wildlily980
2005-05-20
打赏
举报
回复
我用socket和类发送邮件,从来没有发送出过正文。
主题倒是可以。
flyonet
2005-05-20
打赏
举报
回复
TO:keaizhong(可爱钟)
可以详细说说吗?
TO:coolstr(占卜师)
用keaizhong(可爱钟)说的IIS的SMTP服务器不知道可不可以?
coolstr
2005-05-20
打赏
举报
回复
其实你只要找到一个可以匿名发邮件的邮件服务器,然后修改php.ini以下部分
[mail function]
; For Win32 only.
SMTP = localhost ; for Win32 only
smtp_port = 25
sendmail_from= me@localhost.com ; for Win32 only
将localhost改为 可以匿名发邮件的邮件服务器的地址即可。
mrshelly
2005-05-20
打赏
举报
回复
建议用 Socket + SMTP 类去发送。~~~~
keaizhong
2005-05-20
打赏
举报
回复
网上有些教程可以参考,但有一些注意点。
首先你要有邮件服务器,IIS自带的有一个,
其次就是关闭一些防火墙,这个对发邮件有影响,之前我怎么也发不出去,关掉就可以。
wjjchen
2005-05-20
打赏
举报
回复
<?
function send_mail($to,$from,$subject, $message,$html=0)
{
//使用本函数之前,务必请定义好以下变量
#############################################
$smtp ="exmaple.com"; //SMTP 服务器
$check = 1;
//SMTP需要要身份验证设值为 1 不需要身份验证值为 0,现在大多数的SMTP服务商都要验证,如不清楚请与你的smtp 服务商联系。
if ($check) {
$username = "adsf@exmaple.com"; //您的email帐号名称
$password = "exmaple"; //您的email密码
}
$s_from = "adsf@exmaple.com"; //此email 必需是发信服务器上的email
###############################################
//连接服务器
$fp = fsockopen ( $smtp, 25, $errno, $errstr, 60);
if (!$fp ) return "联接服务器失败".__LINE__;
set_socket_blocking($fp, true );
$lastmessage=fgets($fp,512);
if ( substr($lastmessage,0,3) != 220 ) return "错误信息A:".$lastmessage.__LINE__;
//HELO
$yourname = "admin";
if($check == "1") $lastact="EHLO ".$yourname."\r\n";
else $lastact="HELO ".$yourname."\r\n";
fputs($fp, $lastact);
$lastmessage == fgets($fp,512);
if (substr($lastmessage,0,3) != 220 ) return "错误信息B$lastmessage".__LINE__;
while (true) {
$lastmessage = fgets($fp,512);
if ( (substr($lastmessage,3,1) != "-") or (empty($lastmessage)) )
break;
}
//身份验证
if ($check=="1") {
//验证开始
$lastact="AUTH LOGIN"."\r\n";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 334) return "错误信息C$lastmessage".__LINE__;
//用户姓名
$lastact=base64_encode($username)."\r\n";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 334) return "错误信息D$lastmessage".__LINE__;
//用户密码
$lastact=base64_encode($password)."\r\n";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != "235") return "错误信息E$lastmessage".__LINE__;
}
//FROM:
//$lastact="MAIL FROM: $s_from" . "\r\n";
$lastact="MAIL FROM: ".$s_from. "\r\n";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 250) return "错误信息F$lastmessage".__LINE__;
//TO:
$lastact="RCPT To: $to" . "\r\n";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 250) return "错误信息G$lastmessage".__LINE__;
//DATA
$lastact="DATA\r\n";
fputs($fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 354) return "错误信息H$lastmessage".__LINE__;
//处理Subject头
$head="Subject: $subject\r\n";
$message = $head."\r\n".$message;
//处理From头
$head="From: $from\r\n";
$message = $head.$message;
//处理To头
$head="To: $to\r\n";
$message = $head.$message;
if($html==1)
{
$head = "Content-type:text/html\r\n";
$message =$head.$message;
}
//加上结束串
$message .= "\r\n.\r\n";
//发送信息
fputs($fp, $message);
$lastact="QUIT\r\n";
fputs($fp,$lastact);
fclose($fp);
return 0;
}
?>
zhiin1
2005-05-20
打赏
举报
回复
谁给个全面例子呢?
用 Socket + SMTP 类发送邮件不稳定的 而且速度太慢
keaizhong
2005-05-20
打赏
举报
回复
[mail function]
; For Win32 only.
SMTP = localhost ; for Win32 only
smtp_port = 25
sendmail_from= me@localhost.com ; for Win32 only
你装起来试一下就知道了,再把上面的改成相应的
我以前试过可以的。
不过我从来都没有在项目中正式用过这功能。
ray929
2005-05-20
打赏
举报
回复
在自己的电脑上装一个微型的SMTP服务器吧
guiwenxing123
2005-05-20
打赏
举报
回复
欢迎大家加入PHP+WML开发WAP:QQ群:8352641 大家共同进步!
WIN下如何在
PHP
扩展里打开openssl支持?
本文详细介绍了在
Windows
系统中配置
PHP
OpenSSL的步骤,包括修改
php
.ini、复制DLL文件和重启IIS等操作。同时解答了在使用CI的
email
类
发送
邮件时遇到的ssl连接错误
问题
,并提供了开启mcrypt和OpenSSL支持的方法。
php
配置
email
支持_【
PHP
】
Windows
下配置用mail()
发送
邮件
本文详细介绍如何在
Windows
环境下配置
PHP
使用sendmail
发送
邮件,并提供使用
PHP
Mailer进行邮件
发送
的替代方案。
php
发送
邮箱
Email
本文介绍了如何使用
PHP
Mailer库来
发送
邮件,包括设置SMTP服务器、身份验证、指定发件人和收件人等步骤,并提供了完整的示例代码。此外,还提到了在
Windows
环境下使用原生mail()函数前需要安装sendmail。
php
发送
邮件
email
本文介绍了如何使用
PHP
Mailer库在
PHP
中
发送
邮件,无论是原生环境还是CI框架下都能顺利应用。此外,还提到了在Linux和
Windows
系统上配置mail()函数的方法。
windows
下
php
客服端
发送
email
mail()
本文介绍如何在
Windows
环境下配置
PHP
使用sendmail
发送
邮件的方法,包括下载安装sendmail、配置
php
.ini及sendmail.ini文件的具体步骤,并通过示例代码验证配置是否成功。
基础编程
21,889
社区成员
140,337
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章