sironekotoroの日記

Perl で楽をしたい

独習Perl 第2版 第10章 CGIプログラミング

10.1 CGIとHTML

  • inputタグに指定できるtype属性の種類
  • checkbox
  • file
  • hidden
  • image 画像をクリックすると、その座標を取得する
  • text
  • password
  • radio
  • reset
  • submit detaをCGIに送信する

  • 必要なhtml写経してたら眠くてつらい

10.2 CGIモジュール

CGIで定義されているのは入力の形式と出力の形式だけなので、その形式に従ってさえいれば、それを処理するプログラムはどんな言語で作ってもかまいません

  • しらんかった

    • Perl専用とも思ってなかったが、どんな言語でもokとはおもわなんざ
  • $query = new CGI

    • これだけで、$queryオブジェクトにユーザーからの入力データが入る
  • $query->param('valiable')
    • param関数を使ってデータを操作する。
    • variableはHTMLで指定したnameの値
    • $query->param('variable') = value みたいな感じで格納される
    • 複数の値を格納した場合(例えばformの中でcheckboxを使った場合)には、カンマで区切られた値が格納される

CGIでwhileループをまわすところがあるんだけど、違和感が

print "<li><strong>$os</strong>: $count</li>\n"
while (($os,$count) = each (%ostotal));
print "</ul>\n";
  • whileのところが先に処理されてから、printを繰り返す・・・?

  • いずれにせよ、CGIみたいな仕組みすごい便利だよなーと今更ながら。

10.3 ファイルのアップロード

  • $query->uploadInfoの`I``を小文字にしてしまい、スクリプトがうまく動かず30分くらい唸る