免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3887 | 回复: 2
打印 上一主题 下一主题

如何用perl发邮件啊? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-06-17 18:58 |只看该作者 |倒序浏览
在UNIX系统下发
没用过,帮帮忙,比较着急,来不及慢慢学习,谢谢!

论坛徽章:
0
2 [报告]
发表于 2005-06-18 04:56 |只看该作者

如何用perl发邮件啊?

来不及可以出钱让别人做

论坛徽章:
0
3 [报告]
发表于 2005-06-18 13:16 |只看该作者

如何用perl发邮件啊?

我现在是用网友提供的这个程序来做
可是到my $smtp=Net::SMTP->;new($relay); 这句时就连接不上
我ping了一下$relay,可以ping通的
并且当前机器的
smtp            25/tcp          mail
smtp            25/udp          mail
都在services里设置了的
不知道为什么连不上


sub send_mail{
my($to,$from,$subject,@body)=@_;

use Net::SMTP;

my $relay="smtp.163.net"; #这里使用的是163.net的服务器
my $smtp=Net::SMTP->;new($relay);
die "Could not open connection: $!" if (!defined $smtp);
$smtp->;mail($from); #mail函数用于指明你发送邮件时使用的是什么身份。当然,有时你可以就你的身份问题撒点儿谎。
$smtp->;to($to); #to函数用于指明你要将邮件发送给谁。如果你调用的to函数带有一个名字列表,那么每人都会收到一个邮件拷贝。

$smtp->;data(); #data函数用于指明你准备发送邮件正文。
$smtp->;datasend("To: $to\n"; #这个函数用于发送邮件的实际文本。你必须输出你自己的报头域(To:、From:等)。报头域,比如Date:和Received:,是自动生成的。在报头与正文之间,还必须输出一个空行—$smtp->;datasend(“\n”)。你的邮件正文跟随在这个空行的后面,并且也用$smtp->;datasend()来发送。
$smtp->;datasend("From: $from\n";
$smtp->;datasend("Subject: $subject\n";
$smtp->;datasend("\n";
foreach(@body) {
$smtp->;datasend("$_\n";
}
$smtp->;dataend(); #dataend函数用于指明你已完成邮件正文的发送,在运行这个函数之前,邮件并未发送。
$smtp->;quit; #本函数用于断开与SMTP服务器的连接。
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP