社区
基础编程
帖子详情
WINDOWS下PHP发送EMAIL的问题。
flyonet
2005-05-20 10:24:22
mail函数在WINDOWS下应该是不好使的吧?
APACHE和PHP应该怎样配置,才可以用PHP发送出EMAIL?
有知道的可以指点一下吗?
...全文
512
12
打赏
收藏
WINDOWS下PHP发送EMAIL的问题。
mail函数在WINDOWS下应该是不好使的吧? APACHE和PHP应该怎样配置,才可以用PHP发送出EMAIL? 有知道的可以指点一下吗?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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 大家共同进步!
windows
下
php
客服端
发送
email
mail()
php
mail()函数在
windows
不能用,需要安装sendmail
php
mail()函数在
windows
不能用,需要安装sendmail...2.解压到C:下,例如C:\
PHP
\sendmail,最好短路径,长路径名有可能产生
问题
。 3.修改
php
.ini如下 sendmail_
php
的
email
函数
发送
失败,
PHP
邮件功能无法完成电子邮件的
发送
您的脚本似乎没有
发送
电子邮件的原因有多种。除非有明显的语法错误,否则很难诊断这些事情。如果没有,您需要查看下面的清单,找出您可能遇到的任何潜在陷阱。确保启用错误报告并将其设置为报告所有错误错误报告对于...
php
发送
邮件的方式,
php
发送
邮件几种方式
一 使用
php
mail 函数在
windows
下使用mail 函数进行
发送
,连接到邮件服务器,使用的是smtp 协议,但不支持esmtp 协议,即只能实现直投,不支持登录的转发,服务器地址是最终的邮件服务器地址,是在
php
.ini ...
「
PHP
系列」
PHP
发送
电子邮件详解
此外,如果你想要更多的控制和灵活性,你也可以使用第三方库,如
PHP
Mailer 或 SwiftMailer。函数
发送
邮件可能会受到一些限制,如
发送
频率、邮件大小等。此外,由于它依赖于服务器上的邮件
发送
工具,因此可能会受到...
php
在
windows
下
发送
邮件实现
其实
PHP
语言自己已经有一个
发送
邮件的方法(mail()方法),且不说这个方法实现的功能很少,想要利用mail()方法来
发送
邮件就必须要自己配置好smtp服务器,这里就不讲mail()的使用方法了(函数调用确实很简单)。...
基础编程
21,893
社区成员
140,347
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章