プロが教えるわが家の防犯対策術!

昨日も同じような質問をしました
どうかお許し下さい
若干変更を加え このようにしたのですが
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;

A 回答 (3件)

昨日、私が書いた回答のうち、seek の方は取り入れられたようですが、もう1つの HTTP ヘッダの出力がされていません。



> print <<"EPO";
>
> <html>
の部分を、
print <<END_HTML;
Content-Type:text/html; charset=Shift_JIS

<html>
としてください。
※Content~の行と、<html>の行の間には、何も書かれていない空行が1行必要です。

# 同じ質問を新しく立てるなら、まず過去の質問を締め切りましょう。

この回答への補足

これでも エラーが出ます

補足日時:2004/03/11 13:38
    • good
    • 0

> これでも エラーが出ます



あ、すみません。
昨日のスクリプトを手直ししたソースをコピペしてしまいました。

print <<END_HTML;

ではなく、

print <<EPO;

ですね。

この回答への補足

やはりだめです

補足日時:2004/03/14 02:41
    • good
    • 0

> kino.txtは確かに実行するたびに1つ大きな数になります


について確認させください。
この「実行」というのは、CGI としてブラウザでアクセスした、ということですよね?ローカルや Telnet などで、「perl スクリプト名」などとして実行したのではないのですね?
また、実行すると kino.txt の内容はカウントアップするのに、エラー表示になる、ということですよね?
問題のスクリプトは、質問に書かれたもので全てですね?それ以外の部分を削って載せていたりはしませんね?

もし少しでも違う部分などがあれば、その辺に問題があると思われますのでご返信ください。

それらに間違いがないとすれば、もはや何が問題なのか分かりません。
何の処理もせず、とにかく CGI としてエラーが出ない形までスクリプトを簡略化し、そこから少しずつ元のコードを加えてみるしかないと思います。
まずは、
*** ↓ここから ***
#!/usr/bin/perl
print <<"EPO";
Content-Type:text/html

OK
EPO
*** ↑ここまで ***
このスクリプトで、ブラウザに OK が表示されるか確認してください。
それすらもままならない場合、サーバ管理者に問い合わせるしかないと思います。
※コピー&ペーストをすると、各行の末尾に余計なスペースが入りますので、それらは削除してください。
    • good
    • 0
この回答へのお礼

若干忙しいので
後日試してみます
親切にありがとうございます

お礼日時:2004/03/15 16:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!