ログアウト機能実装完了
こんにちは。
文系出身でも・未経験でも・プロのプログラマーを目指すブログ
略して「プロプロ」
あんまん(@aaii0123)です。
オリジナルWEBサービスに着手してから、1週間が経過しました。
この調子だと、完成までにあと2週間くらいはかかるかなぁ・・(遠い目)
焦ってやってもしょうがないのスタンスでやっているので
無理にペースアップはしませんが、早く次のステップに進みたいなと
気持ちばかりがはやる今日この頃・・
今は着実にできることを増やしていくことにフォーカスして頑張りたいと思います。
さて、今日の進捗です
取り組んだこと
今日はこんなことに取り組みました!
・ウェブカツの動画を視聴しメモを取りながらログアウト機能のコード写経
・メモをみながらのログアウト機能実装
・head、headerの外部ファイル化
・マイページ遷移の無限ループ対処
・ユーザー登録後、ログインをスキップしてマイページに遷移させる対処
・仮のマイページ作り
ログアウトは画面表示がなく、
処理としてはセッションを削除してログインページに遷移させるだけなので
かなりあっさり実装することができました!
(エラーは出たけど!!)
むしろそれ以外(無限ループ対処など)の方がずっと時間がかかってる^^;
また、この段階でheadとheaderを外部ファイル化したので、
とりあえずヘッダーの部分だけある、仮のマイページも作成しました!(こんな感じ)
(先日、スクリーンショットが保存できないとぼやいたのですがOSをアップデートしたら無事保存できるように笑)
ヘッダー以外のところが空白で寂しかったので、背景も仮で指定w
機能の実装をはやく終わらせて、もっと見た目にもこだわりたい・・
ググったこと
・basename関数
パスからファイル名を取得する関数
接尾語を指定した場合は、接尾語を除いたファイル名を返す
https://webkaru.net/php/function-basename/
・$_SERVER['PHP_SELF']
$_SERVER は、ヘッダ、パス、スクリプトの位置のような 情報を有する配列
'PHP_SELF’キーは、現在実行しているスクリプトのファイル名をパスで返す
https://www.php.net/manual/ja/reserved.variables.server.php
・lastInsertID
PDOオブジェクト実行直後、SQLにINSERTされた値のIDを取り出すことができる
少し前まではPHPのマニュアルって読みづらくてすごく苦手意識があったのですが
わからないことを何度もググっていくうちに、抵抗感がなくなってきました!
徐々に公式のドキュメントへの苦手意識を克服して、より正確な情報源から情報をとれるようになっていきたいです。
学んだこと
・マイページが無限ループになるバグへの対処
ログイン認証後、マイページに遷移させる処理に制限をかける
具体的には→
ログイン認証がされた際の実行中のファイルがlogin.php(新規ログイン)である場合にのみマイページに遷移させるようにする
・ユーザー登録後、ログイン処理を経ずにマイページへ遷移(ダイレクトにマイページへ遷移)させる処理
マイページへ遷移する前にセッションに情報を詰める
具体的には→
最終ログイン日時とログイン期限時間を更新し、DBからとってきたユーザーIDをセッションに詰める
明日の宿題
ユーザー登録後のログインをスキップしてマイページに遷移させる対処のところで
エラーが解消できず、まだ完成できてない状態です^^;
エラーもそんな複雑な内容ではないので、おそらく簡単なミスだと思うのですが
今日中には潰せず・・
明日、朝起てスッキリした状態の頭でリトライしたいと思います!
まとめ
今日は細々とした処理に取り組みました!!
書くべきコードが少ないとやっぱり心理的な負担がだいぶ軽いですね
明日は、今日潰せなかったエラーを潰して退会機能の処理に着手したいと思います!!