- 締切済み
うまくいかなくて、困っています
http://www.olive-design.com/~cgi/perl/bbs01.html こちら様の中身を http://www.kazenosawa.jp/jp/site.html の形で表示させたく改造を試みておりますが うまくいきません。 どこが悪いのかもHTMLぐらいしかわからない 私の脳みそではわかりません どなたかご指摘ください よろしくお願いいたします ****perlの中身↓**** #!/usr/bin/perl #このスクリプトの場所 $this = "./oboegaki.cgi"; #ログファイルの場所 $logfile = "./log.dat"; #フォームからデータを読み込み #読み込んだデーターを$inputに代入 $input = $ENV{ 'QUERY_STRING' }; #$inputから文字列をsplitで分解(=を削除)して$nameと$commentに代入 ($name,$comment) = split /=/, $input; #--valueデータのデコード処理 $comment =~ tr/+/ /; $comment =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; #データファイル読み込み open(LOG, "$logfile"); @log = <LOG>; close(LOG); #ログ保存数を設定 $data_max = 100; #コメントが追加された時の処理 if ($comment){ open(LOG,">$logfile") ; unshift (@log,"$comment\n"); #ログ保存数を設定($# は変数のインデックスの最大値を求める記述) if ($#log > ($data_max -1)){ $#log = $data_max -1; } print LOG @log; close(LOG); } #HTMLの表示 print <<"HTML"; Content-type: text/html <!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=Shift_JIS' /> 省略 <meta name='copyright' content='風の沢ギャラリー' /> 省略 <link id='style_0' rel='alternate stylesheet' href='./css/font_smallset.css' type='text/css' charset='utf-8' title='Largest Fonts' /> <script type='text/javascript' src='./js/font.js'></script> <script type='text/javascript' src='./js/lib.js'></script> </head> <body> <div class='base'> <div class='box'><a href='http://www.kazenosawa.jp/'><img src='./img/logo_mini.png' alt='風の沢ギャラリー' border='0' /></a></div> <div class='box_r'></div> <div class='contents'> <!--<img src='./img/top.jpg' />--> <a href='./exhibition/index.html' onMouseOver='changeImage1()' onMouseOut='changeImage2()'><img src='./img/menu1.png' border='0' name='menu1' alt='企画展覧会' /></a> 省略 <a href='./rent/index.html' onMouseOver='changeImage7()' onMouseOut='changeImage8()'><img src='./img/menu4.png' border='0' name='menu4' alt='レンタル' /></a> <div class='second_header'> 省略 </div> <img src='./img/menu-info.gif' border='0' alt='ご利用案内' /> 省略 <img src='./img/sub_title_made.gif' border='0' alt='覚え書き' /> <div class='honbun'> <p class='txt'> <form action='$this'><br> HTML #コメント部分の表示 foreach $com (@log){ print "=> $com<br/>"; } 保存コメント数は $data_max です。<br> 入力 => <input type=text name="comment"> <input type="submit" value="送信"> print "</p></div></div></div><div class='bottom'><br />"; print "<script src='http://www.google-analytics.com/urchin.js' type='text/javascript'></script><script type='text/javascript'>"; print "_uacct = 'UA-3709853-1'@;"; print "urchinTracker()@;"; print "</script>"; print "</body></html>"; exit; __END__
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- SpiralGalaxy
- ベストアンサー率39% (649/1653)
>うまくいきません。 何がどう、うまくいかないのでしょう? ブラウザで 404 とか 403 とか 500 とか表示されますか? サーバーはLinux? レンタルサーバーか何かですか? perl へのパス /usr/bin/perl は合ってますか? ファイルの権限は合ってます? cgi動作可能なディレクトリに配置してます? 自分の制御下にあるサーバで apache なら access_log , error_log みればある程度原因わかりますよ。
お礼
説明不足で申し訳ありません。 エラー500でした。 最後の方の 保存コメント数は $data_max です。<br> 入力 => <input type=text name="comment"> <input type="submit" value="送信"> の部分がprintになっていなかったのが 原因と判明し、うまくいきました ありがとうございます