今日は仕事中に、昨夜のLED照明のコントロールスクリプトのエラーの原因を考えていました。
ネットで調べていると、HTMLからcgiスクリプトを呼ぶ例題があったので、早速試してみました。
—— HTML から cgi を呼び出す HTML文 ————
<xmp> <FORM METHOD="post" ACTION="http://blue.runrun.dip.jp/cgi-bin/irrc.cgi"> <SELECT NAME="LED"> <OPTION VALUE="P1">LED 1</OPTION> <OPTION VALUE="P2">LED 2</OPTION> <OPTION VALUE="P3">LED 3</OPTION> </SELECT> <INPUT TYPE="submit" VALUE="PUSH"> </FORM> </xmp>
—————————————————
cgiで、HTMLからパラメータを抽出するには以下のようにします。
—— cgi —————————————-
<xmp> my $buffer=""; if ($ENV{'REQUEST_METHOD'} eq "POST"){ read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'}); } else { $buffer = $ENV{'QUERY_STRING'}; } my @pairs = split(/&/,$buffer); </xmp>
—————————————————
後は、HTMLでVALUEに設定した「P1」から「P3」のパラメータを取り出して、事前に収集した「P1」から「P3」対応の赤外線コントローラの該当データをUSBポートに送出して無事、動きました。