使用者註冊E-mail驗證
登錄檔單頁signup.php:
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″ />
<title>會員註冊</title>
<style type=”text/css”>
body
{
background:url(“imgs/bg.gif”);
}
</style>
</head>
<body>
<table width=”350″ border=”0″ align=”center” cellpadding=”0″ cellspacing=”0″>
<tr>
<td><form name=”form1″ method=”post” action=”signup_ac.php”>
<table width=”100%” border=”0″ cellspacing=”4″ cellpadding=”0″>
<tr>
<td colspan=”3″><strong>註冊</strong></td>
</tr>
<tr>
<td width=”76″>使用者名稱</td>
<td width=”3″>:</td>
<td width=”305″><input name=”name” type=”text” id=”name” size=”30″></td>
</tr>
<tr>
<td>E-mail</td>
<td>:</td>
<td><input name=”email” type=”text” id=”email” size=”30″></td>
</tr>
<tr>
<td>密碼</td>
<td>:</td>
<td><input name=”password” type=”password” id=”password” size=”30″></td>
</tr>
<tr>
<td>國家</td>
<td>:</td>
<td><input name=”country” type=”text” id=”country” size=”30″></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type=”submit” name=”Submit” value=”提交”>
<input type=”reset” name=”Reset” value=”重置”></td>
</tr>
</table>
</form></td>
</tr>
</table>
</body>
</html>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″ />
<title>會員註冊</title>
<style type=”text/css”>
body
{
background:url(“imgs/bg.gif”);
}
</style>
</head>
<body>
<table width=”350″ border=”0″ align=”center” cellpadding=”0″ cellspacing=”0″>
<tr>
<td><form name=”form1″ method=”post” action=”signup_ac.php”>
<table width=”100%” border=”0″ cellspacing=”4″ cellpadding=”0″>
<tr>
<td colspan=”3″><strong>註冊</strong></td>
</tr>
<tr>
<td width=”76″>使用者名稱</td>
<td width=”3″>:</td>
<td width=”305″><input name=”name” type=”text” id=”name” size=”30″></td>
</tr>
<tr>
<td>E-mail</td>
<td>:</td>
<td><input name=”email” type=”text” id=”email” size=”30″></td>
</tr>
<tr>
<td>密碼</td>
<td>:</td>
<td><input name=”password” type=”password” id=”password” size=”30″></td>
</tr>
<tr>
<td>國家</td>
<td>:</td>
<td><input name=”country” type=”text” id=”country” size=”30″></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type=”submit” name=”Submit” value=”提交”>
<input type=”reset” name=”Reset” value=”重置”></td>
</tr>
</table>
</form></td>
</tr>
</table>
</body>
</html>
表單處理頁面signup_ac.php:
<?php
include(`config.php`);
// 表名
$tbl_name=”tmp_members”;//臨時表
//隨機確認碼
$confirm_code=md5(uniqid(rand()));
//表達傳送的值
$name=$_POST[`name`];
$email=$_POST[`email`];
$country=$_POST[`country`];
//插入資料
$sql=”INSERT INTO $tbl_name(confirm_code, name, email, password, country)VALUES(`$confirm_code`, `$name`, `$email`, `$password`, `$country`)”;
$result=mysql_query($sql);
// 如果資料插入成功則傳送驗證碼給指定E-mail
if($result){
// —————- 傳送郵箱—————-
//傳送給 …
$to=$email;
// 主題
$subject=”您的確認連結”;
// 來自
$header=”from:admin <HOHO@localhost>“;
//你的訊息
$message=”你的確認連結
“;
$message.=”單擊此連線啟用你的賬戶
“;
$message.=”http://localhost/ex/confirm.php?passkey=$confirm_code”;
//傳送郵件
$sentmail = mail($to,$subject,$message,$header);
}else {
// 如果沒找到
echo “資料庫中沒有此郵箱”;
}
// 如果郵箱傳送成功
if($sentmail){
echo “您的確認連結地址已經傳送到您的E-mail中.”;
}else {
echo “傳送郵箱失敗”;
}
?>
include(`config.php`);
// 表名
$tbl_name=”tmp_members”;//臨時表
//隨機確認碼
$confirm_code=md5(uniqid(rand()));
//表達傳送的值
$name=$_POST[`name`];
$email=$_POST[`email`];
$country=$_POST[`country`];
//插入資料
$sql=”INSERT INTO $tbl_name(confirm_code, name, email, password, country)VALUES(`$confirm_code`, `$name`, `$email`, `$password`, `$country`)”;
$result=mysql_query($sql);
// 如果資料插入成功則傳送驗證碼給指定E-mail
if($result){
// —————- 傳送郵箱—————-
//傳送給 …
$to=$email;
// 主題
$subject=”您的確認連結”;
// 來自
$header=”from:admin <HOHO@localhost>“;
//你的訊息
$message=”你的確認連結
“;
$message.=”單擊此連線啟用你的賬戶
“;
$message.=”http://localhost/ex/confirm.php?passkey=$confirm_code”;
//傳送郵件
$sentmail = mail($to,$subject,$message,$header);
}else {
// 如果沒找到
echo “資料庫中沒有此郵箱”;
}
// 如果郵箱傳送成功
if($sentmail){
echo “您的確認連結地址已經傳送到您的E-mail中.”;
}else {
echo “傳送郵箱失敗”;
}
?>
資料庫配置config.php:
<?php
$host=”localhost”; // 主機名
$username=”root”; // Mysql 使用者名稱
$password=”123456″; // Mysql密碼
$db_name=”verifyemail”; // 資料庫名
//連線伺服器並選擇資料庫
mysql_connect(“$host”, “$username”, “$password”)or die(“不能連線資料庫伺服器”);
mysql_select_db(“$db_name”)or die(“不能選擇資料庫”);
?>
$host=”localhost”; // 主機名
$username=”root”; // Mysql 使用者名稱
$password=”123456″; // Mysql密碼
$db_name=”verifyemail”; // 資料庫名
//連線伺服器並選擇資料庫
mysql_connect(“$host”, “$username”, “$password”)or die(“不能連線資料庫伺服器”);
mysql_select_db(“$db_name”)or die(“不能選擇資料庫”);
?>
確認confirm.php
<?php
include(`config.php`);
// 從連線地址得到通行金鑰
$passkey=$_GET[`passkey`];
$tbl_name1=”tmp_members”;
// 檢索資料尋找匹配金鑰的那條記錄
$sql1=”SELECT * FROM $tbl_name1 WHERE confirm_code =`$passkey`”;
$result1=mysql_query($sql1);
// 查詢成功
if($result1){
// 統計下多少行含有此金鑰
$count=mysql_num_rows($result1);
//如果找到則獲取資料
if($count==1){
$rows=mysql_fetch_array($result1);
$name=$rows[`name`];
$email=$rows[`email`];
$password=$rows[`password`];
$country=$rows[`country`];
$tbl_name2=”reg_members”;
// 把資料插入到註冊會員表中
$sql2=”INSERT INTO $tbl_name2(name, email, password, country)VALUES(`$name`, `$email`, `$password`, `$country`)”;
$result2=mysql_query($sql2);
}
// 如果沒有找到則顯示確認碼不正確
else {
echo “錯誤的驗證碼”;
}
// 插入成功的話提示使用者已經啟用
if($result2){
echo “您的賬戶已經啟用”;
// 從臨時表中刪除記錄
$sql3=”DELETE FROM $tbl_name1 WHERE confirm_code = `$passkey`”;
$result3=mysql_query($sql3);
}
}
?>
include(`config.php`);
// 從連線地址得到通行金鑰
$passkey=$_GET[`passkey`];
$tbl_name1=”tmp_members”;
// 檢索資料尋找匹配金鑰的那條記錄
$sql1=”SELECT * FROM $tbl_name1 WHERE confirm_code =`$passkey`”;
$result1=mysql_query($sql1);
// 查詢成功
if($result1){
// 統計下多少行含有此金鑰
$count=mysql_num_rows($result1);
//如果找到則獲取資料
if($count==1){
$rows=mysql_fetch_array($result1);
$name=$rows[`name`];
$email=$rows[`email`];
$password=$rows[`password`];
$country=$rows[`country`];
$tbl_name2=”reg_members”;
// 把資料插入到註冊會員表中
$sql2=”INSERT INTO $tbl_name2(name, email, password, country)VALUES(`$name`, `$email`, `$password`, `$country`)”;
$result2=mysql_query($sql2);
}
// 如果沒有找到則顯示確認碼不正確
else {
echo “錯誤的驗證碼”;
}
// 插入成功的話提示使用者已經啟用
if($result2){
echo “您的賬戶已經啟用”;
// 從臨時表中刪除記錄
$sql3=”DELETE FROM $tbl_name1 WHERE confirm_code = `$passkey`”;
$result3=mysql_query($sql3);
}
}
?>
本文轉自 xcf007 51CTO部落格,原文連結:http://blog.51cto.com/xcf007/109589,如需轉載請自行聯絡原作者
相關文章
- AJAX+JAVA使用者登陸註冊驗證Java
- javascript - 使用者註冊頁面(表單驗證)JavaScript
- 使用者註冊郵箱驗證啟用思路【轉】
- js登入與註冊驗證JS
- 註冊驗證流程有哪些方式呢
- vue登入註冊,帶token驗證Vue
- Android註冊功能--電話驗證和郵箱驗證Android
- jQuery Validate表單驗證(使用者註冊簡單應用)jQuery
- Django 使用者認證系統:註冊Django
- JSP註冊驗證功能的實現JS
- Laravel 介面開發中的驗證碼註冊Laravel
- 9.Django之登陸註冊驗證登出Django
- springMVC+Java驗證碼完善註冊功能SpringMVCJava
- html+JS+php實現簡單的註冊使用者名稱驗證HTMLJSPHP
- day101:MoFang:模型構造器ModelSchema&註冊功能之手機號唯一驗證/儲存使用者註冊資訊/傳送簡訊驗證碼模型
- django專案基於鉤子驗證的註冊功能Django
- TP5 實現簡訊驗證碼註冊功能
- vuelidate 結合 Laravel 後端資料註冊驗證VueLaravel後端
- kaggle 註冊不顯示機器人驗證碼機器人
- day79:luffy:註冊之對手機號的驗證&實現基本的註冊功能邏輯&點選獲取驗證碼&redisRedis
- Laravel5.8 入門系列三,新增註冊郵箱驗證Laravel
- jQuery實現的表單註冊驗證程式碼例項jQuery
- Laravel 6.x 為註冊或登入元件新增驗證碼Laravel元件
- gin 自定義驗證器 為什麼會註冊失敗呢
- 防止 e-mail 注入的最好方法是對輸入進行驗證?AI
- Django登入(含隨機生成圖片驗證碼)註冊例項Django隨機
- 使用者註冊頁面原型原型
- laravel使用者登入註冊Laravel
- Steam註冊新增谷歌人機驗證 國內無法建立新賬號谷歌
- 使用者登陸註冊【JDBC版】JDBC
- python 使用者註冊使用者名稱Python
- 使用者註冊資料合法性校驗外掛能否實現
- nginx使用者驗證Nginx
- 關於谷歌賬號註冊手機號無法驗證的解決方法谷歌
- Java使用正規表示式對註冊頁面進行驗證功能實現Java
- PHP註冊登入:包括資料存入資料庫,生成隨機驗證碼PHP資料庫隨機
- 使用者註冊/登入模組實踐
- agileTC 使用 mysql 阻止使用者註冊MySql