30歳からWebエンジニア転職を目指す

事務職に見切りをつけ、Webエンジニアに転身するために勉強する男の記録

ログインフォーム(練習問題)ができました!

こんにちは。しゅーのーです。

 今日も参考書『PHP入門講座』を使ってphpでのプログラミングの勉強をしていました。

Webサイト制作者のための PHP入門講座

Webサイト制作者のための PHP入門講座

 

 

ログインフォームができた!

今日はコンタクトフォームを応用した「ログインフォーム」を作るという練習問題にチャレンジしていました。

ページの移動はせずに、ユーザー名、パスワードを入力したときにメッセージを返すことになります。

 

まずは体裁を整える

phpでのプログラミングの前に、ユーザーに入力してもらう部分を作る必要があります。

これはHTMLでの記述になります。

まだHTMLも完全に理解しているわけではないのですが、<form>タグで囲った中で<input>のtypeをいじってテキストボックスにしたり、methodをpostにしたりして準備をします。

この辺はコンタクトフォームのものを流用して作ってしまいました。

 

ユーザー名、パスワードを変数で設定

この部分からphpでのプログラミングに入ります。

課題としては「$_SESSION['login']をTRUEにせよ」というものでした。

最初は「何言ってんだおめぇ」って感じで見てたんですが、考えてるうちに色々だんだん分かってきました。

とりあえず$userと$passwordという変数に何かしら入れておいて、ユーザーがpostしてきたものが一致したら「$_SESSION['login'] = TRUE」っていうことを書いてあげればいいわけです。

 

入力チェックも忘れずに

今回もこれまでの基礎学習と同様に、入力のチェックをしていきます。

テキストボックスに割り振ったname属性がpostされるので、$_POST変数をisset()関数で使ってチェックします。

入力されていれば、あとはif構文を使って$_POST変数とあらかじめ設定したユーザーとパスワードが一致しているかを調べて、一致していれば$_SESSION['login']をTRUEにします。

 

模範解答はかなりすっきり

こんな感じでウンウン考えながら、なんとか動作するプログラムが書けました。

その後に模範解答を見たら、すごくすっきりしたコードで書かれていたので驚きました。

 

自分で書いたコードでも動作しますが、当然のごとく模範解答のほうがいいコードだったので、自分で書いたものを少し改良してみたりして、理解を深めました。

「確かにこうしたほうがいいな」と思う部分もあったりしたので、それも盛り込みながらのコーディングになりました。

 

達成感

今回の練習問題は、解けたということもあってか、とてもすっきりした達成感がありました。

今使っている参考書は、ひとまずこれで終わりにします。

次は下のものを使ってphpSQLの連携を勉強をしていこうと思います。

よくわかるPHPの教科書 【PHP5.5対応版】

よくわかるPHPの教科書 【PHP5.5対応版】

 

SQLだけやっているとphpを忘れそうなので、phpにも少し時間を割きながらSQLメインで勉強していきます。

 明日は通読するだけになりそうな気もします。

 

 今日はここまで。ではー。