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

はじめまして zetoraと申します。どうぞよろしくお願い
致します。

質問の内容は チャット参加者をTOPページにリアルタ
イムに表示する方法が知りたいのですが どうすれば表示
できるのでしょうか?

■使用しているチャットcgi
Lachat Pro(Inside Web)
(http://www.inside.ne.jp/cgi/lachat/pro/)

検索エンジンでいろいろと調べたのですが 分かりません
一番内容に近かったと思う質問掲示板が 見つかったので
すが 内容が上手く理解できないので。。。下記がその質
問掲示板のアドレスです。

http://tohoho.wakusei.ne.jp/lng/199912/99120343. …

HPではCGI/SSI使用できる環境です SSIの設置もあまり
理解できてないのですが。。。

また上記の方法以外にも 表示方法 お勧めのプログラム
等ありましたら 教えていただけると幸いです どうぞよ
ろしくお願い致します。

A 回答 (6件)

やり方としては、


参加者表示のみを行うCGIを設置して、
SSIでトップページに表示させるという方法になります
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
その仕組み事態は理解できてるのですが、そのCGI
が分からないんです^^; プログラムがあれば設置
はできるんですが そのCGIを探しています。

お礼日時:2002/05/05 03:58

質問にあるアドレスのCGIでいいんじゃないでしょうか


修正しろと言うところをいじって使えるかと思います
    • good
    • 0
この回答へのお礼

そのCGIの内容が理解できないので 教えていただき
たいんです まだプログラム自体はいじれないもので。
試した内容を記述しときます。



sanka.cgiと名前付けてアスキー転送しました。
属性は755です。 他のcgiは755で動作します。
以下はsanka.cgiの内容です。


#!/usr/bin/perl

require '.setup.cgi';

print "Content-type: text/html\n\n;
open(IN, "user.txt");
@members = <IN>;
close(IN);

print "参加者: ";
$num = @members;
if ($num > 0) {
foreach (@members) {
($m, $h, $n) =split(/\t/, $_);
print "<font size=2>$n</font> ";
}
} else {
print "なし\n";
}
}


TOPページに<!--#include virtual="chat/sanka.cgi"-->
と表示しましたが[an error occurred while processing this directive]
というエラーが出てしまいます。

お礼日時:2002/05/05 19:23

<!--#exec cgi="~"-->では?

    • good
    • 0

っと、


requireの部分も修正してください。
require '.setup.cgi';
ではなく
require './setup.cgi';
まぁ、この行自体消しても問題無いようですが。
    • good
    • 0
この回答へのお礼

the845s様ありがとうございます。

#!/usr/bin/perl

print "Content-type: text/html\n\n;
open(IN, "user.txt");
@members = <IN>;
close(IN);

print "参加者: ";
$num = @members;
if ($num > 0) {
foreach (@members) {
($m, $h, $n) =split(/\t/, $_);
print "<font size=2>$n</font> ";
}
} else {
print "なし\n";
}
}



require './setup.cgi';を付けても実行できませんでした
require '.setup.cgi';を消し
<!--#exec cgi="chat/sanka.cgi"-->で表示しようとした
のですが やはり表示されませんでした どこが間違って
いるんでしょうか^^; 同じデレクトリのcgiは正常
に動いてますし 他のSSIもちゃんとできてるのですが

他に原因ありそうな箇所はありませんか?

パーミッション設定も何度も確認していますし、属性755
 アスキー転送で行っています よろしくお願いします。

お礼日時:2002/05/06 14:31

修正方法は下で在るみたいなので特に触れませんが、


CGIをアップしたらまずはそのCGIにアクセスしてみてください
その状態でエラーが出てる場合があります

http://www.ibport.co.jp/~yui/cgiwork/debug/
ここにあるdebug.cgi(ページのまん中辺り)を使って調べてください
何かミスをしてる場合があります
('を消しちゃったり\がなかったり)

参考URL:http://www.ibport.co.jp/~yui/cgiwork/debug/
    • good
    • 0
この回答へのお礼

試してみましたが どこが違うのかが分からないです^^;

print "Content-type: text/html\n\n
の前に
BEGIN{#ここから
$|=1;# ゆい'デバッグ情報サービス
open(STDERR,"&STDOUT");
print "Content-type: text/plain\n\n";
}#ここまで
と書き込んだら 白紙のページで表示されたのですが
print "Content-type: text/html\n\n
の後に記述したらサーバーエラーとなりました
という事はprint "Content-type: text/html\n\nの
記述が悪いのでしょうか?

お礼日時:2002/05/06 14:45

ローカルでコピペして試すといくつかエラーがありました。


今記述してあるものがコピペしたものであると、以下に訂正してみて下さい。

#!/usr/bin/perl

print "Content-type: text/html\n\n";
open(IN, "user.txt");
@members = <IN>;
close(IN);

print "参加者: ";
$num = @members;
if ($num > 0) {
foreach (@members) {
($m, $h, $n) =split(/\t/, $_);
print "<font size=2>$n</font> ";
}
} else {
print "なし\n";
}


print "Content-type: text/html\n\n";
で、最後の「"」で閉じていないのと、
最後の行の「}」が不要です。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。1つ記号が抜け落ちて
るだけで動作しないんですね 勉強になりました。
HP上で試した結果 ちゃんと動作してくれました。
また機会ありましたら よろしくお願いします。

お礼日時:2002/05/10 13:25

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