CGI-BBS > アクセスカウンタ > CGI式カウンタ > テキストで表示するアクセスカウンタが表示できません。


カレッヂ
カレッヂ


質問者 js  投稿日 2/19(月) 13:13:07
テキストで表示するアクセスカウンタを作ってみたのですが

●●.cgiと、直接実行すると表示できるのですが

index.htmなどhtmlファイルに<IMG略〜●●.cgi>と埋め込むとXが出てきて
表示が出来ません。
原因がわかる方いらっしゃいませんか?

初心者でよく分からないのですが
ヘッダの送出というんでしょうか?開始時に
print "Content-type: text/html\n\n";
ここに問題があるような気がするのですが。

よろしくお願いします。
回答者 羊相談員  [削除]  投稿日 2/19(月) 13:50:12
IMGタグが画像を表示するためのものだからです。
回答者 羊相談員  [削除]  投稿日 2/19(月) 14:08:02
対処法をいくつか挙げておきます。

・SSIを使う
・ページ全体をCGIで出力する
・フレームを使う
・SCRIPTタグでCGIを呼び出してJavaScriptで表示すればできるかも
回答者 ゆうぽん  [削除]  投稿日 2004/3/30(火) 19:04:39
上のレスを見て思ったんですが、
<script>タグでCGIは呼び出せるのですか?
それと、フレームを使うと、どうしてもCGI側の余白が出てしまうんですけど、
対処法はありますか?
回答者 sim  [削除]  投稿日 2004/3/31(水) 13:44:55
<script language="JavaScript" src="./count.cgi"></script>
あなたは<script language="JavaScript">document.write(i)</script>人目のお客さんです

こんなのでどうでしょ?
count.cgiは

print<<"EOF";
<!--
var i = 356;
-->
EOF

こんなので書き出してます。
回答者 ゆうぽん  [削除]  投稿日 2004/3/31(水) 17:11:40
それが、scriptで呼び出すとエラーになるんです。
CGIでログファイルをopenしているからでしょうか?
回答者 sim  [削除]  投稿日 2004/3/31(水) 20:50:46
openしてるというのは関係ないかと思います。
何かしらの構文上のエラーが出ているのではないでしょうか?



回答者 sim  [削除]  投稿日 2004/3/31(水) 20:57:38
途中で送信してしまいました。

count.cgi中身
------------------------------------------
#!/usr/bin/perl

open(OPEN,"+< ./count.pl");
$count = <OPEN>;
$count++;
seek(OPEN,0,0);
print OPEN $count;
close(OPEN);

print "Content-type: text/html\n\n";
print<<"EOF";
<!--
var i = $count;
-->
EOF
exit;
------------------------------------------
とりあえずこんなので動きませんか?

返信(回答)する


Web裏技