人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【PHP関連】登録フォームをPHPで作っています。

この際に登録者にはメールアドレスや希望ID、パスワードなどを入力してもらい、いったんDBに保存します。その後メールアドレス先にメールを送りランダムなURLをクリックしたことによって初めてアクティブ(使用可能)にするにはどうすればいいのでしょうか?

よろしくお願いいたします。

●質問者: esecua
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:dB PHP URL アクティブ クリック
○ 状態 :キャンセル
└ 回答数 : 2/2件

▽最新の回答へ

1 ● battan

http://www.yahoo.co.jp/

Yahoo! JAPAN

アドレスはダミーです。

具体的なソースではなくフローですが・・・


まず、フォームからメアド・ID・パスを受け取りDBへ登録します。登録する時に登録フラグを「0」(仮登録)にしておきます。

登録確認メールに本登録HTMLアドレス?ID=IDのURLを入れて送信します。

本登録HTMLアドレスにアクセスされた時にIDがDBにあり、パスワードがあっていれば登録フラグを「1」(本登録)に書き換えます。

以降、ログイン時にID・パス・登録フラグをチェックすることで判断できると思います。

仮登録の時に受け付けた時間もDBへ登録しておいて本登録までの時間差をチェックするといいかもしれません。

具体的なソースが必要であれば環境などを教えていただければと思います。

◎質問者からの返答

回答ありがとうございます。

>具体的なソースが必要であれば環境などを教えていただければと思います。

以下でよろしいでしょうか。 DBはMySQL 4.0.2xで、PHPはVer 4.3.10、SENDMAIL のコマンドパスは /usr/sbin/sendmailです。また、システムの希望構成はIDやパスワード、メールアドレスなどをあらかじめ入力していただき指定先のメールアドレスにランダムなURLで構成されたURLをクリックしたことによってはじめてアクティブになるものです。

どうぞよろしくお願いいたします。


2 ● くいっぱ

http://php.s3.to/man/function.crypt.html

crypt

例えばcryptなどを使ってランダムURLを作成します。

URLといっても、特定のスクリプトにGETの引数として渡すとラクチンです。

http://www.a.b.c/geturl.php?code=XXXXXXXXXXX

みたいに。XXXXは希望IDごとにランダムです。

例えばこのGETの引数にIDなどもつけておいてあげれば、ID発行時につけたスクランブルコードと比較して、発行時につけられたアクセスコードでアクセスしたことがわかるようになりますので、そのIDの正式認証をしてあげるようにDBをかきかえてあげればいいのではないでしょうか。

◎質問者からの返答

大変申し訳ございませんが、実際に回答からシステムを構築することができず、有力な回答が得られなかったためキャンセルさせていただきます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ