[PHP・mysql]ログイン機能~マイページを作る

PHP

会員登録 ~ ログイン ~ マイページに登録したデータ表示

できたー!!!!ちゅー

“twitterでログイン”とかも作る予定ですが
世にあるSNSに依存しきるのもやなのでオリジナルも欲しく。。
あとSNSに興味がない人もターゲットなのでね^^

会員登録とログインの基本は例の本Head First PHP & MySQL ―頭とからだで覚えるWebアプリケーション開発の基本第7章の通りにやればできました。

クッキーに加えてセッションも覚えたキラ

あとはmySQLにて
ユーザーマスタとなるテーブルを作成しました。
(ここにIDとパスワード、その他を入れる。)

新規ユーザー登録フォームからは、このテーブルにインサート。
その際パスワードは暗号化!

そしてマイページ用のテーブルも一個作り・・
ここで
ユーザーIDと商品IDの紐付けを行う感じ。
レビュー等もこのテーブルに入ることになる。
マイページ用のテーブルのイメージ
——
ユーザーA 商品206 コメント お気に入り度
ユーザーA 商品302 コメント お気に入り度
ユーザーB 商品006 コメント お気に入り度
ユーザーA 商品605 コメント お気に入り度



——

「マイページに保存」ボタンを押すと、
このマイページ.phpに商品IDをPOSTで飛ばす。

その際にセッションがない場合はログインフォームにリダイレクト。
(※その前に、クッキーにPOSTの商品IDを入れておく!新規登録したあとにはPOSTは消えしまうので)

ログイン状態の場合(=セッションがある場合)は
以下のようにIF文で出しわけわけ作業。

◆パターン1
1,POSTを確認 ない場合
2,クッキーを確認 ない場合
3,普通にマイページ用テーブルから商品IDを、セッション(ユーザーID)でSELECTし、
商品テーブルから該当情報をSELECTして表示

◆パターン2
1,POSTを確認 ない場合
2,クッキーを確認 ある場合
2.5,クッキーで受け取った商品IDと、ログインしているセッション(ユーザーID)を
マイページ用のテーブルにインサート。
3,上の3に同じ

◆パターン3
1,POSTを確認 ある場合
2,POSTで受け取った商品IDと、ログインしているセッション(ユーザーID)を
マイページ用のテーブルにインサート。
3,上の3に同じ

◆パターン4
1,POSTを確認 ない場合
2,クッキーを確認 ない場合
3,普通にマイページ用テーブルから商品IDを、セッション(ユーザーID)でSELECTし、
→ない場合  「マイページには何も登録されていません」を表示

あと必ずインサートしたら、POSTとクッキーの中身を削除する!

・・とまぁ登録の基本部分ですが一段落。

本当は「マイページに保存」ボタンを押すと、
このマイページ.phpに遷移しないで
裏でマイページ用のテーブルにインサートさせたいのだけど・・
それには何やらAjaxが必要そうな気配・・
この要件は一旦先送りw

次はマイページから商品を削除する機能を作る。

あと
・パスワードを忘れた人のパスワードリマインダ、
・新規登録時に、メールアドレスにメールを飛ばしてそのメール内のURLをクリックしないと本登録にならないやつ、
・ユーザーの登録情報の更新、
・退会、
・etc..

うはぁ気が遠くなりそう泣き
ログイン周りは付随するやることがいっぱいあるな。。

—–

コメント

タイトルとURLをコピーしました