• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アンケートフォームの作成)

アンケートフォーム作成でinternal server errorが発生する

このQ&Aのポイント
  • アンケートフォームの作成中にinternal server errorが発生しています。試行錯誤しているものの解決できず、質問をさせていただきました。
  • 問題が発生しているのは、HTMLとPerlのコードの一部です。
  • いくつかのエラーチェック機能を削除したが、動作しない状態です。パーミッションや拡張子の変更も試しましたが、解決策が見つかりませんでした。

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

  • ベストアンサー
  • ariman_
  • ベストアンサー率45% (27/59)
回答No.2

ソースをそのままコピーしたものですか? No.1さんとかぶりますが、 $date = $cgi->escapeHTML('$date'); '$date'は、シングルクォートは、いらないのではないでしょうか? あと、 > Date::Simple::data これは、Date::Simple::dateではありませんか?最後は「a」ではなく「e」です。 > $date_check = ''error; シングルクォートが二つ前にあって、errorを括っていません。 以上、ざっと見た範囲で、気になった部分を書いてみました。

slave001
質問者

お礼

ご回答ありがとうございました。 ミスを指摘していただき、他の箇所も修正を繰り返すことでなんとか動作いたしました。

その他の回答 (1)

回答No.1

use CGI; use CGI::Carp qw(fatalsToBrowser); とすると、エラーの発生場所がブラウザでわかって便利です。 パッと見、$date = $cgi->escapeHTML('$date'); が変です。'$date'という文字列にしかなりません。 use CGI; $cgi = new CGI(); $date = '12345678'; $hoge = $cgi->escapeHTML('$date'); print $hoge, "\n"; --- $ perl foo.pl $date そもそも、$cgi->paramでアンエスケープ処理されるので、$date = $cgi->escapeHTML('$date');は不要です。

slave001
質問者

お礼

ご回答ありがとうございます。 参考書籍に書いてあったものを鵜呑みにしてしまいましたがescape不要だったんですね。 大変参考になりました。

関連するQ&A