- 论坛徽章:
- 0
|
本帖最后由 mouse.rice 于 2014-03-25 17:28 编辑
有个小调研问卷,要求集团群发每个员工邮件,正文显示一张带有超链接的图片,用户点击图片即链接到问卷调查页面。
因公司买的某邮件服务,其web登陆界面不支持本地图片显示,用户收到邮件后,正文图片无法正常显示。如下代码中怎么修改,才能让其超链接的图片换成网络图片呢?
代码如下:- use strict;
- use Mail::Sender;
- ###############获取txt文本中mail地址###############
- my (@user,$user,@mail_address,$mail_address);
- open FH "< Account.txt" or die "$!";
- while (<FH>){
- $user = (split /\t/)[0];
- push @mail_address, $user."\@xxx.com.cn";
- }
- ###############下面发送正文带超链接图片的邮件######
- eval;
- eval {
- (new Mail::Sender)
- ->OpenMultipart({
- smtp=> 'smtp.qq.com',
- from=>'user@qq.com',
- auth=>'LOGIN',
- authid=>'perl',
- authpwd=> 'password',
- debug=>'./perllog',
- to => \@mail_address,
- subject => 'XXXX调研',
- multipart => 'related',
- })
- ->Part({ctype => 'multipart/alternative'})
- ->Part({ctype => 'text/html', disposition => 'NONE', msg => <<'*END*'})
- <html><body>
- <A href="http://xxx/xxx" title="image"><div align=center><img align=center src="cid:img1" title="image" alt="image" /></div></A>
- </body></html>
- *END*
- ->EndPart("multipart/alternative")
- ->Attach({
- description => 'perl\'s jpg',
- ctype => 'image/jpeg',
- encoding => 'base64',
- disposition => "inline; filename=\"image.jpg\";\r\nContent-ID: <img1>",
- file => 'image.jpg'}) #本地图片,什么参数能换成网络图片呢?
- ->Close();
- }
- or print "Error sending mail: $Mail::Sender::Error\n";
复制代码 |
|