首 页
┆
源码下载
┆
IT学院
┆
字体下载
┆
模板下载
┆
源码发布
┆
广告合作
┆
网站地图
┆
虚拟主机
┆
中文域名
►
设为首页
►
加入收藏
►
联系我们
源码下载
>>
ASP源码
|
PHP源码
|
ASP.net源码
|
JSP源码
|
CGI源码
|
VC/C++源码
|
VB源码
|
Delphi源码
|
Flash源码
文章学院
>>
网络编程
|
网页设计
|
图形图象
|
数据库
|
服务器
|
网络媒体
|
网络安全
|
操作系统
|
办公软件
|
软件开发
|
黑客知识
字体下载
>>
精制字体
|
非英字体
|
艺术字体
|
著名字体
|
哥特式
|
简单字体
|
手写体
|
节假日
|
图案字体
|
精度像素
|
中文字体
模板下载
>>
企业门户
|
数码网络
|
休闲娱乐
|
影视音乐
|
旅游名胜
|
文化艺术
|
电子商务
|
个性展示
|
登陆导航
|
Flash模板
源码搜索
文章搜索
字体搜索
模板搜索
►►
您当前的位置:
源码园
→
IT学院
→
网络编程
→
CGI专区
→ 文章内容
编写关于SendMail的CGI
作者:郁郁小蝎 来源:中国站长学院 发布时间:2007-2-6 16:38:37
在UNIX主机上我们可以很轻易地通过编程来发送EMAIL,有时我们需要把从表单上得来数据整理后发送到一个信箱里,例如来访者的留言,在线申请。
在UNIX系统中通常会有一个 sendmail 程序用来发送EMAIL的,这是一个十分复杂的电子邮件系统,但我们在CGI编程中用它来发送EMAIL是十分简单的事,具体的操作是打开一个通道,把输出的信息作为sendmail 这个程序输入
代码如下:
open (MAIL,"|/usr/sbin/sendsendmail zjxyz@XXXX.XXX"); #注意其间的空格
print MAIL $msg
close MAIL;
这样我们就可以把变量$msg中的内容通过服务器上的 sendmail 程序发送到地址为zjxyz@XXXX.XXX 的信箱中,要注意的是这只是一个简单的例子,还有一些细节的地方是需要讨论的。
在上述的程序中,邮件的接受者将会收到一封没有标题、没有回信地址的信件,要想发出去的信件像样一点,就必须在发送内容之前送出信头:请看以下例子:
open (MAIL,"|/usr/sbin/sendsendmail zjxyz@XXXX.XXX");
print MAIL "To: $toemailn";
print MAIL "From: $fromemailn";
print MAIL "Reply-to: $fromemailn";
print MAIL "Subject: $subjectn";
printMAIL $msg;
print MAIL "nn";
close MAIL;
我们看到的"To:"、"From:"、"Reply-to:"、"Subject:" 就是用来标识信头的,它们邮件程序中不会被当作是信件的正文在处理,程序中的换行符号是必需的的。
在这里不得不提一下安全问题,有时我们发信的的地址是从表单上获得的,如果不严格检查从表单上获得的EMAIL地址的合法性,将会给恶意的攻击者带来攻击的机会,让你的CGI程序执行一些破坏系统的操作,后果是非常严重的。简单举个例子说明:
if ($FORM{'mailto'}=~/(.*)@(.*)/){
。。。。。
。。。。。
。。。。。
}
[] [
返回上一页
] [
打 印
]
上一篇文章:
用Perl语言进行Socket编程之四
下一篇文章:
用Perl制作留言本实例之一
相关文章:
编写关于SendMaild的CGI
如何使每个用户有独立的cgi-bin目录
CGI教程(9)编写安全的CGI脚本
编写关于SendMail的CGI
关于本站
-
网站帮助
-
广告合作
-
下载声明
-
友情连接
-
网站地图
-
源码发布
Copyright © 2003-2009
Ymyasp
.Com
. All Rights Reserved .
备案序号:粤ICP备07029071号