register.php と verify.php の合計 2 ページが必要です
1. ユーザー登録フォーム register.php
CREATE TABLE IF NOT EXISTS `users` (
`activationkey` varchar(100) NOT NULL、
主キー (`id`)、
一意のキー `username` (`username`)、
一意のキー `email` (`email`)、
ユニークキー `activationkey` (`activationkey`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
3. 認証コードを作成します。ユーザー登録情報はデータテーブルに保存されます。
まだアクティブ化されていないユーザーを表すために「認証」ステータスを使用します。
コードをコピーします
コードは次のとおりです:
$activationKey = mt_rand() . mt_rand() .
$username = mysql_real_escape_string($_POST[ユーザー名]);
$email = mysql_real_escape_string($_POST[email]);
echo 「アクティベーション キーが記載された電子メールが $_POST[email] に送信されました。登録を完了するにはメールを確認してください。」 ;
##アクティベーションメールを送信
$to = $_POST[メール]
$message = "私たちの Web サイトへようこそ!rrあなた、またはあなたの電子メール アドレスを使用している誰かが、YOURWEBSITE.com への登録を完了しました。次のリンクをクリックすると登録を完了できます:rhttp://www.YOURWEBSITE.com/verify.php ?$activationKeyrrこれがエラーの場合は、このメールを無視してください。メーリング リストから削除されます。rrよろしく、YOURWEBSITE.com チーム";
コードをコピーします
コードは次のとおりです:
$query = "SELECT * FROM ユーザー";
$result = mysql_query($query) または die(mysql_error());while($row = mysql_fetch_array($result)){
if ($queryString == $row["activationkey"]){
echo "おめでとうございます!" . $row["username"] が、YOURWEBSITE.com アカウントの新しい所有者になりました。";
$sql="UPDATE ユーザー SET activitykey = '', status='activated' WHERE (id = $row[id])";if (!mysql_query($sql)) {
die('エラー: ' .mysql_error());
// この時点で、ユーザーはアカウントを完全にアクティブ化しているので、ログイン後にページにジャンプできます
}
} // これで終わりです