質問: サイト上に会員登録システムを導入しようと考えています。 PHP/Mysqlで、会員システムを構築する参考になるサイトを教えてください。 考えている条件はこちらです。 【1】メールアドレス認証後、本登録 【2】ヤフー等のように、ログインしているユーザには「ようこそ○○さん」等のユーザ情報を記載。 【3】ログインしていないユーザもサイトは閲覧できる 【4】URLに ? & 等が無いようにしたい。 【5】フレームワークは多くて選べなかった上に、使い方がよくわからなかった 【6】既存のOpenPNE等のソフトを流用しても、ソフト固有でないURL各ページから認証できれば可
回答: こんにちわ。 PHPでログインシステムを作成することは以外に簡単にできます。すでに公式ライブラリであるREARにAuthというパッケージがあるので、そちらを利用することで簡単に構築できます。ただ、あくまでもログインシステムを作るだけでご質問にあったようなこと(1,4)は別にする必要があると思います。 【1】メールアドレス認証後、本登録 これはさほど難しくはないと思います。簡単にやれば、メールアドレスを入力してもらう欄を作成し、実際にメールアドレスが入力されると、DBにメールアドレスとランダムで作成した文字列を入力します。その文字列をメールアドレス先に送信し、指定したURL+文字列をクリックさせます。クリックした瞬間、DB内から引数で取得した文字列と照会をかけ、該当すれば登録画面へ、該当しなければ再度メールアドレス入力を促します。この方法だとセキュリティ面が怪しいので、タイムスタンプを発行し、24時間以内に登録させうなどするほうがよいでしょう。 【4】URLに ? & 等が無いようにしたい。 これはmode_rewriteを使用すれば簡単にできます。たとえば をrewriteを使用すれば引数であるuを としてindex.phpに送信できます。ただ、規制の多いレンタルサーバであれば許可していない場合もありますので、確認してみてください。(たしか さくらインターネットはOKだったと思います。) (1年半前位に私がした質問です) 参考になれば幸いです。