WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:ROM防止機能追加+α

0:[投稿] 紅 [URL] [2002/11/22 10:05 ][環境:WIN+IE UNIX系+Perl]

チャット本体
http://crimsonite.s22.xrea.com/cgi/sample/index.cgi
ログインページとスクリプトのダウンロードhttp://crimsonite.s22.xrea.com/cgi/sample/index.html
------------------------------------------------------

初めまして、この記事をご覧になってくださってありがとうございます。
http://www.parkcity.ne.jp/~chaichan/qanda/qa3364.htm?02-11-12-22-22
を投稿して、無事一行チャット型掲示板を複数行チャット型掲示板に改造することができました。
(その際はさっぱり★さん、ひじさん、ありがとうございました。)

ここで欲を出してこのCGIにROM防止機能も追加したいと思っています。
珍しい機能ではないかと思います。
http://perls.org/sample/myu/chat.cgi
のようにチャットに入る前にログインページが存在して、チャットに直接アクセスは出来ないようにしたいのです。

(1) http://crimsonite.s22.xrea.com/cgi/sample/index.htmlをログインページにして、そこから(そしてそこからのみ)
(2) http://crimsonite.s22.xrea.com/cgi/sample/index.cgi
に入室できるようにしたいのですが、これは可能でしょうか?

今、(1)の入室ボタンを押すとそのままチャットへ入室できてしまいます。
これを何とかCGIで防ぐためには、どういうコードをチャットのCGIに追加すればよろしいでしょうか?

それと、あと追加したい機能がもう一つあります。
もしよろしければ読み続けて下さい。

-------------------------------------------------------
このチャットは以下のコードのようにパスワードを入れて
「グラムという単語」、「正しいパスワード」、「消去という単語」、「削除対象ハンドル名」が同列文に入った発言を行うと、「削除対象ハンドル名」の行った全ての発言を消すことが出来ます。
これを少し改造して、「削除行数」も指定()出来るようにしたいです。一番下(最新発言)から数えて「削除行数」だけ削除を行うという機能です。

例:グラム、「サンプル」を5行消去、パスワードは「...」

これは可能でしょうか?
もしそうであればコーディングの仕方を教えて下さい。


    if($com =~ /グラム/){
        if(($passok == 1) && ($com =~ /「(.*)」(.*)消去/)){
        $key = $1;
        @pairs = split(/\s/,$key);
        $v = 0;
        for($i=0;$i<$#lines;$i++){
            foreach $pairs (@pairs){
#            $pairs =~ s/(\W)/\\$1/g;
            if($lines[$i] =~ /$pairs/){
                splice(@lines,$i,1);
                $i--;
                $v++;
                last;
            }
            }
        }
        $buf = "<font color=navy>グラム</font> &gt; <font color=navy>";
        $buf .= "$v行消去いたしました。";
        $buf .= "</font> <font color=slategray size=-2>[$date]</font><br>\n";
        push(@lines,$buf);


サポートよろしくお願いしますm(_ _)m


1:[質問] 紅 [2002/11/22 10:17 ]

上のROM防止機能について補足です。
HTMLファイルからのログインでなくとも、
何らかの足止めがあればそれで良いのです。
チャットにそのままアクセス(お気に入りからも不可)しようとするとCGIによる制限がかかればさえすれば。
よろしくお願いします。


2:[回答] 紅 [2002/11/22 23:40 ]

色々考えて、上の削除機能は何とかしました。
問題はROM防止機能です。
これの解決法をよろしくお願いします。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World