社区
基础编程
帖子详情
WINDOWS下PHP发送EMAIL的问题。
flyonet
2005-05-20 10:24:22
mail函数在WINDOWS下应该是不好使的吧?
APACHE和PHP应该怎样配置,才可以用PHP发送出EMAIL?
有知道的可以指点一下吗?
...全文
597
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
系统中IIS环境的操作方式: 1、在c:/
windows
/
php
.ini中 将;extension=
php
_openssl.dll前面分号(注释)去掉 2、复制
php
安装目录中的: libeay32.dll ssleay32.dll 至c:/
windows
/system32 3、复制
PHP
/ext目录中的
php
_openssl.dll至c:/
windows
/system32 ...
php
配置
email
支持_【
PHP
】
Windows
下配置用mail()
发送
邮件
php
mail()函数在
windows
不能用,需要安装sendmail,假如是用的XAMPP,则已经下载好,不需要重新下载~1.从http://glob.com.au/sendmail/下载sendmail.zip2.解压到C:下,例如C:\
php
\sendmail,最好短路径,长路径名有可能产生
问题
。3.修改
php
.ini如下sendmail_path = "C:\wamp\sendmail\...
php
发送
邮箱
Email
①步骤一②
php
mailer,很好,无论原生还是放到框架下,
php
mailer下载地址 https://github.com/
PHP
Mailer/
PHP
Mailer<?
php
header("content-type:text/html;charset=utf-8"); include("class.
php
mailer.
php
"); include("class.smtp.
php
...
php
发送
邮件
email
1.
php
mailer,很好用,无论原生还是放到框架下,都没
问题
,
php
mailer下载地址 https://github.com/
PHP
Mailer/
PHP
Mailer
php
header("content-type:text/html;charset=utf-8"); include("class.
php
mailer.
php
"); include("class.smtp.p
windows
下
php
客服端
发送
email
mail()
php
mail()函数在
windows
不能用,需要安装sendmail
php
mail()函数在
windows
不能用,需要安装sendmail。 1.从http://glob.com.au/sendmail/下载sendmail.zip 2.解压到C:下,例如C:\
PHP
\sendmail,最好短路径,长路径名有可能产生
问题
。 3.修改
php
.ini如下 sendmail_
基础编程
21,889
社区成员
140,329
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章