-4

編集:私はウェブサイトのログインとサインアップを作成しています。ただし、メールでのアクティベーションが必要になります。データベース内の「アクティブ」ステータスを1(ブール値)に変更したWebページに誘導して、ログインを許可したいと思います。今必要なのは、データベースの値を変更できるようにすることだけです

4

1 に答える 1

2

テーブルアクティベーションを作成します。ユーザーがサインアップしたら、ランダムハッシュを作成し、新しいユーザーIDと一緒にこのテーブルに保存します。次に、ハッシュを含むURLを含む電子メールを送信します(たとえば、http://example.com/confirmation.php?hash=376728zhdif274thfj36)。

確認.phpでは、$_GET値を取得し、それを使用してデータベースにクエリを実行し、対応するユーザーIDを選択してから、ユーザーIDを使用して別のクエリを実行します。このユーザーIDでアクティブ化ステータスを設定します。

新しいハッシュの作成:

INSERT INTO activations (hash, userid) VALUES ($hash, $userid)

ハッシュを使用したユーザーIDの選択:

SELECT userid FROM activations WHERE hash = $_GET['hash']

上記のクエリのユーザーIDでアクティベーションステータスを更新します。

UPDATE users SET active = 1 WHERE userid = $userid
于 2012-05-17T07:03:44.173 に答える