php验证邮件,PHP邮件发送验证功能(示例)

本节内容:

php实现邮件发送、邮件验证功能。

第一步:建立数据库

在PHPMyAdmin创建一个新的数据库并导入下面数据。

复制代码 代码示例:

-- 表的结构 `registered_members`

--

CREATE TABLE `registered_members` (

`id` int(4) NOT NULL auto_increment,

`name` varchar(65) NOT NULL default '',

`email` varchar(65) NOT NULL default '',

`password` varchar(65) NOT NULL default '',

`country` varchar(65) NOT NULL default '',

PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

--

-- 导出表中的数据 `registered_members`

--

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

--

-- 表的结构 `temp_members_db`

--

CREATE TABLE `temp_members_db` (

`confirm_code` varchar(65) NOT NULL default '',

`name` varchar(65) NOT NULL default '',

`email` varchar(65) NOT NULL default '',

`password` varchar(15) NOT NULL default '',

`country` varchar(65) NOT NULL default ''

) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--

-- 导出表中的数据 `temp_members_db`

--

第二步:建立数据库连接

config.php

复制代码 代码示例:

$host="Hostname"; // Host name

$username="Username"; // Mysql username

$password="Password"; // Mysql password

$db_name="DB name"; // Database name

//Connect to server and select database.

mysql_connect("$host", "$username", "$password")or die("cannot connect to server");

mysql_select_db("$db_name")or die("cannot select DB");

?>;

第三步:注册页面

signup.php

复制代码 代码示例:

注册
用户名
邮箱
密码
国家

第四步:数据插入到数据和邮件发送

signup_ac.php

复制代码 代码示例:

include('config.php');

// table name

$tbl_name=temp_members_db;

// Random confirmation code

$confirm_code=md5(uniqid(rand()));

// values sent from form

$name=$_POST['name'];

$email=$_POST['email'];

$country=$_POST['country'];

// Insert data into database

$sql="INSERT INTO $tbl_name(confirm_code, name, email, password, country)VALUES('$confirm_code', '$name', '$email', '$password', '$country')";

$result=mysql_query($sql);

// if suceesfully inserted data into database, send confirmation link to email

if($result){

// ---------------- SEND MAIL FORM ----------------

// send e-mail to ...

$to=$email;

// Your subject

$subject="Your confirmation link here";

// From

$header="from: your name <your email>";

// Your message

$message="Your Comfirmation link \r\n";

$message.="Click on this link to activate your account \r\n";

$message.="http://www.yourweb.com/confirmation.php?passkey=$confirm_code";

// send email

$sentmail = mail($to,$subject,$message,$header);

}

// if not found

else {

echo "Not found your email in our database";

}

// if your email succesfully sent

if($sentmail){

echo "Your Confirmation link Has Been Sent To Your Email Address.";

}

else {

echo "Cannot send Confirmation link to your e-mail address";

}

?>

第五步:验证

confirmation.php

复制代码 代码示例:

include('config.php');

// Passkey that got from link

$passkey=$_GET['passkey'];

$tbl_name1="temp_members_db";

// Retrieve data from table where row that match this passkey

$sql1="SELECT * FROM $tbl_name1 WHERE confirm_code ='$passkey'";

$result1=mysql_query($sql1);

// If successfully queried

if($result1){

// Count how many row has this passkey

$count=mysql_num_rows($result1);

// if found this passkey in our database, retrieve data from table "temp_members_db"

if($count==1){

$rows=mysql_fetch_array($result1);

$name=$rows['name'];

$email=$rows['email'];

$password=$rows['password'];

$country=$rows['country'];

$tbl_name2="registered_members";

// Insert data that retrieves from "temp_members_db" into table "registered_members"

$sql2="INSERT INTO $tbl_name2(name, email, password, country)VALUES('$name', '$email', '$password', '$country')";

$result2=mysql_query($sql2);

}

// if not found passkey, display message "Wrong Confirmation code"

else {

echo "Wrong Confirmation code";

}

// if successfully moved data from table"temp_members_db" to table "registered_members" displays message "Your account has been activated" and don't forget to delete confirmation code from table "temp_members_db"

if($result2){

echo "Your account has been activated";

// Delete information of this user from table "temp_members_db" that has this passkey

$sql3="DELETE FROM $tbl_name1 WHERE confirm_code = '$passkey'";

$result3=mysql_query($sql3);

}

}

?>

注意:

如果没有邮箱服务器的,会出现如下面提示之类的东西:

Warning: mail() [function.mail]: Failed to connect to mailserver at “localhost” port 25, verify your “SMTP” and “smtp_port” setting in php.ini or use ini_set() in E:\wamp\www\mailverification\signup_ac.php on line 39

Cannot send Confirmation link to your e-mail address

这说明你的数据已经被写进数据库了。

可以用以下方法去通过验证:

先复制这个URL到你的浏览器:http://www.你的网站.com/confirmation.php?passkey=

然后到数据库中,把confirm_code复制粘贴在passkey=后面,并回车,会出现提示的:Your account has been activated!

邮件验证系统就完成了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值