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


Posted in PHP onOctober 09, 2006

这里介绍php和mysql结合起来实用。

    基本上,可以说php是介于后台数据库和前台浏览器的一个中间层,在他们之间传递命令。这种方式大大提高了交互的可能性,可以方便使用在投票系统,其他动态用户输入和个性化网站中。

    要想实现这种交互,首先必需实现和mysql数据库连接,可以使用这个命令实现:
    语法:int mysql_connect(string hostname, string username, string password);  

    ·hostname - 运行数据库服务器所在的主机名称。
    ·username - 连接到数据库服务器的用户名称。
    ·Password - 用户密码。the password set to connect to the MySQL database.  
     如果连接成功,函数返回一个正整数,如果失败返回一个负数。

     所有的命令,和往常一样,必需放置在"<?" 和 "?>"之间。

     让我们继续我们的工程,让我们假设用MySQL建立了以下的数据表:

----------------------------    

mysql> CREATE TABLE information (
    -> name VARCHAR (25),
    -> email VARCHAR (25),    
    -> choice VARCHAR (8) );

----------------------------    

    现在让我们假设我们要吧用户的信息插入到这个数据库中,我们可以通过修改email.php3脚本来实现,修改如下:

----------------------------    

<?
/* 这个脚本将使用从moreinfo.html文件中传递过来的变量。 */

/* 声明一些相关的变量 */

$hostname = "devshed";
$username = "myusername";
$password = "mypassword";
$dbName = "mydbname";

/* 使用MySQL建立的数据表存取信息  */
$userstable = "information";

/* 网站管理员的邮件地址*/
$adminaddress = "administration@buycorn.com";

/* 与数据库连接*/
MYSQL_CONNECT($hostname,$username,$password) OR DIE("Unable to connect to database");

@mysql_select_db("$dbName") or die("Unable to select database");  

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><BR><BR>";

/* 发送有关邮件*/
mail("$email", "Your request for information",
"$namenThank you for your interest!n
We sell fresh corn daily over the Internet!
Place your order  at http://www.buycorn.com,
and receive a free package of $preference!");

mail("$adminaddress",
"Visitor request for info.",
"$name requested for information.n

The email address is $email. n The visitor prefers $preference.");

/* 将数据插入数据表中*/
$query = "INSERT INTO $userstable VALUES('$name','$email', '$preference')";
$result = MYSQL_QUERY($query);

PRINT "Your information has also been inserted into our database, for future reference.";

/* 关闭与数据库的连接*/
MYSQL_CLOSE();
?>

----------------------------    

一些注意的地方:

1、在脚本一开始声明的变量是为了函数MYSQL_CONNECT() 。我们也可以直接在函数中将这些值给出,可是,考虑工程的可发展性,这些值应该放在一个独立的文件中,用(#include)调入。
2、语法: int mysql_select_db(string database_name, int link_identifier);
·database_name  必需是在服务器上的数据库名。
·link_identifier(可选的) 是指明连接,基于此向数据库服务器发出请求。
·返回值为true/false
3、语法: int mysql_query(string query, int link_identifier);
·query  发送向mysql服务器的sql命令。
·link_identifier(可选择)  指明连接,基于此向数据库服务器发送sql命令。
·返回值为整数,正数表示成功了,负数表示失败。
4、语法: int mysql_close(int link_identifier);  
·link_indentifier  与上面相同
·返回值为整数,正数表示成功了,负数表示失败。

在下一篇文章中,我将给大家讲解如何从mysql中输出数据。 

PHP 相关文章推荐
mysql 全文搜索 技巧
Apr 27 PHP
php之对抗Web扫描器的脚本技巧
Oct 01 PHP
基于PHP读取csv文件内容的详解
Jun 18 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
Oct 14 PHP
Thinkphp+smarty+uploadify实现无刷新上传
Jul 30 PHP
详解EventDispatcher事件分发组件
Dec 25 PHP
PHP校验15位和18位身份证号的类封装
Nov 07 PHP
ThinkPHP5.0框架使用build 自动生成模块操作示例
Apr 11 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
Jun 03 PHP
php面向对象基础详解【星际争霸游戏案例】
Jan 23 PHP
Laravel中Kafka的使用详解
Mar 24 PHP
通过html表格发电子邮件
Oct 09 #PHP
在 PHP 中使用随机数的三个步骤
Oct 09 #PHP
用PHP制作静态网站的模板框架(四)
Oct 09 #PHP
用PHP制作静态网站的模板框架(三)
Oct 09 #PHP
用PHP制作静态网站的模板框架(二)
Oct 09 #PHP
用PHP制作静态网站的模板框架(一)
Oct 09 #PHP
php的header和asp中的redirect比较
Oct 09 #PHP
You might like
php命令行使用方法和命令行参数说明
2014/04/08 PHP
laravel实现查询最后执行的一条sql语句的方法
2019/10/09 PHP
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
Javascript面象对象成员、共享成员变量实验
2010/11/19 Javascript
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
2011/07/28 Javascript
js 获取经纬度的实现方法
2016/06/20 Javascript
AngularJS constant和value区别详解
2017/02/28 Javascript
JS基于对象的特性实现去除数组中重复项功能详解
2017/11/17 Javascript
vue移动端UI框架实现QQ侧边菜单组件
2018/03/09 Javascript
详解Vue中使用Echarts的两种方式
2018/07/03 Javascript
webpack4.0 入门实践教程
2018/10/08 Javascript
详解在create-react-app使用less与antd按需加载
2018/12/06 Javascript
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
2019/01/19 Javascript
mongodb初始化并使用node.js实现mongodb操作封装方法
2019/04/02 Javascript
vue日历/日程提醒/html5本地缓存功能
2019/09/02 Javascript
vue-cli3单页构建大型项目方案
2020/04/07 Javascript
使用Python简单的实现树莓派的WEB控制
2016/02/18 Python
python开发利器之ulipad的使用实践
2017/03/16 Python
Python模块搜索路径代码详解
2018/01/29 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
python 对dataframe下面的值进行大规模赋值方法
2018/06/09 Python
对Django 中request.get和request.post的区别详解
2019/08/12 Python
基于Python 中函数的 收集参数 机制
2019/12/21 Python
pandas-resample按时间聚合实例
2019/12/27 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
美国知名运动产品零售商:Foot Locker
2016/07/23 全球购物
瑞典领先的汽车零部件网上零售商:bildelaronline24.se
2017/01/12 全球购物
Notino瑞典:购买香水和美容产品
2019/07/26 全球购物
介绍一下SQL Server里面的索引视图
2016/07/31 面试题
车辆转让协议书
2014/04/15 职场文书
赔偿协议书范本
2014/09/12 职场文书
2014年教师批评与自我批评思想汇报
2014/09/20 职场文书
班主任寄语2015
2015/02/26 职场文书
初中英语教师个人工作总结2015
2015/07/21 职场文书
Java内存模型之happens-before概念详解
2021/06/13 Java/Android
Java循环队列与非循环队列的区别总结
2021/06/22 Java/Android