用PHP+MySQL实现简单的邮件列表
编译:Roger·yesky
网站的有效管理可以确保站点成功。许多开发者正在寻找取得这种成功的技术,并使他们的工作更加流水化。 使用强大和流行的PHP+MySQL应该是一个不错的选择。
本文将帮你设计开发一个简单但有用的,基于Web的email管理应用。同时还会覆盖以下内容:
1. 用户定义函数,用来说明建立简单的可管理的代码的重要性。
2. 基本模板,在开发站点时可节省时间和眼泪。
先看一下应用程序里将具有的功能:
1. 加入订阅者:将订阅者加入列表的功能。
2. 删除订阅者:需要这个功能,让订阅者可以取消订阅。
3. 生成新闻邮件:生成需要发给订阅者的HTML格式的新闻邮件。
4. 发送邮件:发送邮件给所有订阅者。
编码以前,先来设置MySQL数据库表格。表格将包含订阅者的信息。很简单,只有一个表需要定义(包含邮件 地址)。命名为“newsletter_table”。
mysql>create table newsletter_table (
email char(65);
);
为了执行查询,现在连接到MySQL服务器的newsletter_table表。为防止重复定义脚本中的变量,我一般把它们 放在一个单独的文件里,使用时再用INCLUDE命令引入。这样可以消除冗余代码。如果你以后需要改变一个变量, 你只需要在一个地方修改。更少的修改意味着更少的错误机会。还有,如果你要加一个变量-也只要加一个。
让我们把这些全局变量放进一个init.inc的文件里,代码在Listing 1中。你可以在任何时 候调用这个文件。然后,你需要修改这个文件,让它可以连接到你的MySQL服务器。
好了!让我们开始具体编码。
PHP函数的重要性
用户定义的函数为程序员提供了几个重要的服务:
函数消除代码冗余。
函数最大化代码的可重用性。
函数可以被单独测试,而一个庞大的代码段测试起来就比较困难。
我们开发的用户函数要处理应用中的每一个服务。我把这些函数放到了\"email_admin_funcs.inc\"文件里,代码 在Listing
2。有几点需要注意:
add函数加一个邮件地址到MySQL数据库。
delete函数从数据库中删除一个邮件地址。
send_newsletter发送邮件给所有订阅者。我这儿的函数是一个例子,特殊需要时你可能需要扩展和修改它。
界面技巧
函数写好后,现在来到网络应用开发中我个人最喜欢的部分-界面设计。我让界面非常普通,给你留出一些空间 -加上你自己的功能和需要的设计。
界面部分最重要的是它可以作为一个模板。通过调用这个文件,我们可以执行这个应用的所有功能。被调用的 函数依靠传递的$func变量的值。
最后的想法
网络管理员可能想扩展这个简单例子。这儿有一些建议:
加入真实性检测。只需要几行代码,就可以检查数据库中重复和无效的邮件地址,并报告一个错误。
加入用户自动订阅功能。自然,你不想陷入到管理列表每一个部分的工作。事实上,你可以允许订阅者 自动订阅或取消订阅,而不需要与你联系。add/delete函数的重复使用可以达到此目的。
提供一个HTML风格的新闻邮件。加一个简单的参数到PHP的mail()函数里,你可以立即发出HTML格式的邮件。
请查阅PHP文档中有关mail()函数的信息。
PHP给用户提供了简单快速的开发能力。如上所见,你可以在几步内生成一个强有力的工具。在函数使用和应用 的一般布局前先考虑一下,可以使开发任务更简单,你的站点访问者也会高兴得多。
(Jason是Unstrung的一位网络/无线应用开发者。)
发布人:Crystal 来自:it365