PHP素人
PHPはそんなに特殊な言語じゃないので、他人の書いたスクリプトなんて、
ソース追いかけていくらでも改造出来て当たり前。
なんせあたしゃ小学校の頃にBASICをやって以来、20年ぐらい趣味でプログラミングしてるから。
でも、既製品の改造ではなく、初めから作るとなると、これは難しい。
何が難しいって、設計図を思い浮かべるのが難しい。
普段作り慣れたWindows用アプリなら、必要なことを実現するために何が必要か、
作り始める前に大概のことは想像できて、後はそれをやるだけって感じになる。
でも、自分で設計して作った事がない物は、想像すること自体が難しいのだ。
昨日急に思い立って、物件検索のスクリプトを作ろうという事に決めたが、
まず何から始めて良いかで悩むほどの素人だ。
最終的には、データベースに入ってるデータを引き出して見せるのが目的のサイトだが、
じゃあその前にデータベースにデータを入れなきゃいけない。
データを入れたり編集したりするためのフォームを先に作らなきゃいけない。
そのフォームにアクセスできるのは限られた人だけになる予定なので、
その限られた人だけがログインできるような仕組みを先に作らなきゃいけない。
どうやってそのログインとかの仕組みを実現するのだ?と言うところから勉強が必要。
とある、あまりセキュリティを考えてないサイトだと、
ログインしたページのURLにIDとパスワードが書かれてしまっている。
hoge.cgi?id=oresama&pass=himitsu
みたいな感じ。
これの何が悪いかって、ひょんな事からリファラが付いたら、知らない人にログインされちゃう。
でも、URLにパスやIDを入れないで、いったいどこにその情報を付加して送るのだ?
我々がブラウザから何かにアクセスするとき、URL以外に何の情報を送っているか。
そういうのはどうやって調べて良いかもわからない。
しかし答えはすぐ手元にあって、慣れ親しんだrNoteでログインをどうしてるか見てパクればいい。
みたところ、クッキーに情報があればURL以外に付加情報として送られるってことと、
たとえクッキーが送信されなくてもPOSTでもらうURLなら大丈夫ということらしい。
そのまんまパクって、クッキー有りで動作はしたが、クッキーなしは面倒で試してない。
見た感じだと、ブラウザを閉じると消えるクッキーと、何日か残るクッキーに分けている。
一度ログインしたら、毎ページごとにパスワード求めるのは面倒だということと、
かといってよそのPCにはパスワードを残したくないと言うことを両立した作りなわけだな。
で、rNoteをパクると言っても、rNoteの管理画面は複数ユーザーがログオン出来ないので、
その辺だけチョッピリ変更してパクった。
なんか、よそのスクリプトをパクリながら作っていけば最後まで作れそうな予感がする。