NT下基于邮件服务软件(IMAIL)的发送程序


如果你无法在服务器上安装IMAIL,那只能通过socket来发送邮件。但是如果你幸运的话,也可以用163/sina的

smtp服务。

例程如下(原程序由马毅兄提供):
<HTML>
<HEAD>
<TITLE>Mail Form anywhere </TITLE>
</HEAD>
<BODY>
<?
if($sendit)
{
$smtpserver="202.110.200.242" ;        //将此处设为IMAIL的IP
echo "<pre>" ;
$fp = fsockopen($smtpserver, 25, &$errno, &$errstr, 10) ; //连接smtp服务器,端口25
if(!$fp) die("wrong open smtp SERVER") ;
$hostreplay=fgets($fp,128);
//if (!strstr($hostreplay,"220")) die(" can n't receive the 220 answer ") ;
$smailname=strstr(ltrim($hostreplay),"220 ") ;
$smailname=substr($smailname,0,strpos($smailname,".")) ;
//echo "\nsmailname:$smailname\n" ;
fputs($fp,"$smailname \n") ;
$hostreplay=fgets($fp,128);
//if (!strstr($hostreplay,"250")) die(" can n't receive the 250 answer ") ;

fputs($fp,"MAIL FROM: \n") ;
$hostreplay=fgets($fp,128) ;
if (!strstr($hostreplay,"250")) {
fputs($fp,"MAIL FROM: root\n") ;
$hostreplay=fgets($fp,128) ;
if (!strstr($hostreplay,"250")) {
fputs($fp,"MAIL FROM: root@263.net\n") ;
echo($hostreplay=fgets($fp,128)) ;
if (!strstr($hostreplay,"250")) {
fputs($fp,"MAIL FROM: $from_address\n") ;
$hostreplay=fgets($fp,128) ;
if (!strstr($hostreplay,"250")) die(" can n't receive the 250 answer ") ;
};
};
};
fputs($fp,"RCPT TO: $to_address\n") ;
$hostreplay=fgets($fp,128);
if (!strstr($hostreplay,"250")) {
fputs($fp,"RCPT TO: $mailname\n") ;
$hostreplay=fgets($fp,128) ;
if (!strstr($hostreplay,"250")) echo(" can n't receive the 354 answer") ;
};
fputs($fp,"DATA\n") ;
$hostreplay=fgets($fp,128) ;
if (!strstr($hostreplay,"354")) die(" can n't receive the 250 answer ") ;
$tosend="From: $from_address\n";
$tosend.="To: $to_address\n";
$tosend.="Subject:".str_replace("\N"," ",$subject)."\n你好,这是yukuang发给您的一封测试信!!

\n.\n";
fputs($fp,$tosend) ;
$hostreplay=fgets($fp,128) ;
if (!strstr($hostreplay,"250")) die(" can n't receive the 250 answer ") ;
fputs($fp,"QUIT\n") ;
fclose($fp) ;
echo "发送成功";
exit();
//if($ck_name!='root') die("</pre><hr>bye bye ");

};

?>

<br>
<FORM METHOD="POST" ACTION=" <? echo $PHP_SELF; ?>" >
<table width="73%" border="1" align="center">
<tr>
<td colspan="5">
<div align="center">cn-bbs web meil </div>
</td>
</tr>
<tr>
<td width="9%">from<br>
</td>
<td width="36%">
<input type="text" name="from_address" size="30" maxlength="40"
value="">
</td>
<td width="6%">to </td>
<td colspan="2" width="49%">
<input type="text" name="to_address" size="40" maxlength="40"
value="">
</td>
</tr>
<tr>
<td width="9%">subject</td>
<td colspan="4">
<input type="text" name="subject" size="80" maxlength="200" value=" ">
</td>
</tr>
<tr>
<td rowspan="5" width="9%">c<br>
o<br>
n<br>
t<br>
e<br>
n<br>
t</td>
<td colspan="4" rowspan="5">
<div align="center">
<textarea name="message" cols="80" rows="16"> </textarea>
</div>
</td>
</tr>
<tr> </tr>
<tr> </tr>
<tr> </tr>
<tr> </tr>
<tr>
<td colspan="5" height="2">
<div align="center">
<select name="smtpserver">
<option value="smtp.21cn.com" selected>21cn.net</option>
<option value="smtp.163.net">163.com</option>
<option value="smtp.263.net">263.com</option>
<option value="server0026.freedom2surf.net">server0026.freedom2surf.net</option>
<option value="www.cnbbs.f2s.com" >www.cnbbs.f2s.com</option>
</select>
<input type=submit value ="ok . send" name="sendit">
<input type=reset value ="Reset " name="reset">
<input type="button" name="back" value="cancle" onclick=history.back()>
</div>
</td>
</tr>
</table>
<br>
</FORM>
</BODY>
</html>

该程序在局域网内调试通过,我的IP是202.110.200.242,供大家测试

本文作者:



相关阅读:
"使用链接表的额外特性尚未激活.."修正办
Windows Vista安装详细(图解)流程
五种MySQL数据库可靠性方案的分析和比较
jquery select选中的一个小问题
ASP采集入库生成本地文件的几个函数
建立HTML字符串的最快速方法
Minify优化网站:合并多个CSS或者js文件
关掉电脑报错提示音的方法总结
Windows应该借鉴Linxu的10大特征小结
解决跨浏览器兼容的CSS编码准则
让Windows Server 2008支持蓝牙
asp.net Page.EnableEventValidation 属性验证服务器控件的回发和回调事件出现的错误
linux下如何读取使用iso 镜像文件的方法
css教程:关于CSS不透明的详细介绍
快速导航

Copyright © 2016 phpStudy |