• ベストアンサー

cgi-lib.plのReadParse関数

あるパールからcgi-libを呼び出して、ReadParse関数を使おうとするとInternal Server Errorがでてしまいます。 パールの中身は #!/usr/local/bin/perl require 'cgi-lib.pl'; require 'jcode.pl'; &ReadParse(*in); です。 そこで3行目と5行目の行頭に#をつけて飛ばすとパールは正常に動きます。 これってcgi-lib.plのReadParse関数がいけないんでしょうか? ダウンロードしたまま何も変更していないのに..... ちなみにサーバーのパールのバージョンは5.004のようです。

質問者が選んだベストアンサー

  • ベストアンサー
noname#9414
noname#9414
回答No.2

cgi-lib.plからのReadParse関数というのは、引数を 持たないものです。通常、&ReadParse;とすれば、 @inという連想配列にブラウザからの環境変数を 代入してくれているので、後で使いたいときは、 $in{'something'}とでもしてあげれば、取り出すことが 出来ます。 これは、CGIの本に書いてあるので、そういった本を 買ってもいいと思いますよ。 ではでは☆ P.S 私は、以下の本で勉強しました。 Softbank 「Perlで作るCGI入門」(基礎編・応用編) 結城 浩【著】

参考URL:
http://www.hyuki.com/cgibook/

その他の回答 (1)

  • Tuikmyu
  • ベストアンサー率0% (0/1)
回答No.1

ええと、そのプログラムは・・・・単体で実行していませんか? 単体で動かしていたら、動きません。 もし、そうでしたら・・・HTMLで簡単なフォームを作って これを使ってPerlプログラムに送ってみてはいかがでしょうか? その際には、 $test = $in{'test'}; print $test; などのフォームを取得・表示するものを一緒に書いてみてください。

mune
質問者

補足

回答ありがとうございます。 単体で実行というのはどのようなことでしょうか? 一応requireでcgi-libを呼び出しているんですが..