当前位置: 首页 > 图文教程 > 网络编程 > PHP > 一个简单的自动发送邮件系统(一)

PHP
PHP新手总结的PHP基础知识
php实现gb2312和unicode间编码转换
用php语言实现数据库连接详细代码介绍
详细解析 PHP 向 MySQL 发送数据过程
利用PHP V5开发多任务应用程序
详细讲解PHP中缓存技术的应用
php escapeshellcmd多字节编码漏洞
《PHP设计模式介绍》导言
《PHP设计模式介绍》第一章 编程惯用法
《PHP设计模式介绍》第二章 值对象模式
《PHP设计模式介绍》第三章 工厂模式
《PHP设计模式介绍》第四章 单件模式
《PHP设计模式介绍》第五章 注册模式
《PHP设计模式介绍》第六章 伪对象模式
《PHP设计模式介绍》第七章 策略模式
《PHP设计模式介绍》第八章 迭代器模式
《PHP设计模式介绍》第九章 观测模式
《PHP设计模式介绍》第十章 规范模式
《PHP设计模式介绍》第十一章 代理模式
《PHP设计模式介绍》第十二章 装饰器模式

PHP 中的 一个简单的自动发送邮件系统(一)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 191 ::
收藏到网摘: n/a

一个简单的自动发送邮件系统
php的另一个强大的特征就是他有能通过html的表单修改变量的能力,通过这些变量,我们可以实现很多任务,包括象:发送wed-based的邮件,把信息输出给屏幕,从数据库中读取和传递数据。下面让我们构建一个小型的自动发送邮件系统,来演示这个能力。
让我们假设有这样一个html的表单:
--------------------------------------
<HTML>
<HEAD>
<TITLE>Request for more information</TITLE>
<BODY>
<CENTER>Would you like more information about our company?
<P>
<TABLE WIDTH = 400><TR><TD align = right>
<FORM ACTION="email.php3" METHOD="POST">
Your name:<BR>
<INPUT TYPE="text" NAME="name" SIZE="20" MAXLENGTH="30">
<P>
Your email address:<BR>
<INPUT TYPE="text" NAME="email" SIZE="20" MAXLENGTH="30">
<P>
I prefer:
<SELECT NAME="preference">
<OPTION value = Apples>Apples
<OPTION value = Oranges>Oranges
</SELECT>
<P>
<INPUT TYPE="submit" VALUE="Send it!">
</FORM>
</TD></TR></TABLE></CENTER>
</BODY>
</HTML>
--------------------------------------
把这个文件存为moreinfo.html
注意 action指向文件:email.php3 下面就是email.php3文件:
--------------------------------------
<?
/* this script will handle the variables passed from the moreinfo.html file */
PRINT "<CENTER>";PRINT "Hello, $name.";PRINT "<BR><BR>";
PRINT "Thank you for your interest.<BR><BR>";
PRINT "We will send information to $email, and have noted that you like $preference.";
PRINT "</CENTER>";
?>
--------------------------------------
把上面的文件存为email.php3
当用户在表单里键入他们的name和email,点击“send it!”按钮,表单就会调用email.php3文件,依次如下显示:(这里我们假设person'name 是bill, email地址是[email protected] ,选择了apples):
--------------------------------------
Hello, Bill.
Thank you for your interest.
We will send information to [email protected], and have noted that you like Apples
--------------------------------------
这样我们的工程还没有完成,由于我们不知道谁曾经插入了一些信息,也没有什么实质性的事情发生过,我们没有办法给bill发信。
为了减少用手工发送标准email的负担,我们可以使用php的mail()命令。
语法:void mail(string to, string subject, string message, string add_headers);
·to---寄出电子邮件到指定的邮件地址
·subject 表示主题
·message 为信件内容
·additional_headers 可省略,表示其它的邮件文件头。
因而,如果我们把这个命令插入到print语句之后,我们就可以自动的给用户和网站的斑竹发信了,让我们知道谁需要这些信息。
--------------------------------------
<?
mail("$email", "Your request for information", "$namen
Thank you for your interest!nWe sell fresh corn daily over the Internet!
Place your order at http://www.buycorn.com,
and receive a free package of $preference!");
mail("[email protected]",
"Visitor request for info.","$name requested for information.n
The email address is $email. n The visitor prefers $preference.");
?>
--------------------------------------
注意:mail()函数仅仅在SENDMAIL装在服务器上才可以使用,所以,在大多数情况下,使用前先确定是否可以使用。
但是当有很多人填写了信息,作为管理人员,你不可能一一浏览信件,你可以用数据库来跟踪究竟有多少人选择apples,多少人选择了oranges?这样的数据库有很多种,其中最快之一的就是mysql。
再下一篇文章中,我将给大家介绍如何将php和mysql结合起来使用。