- 締切済み
このように書くとエラーが出ます
昨日も同じような質問をしました どうかお許し下さい 若干変更を加え このようにしたのですが kino.txtは確かに実行するたびに1つ大きな数になります しかし 表示されるのは エラー表示・・・・・・ どうしてですか? #!/usr/bin/perl $kinoko='./kino.txt'; open DATA ,"+<$kinoko"; $mokko=<DATA>; $mokko++; seek(DATA, 0, 0); print DATA $mokko; close DATA; print <<"EPO"; <html> <body bgcolor="cream"> <font size="7"> $mokkoです </font> </body> </html> EPO exit;
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- leaz024
- ベストアンサー率75% (398/526)
> kino.txtは確かに実行するたびに1つ大きな数になります について確認させください。 この「実行」というのは、CGI としてブラウザでアクセスした、ということですよね?ローカルや Telnet などで、「perl スクリプト名」などとして実行したのではないのですね? また、実行すると kino.txt の内容はカウントアップするのに、エラー表示になる、ということですよね? 問題のスクリプトは、質問に書かれたもので全てですね?それ以外の部分を削って載せていたりはしませんね? もし少しでも違う部分などがあれば、その辺に問題があると思われますのでご返信ください。 それらに間違いがないとすれば、もはや何が問題なのか分かりません。 何の処理もせず、とにかく CGI としてエラーが出ない形までスクリプトを簡略化し、そこから少しずつ元のコードを加えてみるしかないと思います。 まずは、 *** ↓ここから *** #!/usr/bin/perl print <<"EPO"; Content-Type:text/html OK EPO *** ↑ここまで *** このスクリプトで、ブラウザに OK が表示されるか確認してください。 それすらもままならない場合、サーバ管理者に問い合わせるしかないと思います。 ※コピー&ペーストをすると、各行の末尾に余計なスペースが入りますので、それらは削除してください。
- leaz024
- ベストアンサー率75% (398/526)
> これでも エラーが出ます あ、すみません。 昨日のスクリプトを手直ししたソースをコピペしてしまいました。 print <<END_HTML; ではなく、 print <<EPO; ですね。
補足
やはりだめです
- leaz024
- ベストアンサー率75% (398/526)
昨日、私が書いた回答のうち、seek の方は取り入れられたようですが、もう1つの HTTP ヘッダの出力がされていません。 > print <<"EPO"; > > <html> の部分を、 print <<END_HTML; Content-Type:text/html; charset=Shift_JIS <html> としてください。 ※Content~の行と、<html>の行の間には、何も書かれていない空行が1行必要です。 # 同じ質問を新しく立てるなら、まず過去の質問を締め切りましょう。
補足
これでも エラーが出ます
お礼
若干忙しいので 後日試してみます 親切にありがとうございます