スクリプト改造工房 Part3
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2001/05/02(水) 21:59ID:nr93n3doという人がいましたらここで聞いてください。
ひょっとしたらアドバイス出来るかもしれません。
前スレ
Part1 http://tako.2ch.net/test/read.cgi?bbs=perl&key=958370869
Part2 http://tako.2ch.net/test/read.cgi?bbs=perl&key=986986227
#板移動に伴い「CGI改造工房」→「スクリプト改造工房」に改名
なお、質問するときは
1)そのスクリプトのある場所(URL必須、拡張子".txt"でアップすればなお良し)
2)どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
を必ず明記しよう。
0338名無しさん@お腹いっぱい。
01/08/30 11:13ID:oDDcn6yA0339便乗しようっと@≠335
01/09/03 16:22ID:Nc2zbCIQ0340便乗
01/09/03 19:01ID:hQsTWuf20341名無しさん@お腹いっぱい。
01/09/03 19:06ID:EbbrgK8Ehttp://dx.sakura.ne.jp/~fbrand/fifnel/app/#petit
0342さらに便乗
01/09/03 19:30ID:Nc2zbCIQ>15 名前:名無しさん
>こんな感じに。インクリメントを理解してません。。
これをhttp://dx.sakura.ne.jp/~fbrand/fifnel/app/#petitの2ch風アレンジの複数行モードでもやりたいのですが、
どうすればいいでしょうか。
http://dx.sakura.ne.jp/~fbrand/fifnel/bbs2/のように
No.1 ふぃふ xx年yy月zz日
と、No.でレス記事番号をつけたいです。
0343名無しさん@お腹いっぱい。
01/09/09 02:47ID:ZccdRMt2のようなレスのときパスワード記入、パスワードは管理人が任意に設定可能、
みたいな掲示板を探してます。
http://hp.bird.to/cgi-bin/bbsp4.cgi
↑ベースはこんな感じがいいのですがって全然違いますか?
上記のような機能がついていればこの掲示板でなくても可能です。
当方CGIはアップロードに苦労するほどの超初心者です。
どなたか知っていれば教えてください。お願いします
0344名無しさん@お腹いっぱい。
01/09/09 03:31ID:???そんなBBSは一杯有ると思うよ。
一応僕が尊敬してるKENTさんのBBSを紹介するよ :-)
http://www.kent-web.com/bbs/sample/aska.cgi
http://www.kent-web.com/bbs/sample/yybbs.cgi
上(aska)は見た目が違う(テーブルじゃ無い)けど、機能は同じ、
下(yy)は見た目は同じ(テーブルとアイコン表示)だけど、機能が違う(レスが付けられる)。
どっちかを貰って改造すれば、良いと思うんだけど、もしかしたらaskaに
テーブル付けてタグをループに入れるのとかは結構大変かもしれないなあ。
後、ここのスクリプトは結構改造ものが有るから丁度いいのが有るカモ
しれないけど、僕は知らない。
上の方の検索とかで探してみると良いよ。どこのWEBでもサンプル設置
してあるからね。 もしかしたらその物ズバリってのが有るカモしれない。
0345344
01/09/09 03:38ID:???取り合えず【こんなCGI探してます】スレの検索で色々探せば?
>当方CGIはアップロードに苦労するほどの〜〜
ならaskaを普通に設置してまずは動かしてみなよ。
ここのはFAQとか沢山有るから、みんなに大人気なんだ (・・・・
0346名無しさん@お腹いっぱい。
01/09/09 10:05ID:???0347名無しさん@お腹いっぱい。
01/09/10 18:45ID:IA/gamiU>15 名前:名無しさん
>こんな感じに。インクリメントを理解してません。。
これをhttp://dx.sakura.ne.jp/~fbrand/fifnel/app/#petitの2ch風アレンジの複数行モードでもやりたいのですが、
どうすればいいでしょうか。
http://dx.sakura.ne.jp/~fbrand/fifnel/bbs2/のように
No.1 ふぃふ xx年yy月zz日
と、No.でレス記事番号をつけたいです。
0349名無しさん@お腹いっぱい。
01/09/10 20:35ID:V3sRXBmotxtのある場所w:http://www.bekkoame.ne.jp/~yama1356/host_pl/host.pl.txt
これがうまく作動しません。ちょっと自力で
# リモートアドレスを取得
$addr = $ENV{'HTTP_X_FORWARDED_FOR'};
# HTTP_X_FORWARDED_FOR 対策
if($addr =~ /(.*)\.(.*)\.(.*)\.(.*)\, (.*)/) {
$addr = "$1\.$2\.$3\.$4";
} elsif($addr =~ /unknown\, (.*)\.(.*)\.(.*)\.(.*)/) {
$addr = "$1\.$2\.$3\.$4";
} elsif($addr =~ /(.*)\.(.*)\.(.*)\.(.*)\, unknown/) {
$addr = "$1\.$2\.$3\.$4";
}
# リモートホストに変換
$host = $addr;
$host = gethostbyaddr(pack('C4',split(/\./,$host)),2) || $addr;
こういうものを組み込んで見たら作動した・・・。
それが完全なものか分からないのでその部分だけ教えて下さい。
これは書き込む所が違ったかな?
一応改造なんですが・・・・・・。
0350な=
01/09/10 21:17ID:???$ENV{'HTTP_X_FORWARDED_FOR'};の値はREMOTE_ADDRやREMOTE_HOSTと
違ってクライアント(アクセス制限される人)が改竄出来ます。
だから普通は$ENV{'HTTP_X_FORWARDED_FOR'};は見ないんです。
0351名無しさん@お腹いっぱい。
01/09/10 21:23ID:gPFl9Thk奴はf2sでリモートホストを取得させるのに使う奴なんです。
これはちゃんと取れるサーバーでやるんでアレは「埋め込んでみたらできた」
ってことで・・・・・。
0352な=
01/09/10 21:30ID:???これをrequireして
&host'teku_win;ってするとアクセス制限されるとエラー画面に
飛ばされるだけだよ。BBSのかの一行目に入れるとログも何も見れなく
なる。要はホスト=IP変換して、上の方の$pwd* と突きあわせてるだけ
だから、不安なら自分のHOST追加したりして確認してみれば?
他の理由だったらゴメソ。 ちょっと出ていくから
帰ったらまた読むよ。
0353な=
01/09/10 21:34ID:???スマソ、また後で
0354名無しさん@お腹いっぱい。
01/09/10 21:49ID:???0355349
01/09/10 22:18ID:???他に制限ファイルないですかね?(版違い?)
とりあえずproxyの排除ができればいいんですが・・・・・・。
0356名無しさん@お腹いっぱい。
01/09/10 22:32ID:???>一行目変えて#!usr/bin/perlの下にrequireと記述して掲示板にアクセスしたが失敗。
アクセス出来ませんでした。が出ておしまい、勿論ROMも出来ない。
上でも言ってるけど、逆引き出来てるかが分からないのなら制限HOSTに自分のHOSTを
追加して確認してみてくれ。
X_FORWARDED_FORに常にIPADDRESSが格納されてるなら
#!/usr/bin/perl
print "Content-type: text/plain\n\n";
$host = gethostbyaddr(pack('C4',split(/\./,$ENV{'HTTP_X_FORWARDED_FOR'})),2);
print "$host\n";
こんなのを入れて上手くいってるか確認してみればいい。
もし逆引きに失敗したら(そう言うサーバーも有る)
|| $addr;
でIPADDRESSが入るから、制限HOSTにIPADDRESSを
指定してないと常に閲覧投稿可能な状態になる
それが嫌なら || の後ろからでもエラーに飛ばしてしまえ。
俺はf2sが良く解らんからこれくらいしかいえないよ
0357つーか・・・
01/09/10 22:48ID:???こんなの使いたくない (w
0358349
01/09/10 22:59ID:MpE.AsKUCGIはf2sに置かないことにしてますから普通にホストの取得はできます。
つまり正常な所でやってもそのhost.plは作動しないってことです。
自分のリモートホストでやってみましたが。。。。。
356さんは何もしないでもできたんですか?
>>357
俺も最初見てなんだこりゃって思ったw
0359356
01/09/10 23:34ID:???漏れも一応テストしてみたけど、ちゃんと動いたぞ。ちゃんとONになってるか?
要は逆引きしてHOSTと登録した文字を照合してるだけだから失敗しようが無いんだが。。
一応言っとくと'HTTP_X_FORWARDED_FOR'は普通のサーバーならADDRESSが入るとは
限らない、代理サーバーの設定によっては空だ、つまりザルって訳
あとPROXY*だけを完全に*排除する方法は無い、 だから色んな変数参照して
それらしいのを判断するわけ、甘けりゃ抜けられるしきついと誤爆してしまう
0360356
01/09/10 23:37ID:???require './host.pl';
&host'teku_win;
print "Content-type: text/plain\n\n";
$host = gethostbyaddr(pack('C4',split(/\./,$ENV{'REMOTE_ADDR'})),2);
print "$host\n";
print "$ENV{'REMOTE_ADDR'}\n";
print "\n\n\n\nEND";
0361名無しさん@お腹いっぱい
01/09/11 00:42ID:MdsP5WUUcgiで表示しているスクリプトですが、htmlで表示させることは可能でしょうか?
html表示の方がサーバー負荷が軽いと聞いたのですが、
改造はむつかしいものなのでしょうか?
0362名無しさん@お腹いっぱい。
01/09/11 00:48ID:???KENTって誰ですか?petitボードってなんですか?掲示板ですか?
過去ログ見て依頼の仕方でも学んできてください。
0363名無しさん@お腹いっぱい
01/09/11 00:50ID:MdsP5WUUすいません。
KENT(http://www.kent-web.com/
プチ☆ボード(http://www.kent-web.com/bbs/petit.html
こちらになります。
0364名無しさん@お腹いっぱい
01/09/11 02:19ID:???selectでちょちょいとは行かないようだ、 5分で挫折した
俺には改造を強烈に拒んでるように見えた
0365名無しさん@お腹いっぱい。
01/09/11 03:05ID:???最適化したところでどうせPerlだしもう諦たい…ヽ(´ー`)ノ
と思うも知人に「最適化なら任せろ」と断言しちまったからなぁ…。うぅ。
0366名無しさん
01/09/11 06:09ID:???Kentのスクリプトが酷い??
漏れはKentのスクリプトを読むとその余りの美しさに感動の涙を流してしまうぞ。
お前らはこれでも読んどけ
↓↓↓
http://fswvfr.tripod.com.ar/raib.txt
0367349
01/09/11 07:50ID:FZAwiLII57行目のgethostbyaddr(pack('C4',split(/\./,$ho_wi)),2);
だけを残そうとして54、55の最初に#をつけてみた。
できた・・・・・。
謎すぎ
0368名無しさん@お腹いっぱい
01/09/11 11:45ID:???ここは外国人のスレですか?
0369349
01/09/11 12:32ID:???0370名無しさん@お腹いっぱい。
01/09/11 12:43ID:???いくら滅茶苦茶な日本語でもそれを日本語と判断できないお前が外国人。
0371名無しさん@お腹いっぱい
01/09/11 13:55ID:???一応、sub regist の下でselectしてログ表示部分丸ごとコピペすれば
大丈夫だね 後はQUERYが空ならhtmlに飛んでもらうとして、、、
HTML表示にする事で付きまとう問題
(カウンタが動かない、クッキーはJAVASCRIPT読みに改造、その時起こる文字化け)
にはどう対応するつもりなんでしょ?>質問した方
一応JAVAスクは板違いね、ちょっとはマシにはなりそうですが・・・
0372名無しさん@お腹いっぱい
01/09/11 13:56ID:???0373名無し
01/09/11 16:59ID:???と言う感じじゃ無いかと・・・
0374名無しさん@お腹いっぱい。
01/09/11 18:35ID:???ドキュソクライアント宜しくどんどん仕事が広がっていく
0375363
01/09/11 20:16ID:MdsP5WUU軽々しく依頼してしまい、申し訳ないです。
0376名無しさん@お腹いっぱい。
01/09/11 20:43ID:???依頼してかまわないと思うよ。そういうスレだし
ただやる奴が現れるかどうかは別問題だけどね。
0377名無しさん@お腹いっぱい。
01/09/13 23:43ID:???0378名無しさん@お腹いっぱい。
01/09/19 17:02ID:???0379名無しさん@お腹いっぱい。
01/09/20 03:09ID:???貴方はそれでもいいのですか。
0380名無しさん@お腹いっぱい。
01/09/21 03:46ID:???自ら「初心者です」などとのたまうような恥知らずばかりですから。
0381名無しさん@お腹いっぱい。
01/09/25 09:27ID:ErFieO12ここで配付されている一行掲示板ShortMessageで、
新しい書き込みが下に追加されるように改造したいのですが。。。
どなたか教えて下さい。お願いします。
ソース
http://www.geocities.co.jp/HeartLand-Namiki/9384/shortmessage.txt
0382名無しさん@お腹いっぱい。
01/09/25 09:35ID:???0383名無しさん@お腹いっぱい。
01/09/25 14:09ID:???while ($logmax <= @readed) { pop(@readed); }
unshift(@readed,"$name\t$comment\t$date\n");
↓
while ($logmax <= @readed) { shift(@readed); }
push(@readed,"$name\t$comment\t$date\n");
0385名無しさん@お腹いっぱい。
01/09/28 00:11ID:n9dzVmQQ>だけだとファイルが無いときに自動で作ってくれなくはないでしょうか。
0386385
01/09/28 00:14ID:n9dzVmQQ0387名無しさん@お腹いっぱい。
01/10/02 02:44ID:79J.0mBgこの「分野一覧」の
Ver.Final (4)
Ver.Finalβ (1)
Ver.1.20 (32)
Ver.1.20β (2)
という部分を、
Ver.Final (4) Ver.Finalβ (1)
Ver.1.20 (32) Ver.1.20β (2)
と表示させていきたいんですがどうすればいいのでしょうか。
どなたかご教授お願いします、、
ソース
http://nac_h.tripod.co.jp/tbookmarkp.txt
0388387
01/10/02 03:54ID:???申し訳ありません…
0389名無しさん@お腹いっぱい。
01/10/02 04:00ID:???526行目に $count++;
514行目を if ($count/2 == int($count/2)){$htmlbuf .= "</TR>\n<TR>\n";}
524行目を $htmlbuf .= "<TD COLSPAN=\"$checkbox\"$cb_flag> <B>$sgname</B></TD>";
if ($count/2 == int($count/2)){$htmlbuf .= "</TR>\n<TR>\n";}
0390名無しさん@お腹いっぱい。
01/10/02 04:00ID:???0391387
01/10/04 23:41ID:???すみませんわざわざありがとうございました、、
0392当方へたれですが
01/10/05 19:09ID:y9heCKyc35:require './jcode.pl';#日本語コード変換
163: &jcode'convert(*value,'sjis');
をコメントアウトして,
232: print "Content-type: text/html; charset=Shift_JIS\n\n";
234: print "<META HTTP-EQUIV=\"Content-type\" CONTENT=\"text/html; charset=x-sjis\">\n";
のcharset指定を消すと,日本語変換はされない。と思います。
あと,
174: print "<form action=$script method=$method>\n";
350: print "<form action=$script method=$method>\n";
363: print "<form action=\"$script\" method=\"$method\">\n";
を
print qq/<form action="$script" method="$method" accept-charset="UTF-8">\n/;
とかaccept-charset指定するようにしておけば,UTF-8以外の投稿をはじけるはず。
accept-charsetを使うなら,上のcharsetで同じUTF-8使うようにしといたほうがいいかも。
0393392
01/10/05 19:10ID:???0394名無しさん@お腹いっぱい。
01/10/05 19:12ID:???スレ的にもこっちが合っている。
0395あっちの66
01/10/05 20:13ID:IlecsqKU参考にさせていただいて、頑張ります!
こっちのスレの方が良かったですね。すみませんです。
0396名無しさん
01/10/09 17:03ID:zp21xSuI[リロード] 参加者(0): ROM:(1)
を参加者とROMを逆に置き換えたいんですが、改造の仕方がわかりません
分かる方いますか?
それと、管理人 >あいうえお(10/9(火)16:49 ) ←のように
発言の最後の所に発言するたびに、時間が表示されるんですが
されないようにするにはどこを消せばいいんですか?
分かる方教えて下さい。お願いします。
0397名無しさん@お腹いっぱい。
01/10/09 17:07ID:???スクリプト見せれ。
できたら拡張子を".txt"にしてアップしたやつのURL出してね。
0398たまひめでん
01/10/09 22:26ID:485Lm8iI返信レスを20迄等、返信レスを制限したいのです。
改造、お願いします。
0399名無しさん@お腹いっぱい。
01/10/09 22:29ID:???スクリプト見せれ。
できたら拡張子を".txt"にしてアップしたやつのURL出してね。
0400お役所仕事
01/10/09 22:31ID:???ハイ次の人
0401たまひめでん
01/10/09 23:06ID:???さんへ
ガーン、忘れてました。。
CGIの勉強もしたいので、暫くは自分でやってみようと思います
どーしても、判らない時、アドバイス等頂けましたら幸いです。
0402名無しさん@お腹いっぱい。
01/10/10 00:10ID:???頑張りな。
0403よいち
01/10/10 19:47ID:n8dYHpRcKENT WEBのaskaBBSに、訪問者が表示件数変更出来るようにしたいです。
例えばカール板みたいな感じで...。
askaBBS http://www.kent-web.com/bbs/aska.html?
カール板 http://www.zero-web.net/perl/bbs.html
宜しくお願いします。
0404方法を書けば良いの?
01/10/11 00:17ID:???↓
次に何かのアクション(リロードボタンとか新規投稿とか返信とかの)が
あった時にSet-cookieみたいなサブルーチンがある筈だからそこに
上の表示件数($User_p_viewと仮定)の値を足す(ASKA=〜〜〜みたいな形式のクッキーを吐いてる筈)
↓
Get-cookieした時に表示件数($User_p_view)に値が設定されていたら、多分1ページ辺りの
記事表示数($Default_p_viewと仮定)みたいのが設定項目に有る筈だから、それを$User_p_viewで上書きする、
この代入が総ページ数の
算出なんかをした後だと、不整合が起きるから適宜上書きの場所を決める
こんな感じ、漏れは最近Perlのソース見てないからちょっと勘弁 (笑
0405よいち
01/10/11 17:35ID:563HBBg.HTMLは少し判るので、1番目のプルダウンメニュー付けたりとかは出来ました。
それで、2番目のcookieのサブルーチンの場所も判ったんですけど
どうやって書き換えればいいのかがわかりません。
できればもう少し具体的に教えていただきたいのですが。
他力本願で申し訳ないですけど宜しくお願いしますm(_ _)m
0406111
01/10/11 17:52ID:8p2Cw8ao0407名無しさん@お腹いっぱい。
01/10/11 18:03ID:???0408名無しさん@お腹いっぱい。
01/10/11 18:09ID:???こういうアホはほんと新でほしいね。
0409名無しさん@お腹いっぱい。
01/10/11 18:23ID:???使ってる人いる?公式ページによると、ファイル公開専用で、
Apacheより軽いと書いてあるんだが。いま落としてみた。
0410409
01/10/11 18:26ID:???0411JAPU@見知らぬ国のトリッパー ◆180pJAPU
01/10/11 18:32ID:???機能を最小限に絞っているから軽くて安全という話は良く聞く。
でも、イマイチ物足りなそうで私は使ってない。
ちなみに、CGI とかは全く使えないぞ。
0412名無しさん@お腹いっぱい。
01/10/11 19:09ID:2.aobSCcどもどもJAPUさん。
publicfile少しいじって遊んでみます。
#いいトリップ見つけましたね。180ページ?
0413名無しさん@お腹いっぱい。
01/10/11 19:27ID:???見つかったら、User=$user,Email=$email,Url=$url みたいなの
が有るからそこに P_view=$User_p_view みたいな感じで追加する
それでGet-cookieの方も他の変数とかと同じ様に代入すればOK
0414JAPU@見知らぬ国のトリッパー ◆180pJAPU
01/10/11 19:35ID:???# トリップの検索ソフト (?) は Windows 用しか無かったのでやむを得ず書き起こしたよ...
0415落したぞ
01/10/11 19:44ID:???    if ($in{'comment'} eq "") { &error("コメントが入力されていません"); }
の下に
    if ($in{'view_page'} && $in{'view_page'} !~ /^[\d]{2}$/) {
        &error("表\示件数の設定が異常です"); 
    }
    $p_log = $in{'view_page'} if($p_log != $in{'view_page'});
これを追加
781行目
    $cook = "name\:$in{'name'}\,email\:$in{'email'}\,url\:$in{'url'}\,pwd\:$in{'pwd'}";
これを
    $cook = "view_page\:$in{'view_page'},name\:$in{'name'}\,email\:$in{'email'}\,url\:$in{'url'}\,pwd\:$in{'pwd'}";
これに置き換え
805行目
    $c_pwd   = $ck{'pwd'};
の下に
    if ($ck{'view_page'} && $ck{'view_page'} !~ /^[\d]{2}$/) {
        &error("クッキーの値が不正です"); 
    }
    $p_log = $ck{'view_page'} if($ck{'view_page'});
これを追加
807行目
    if ($in{'cook'} eq 'on') {
の下に
        if($in{'view_page'}) { $p_log = $in{'view_page'}}
これを追加
0416落したぞ
01/10/11 19:45ID:???以下フォームの例、255行目辺りから
(view_pageを書き換えると***動かない***)
<tr>
  <td><b>削除キー</b></td>
  <td>
    <input type=password name=pwd size=8 maxlength=8 value="$c_pwd">
    <small>(記事削除用。英数字で8文字以内)</small>
    <input type=checkbox name=cook value="on" checked>
    <small>クッキー情報を保存</small>
  </td>
</tr>
<tr>
    <td>
        <b>記事表\示数</b>
    </td>
    <td>
        <select name="view_page">
        <option value="">
        <option value="10">10件
        <option value="20">20件
        <option value="30">30件
        <option value="40">40件
        </select>
    </td>
</tr>
こんな感じ、たぶん maybe・・・
0417よいち
01/10/12 05:30ID:???# 404さんと同じ方でしょうか(^^;
今教えて頂いたとおりに書き換えて、
表示件数を変えながら何度か投稿テストしてみました。
とくにエラーなどは出ず、問題無く動いております。
フォームの部分で、初訪問の時に表示がカラなのが気になったので
<select name="view_page">
<option value="$p_log">$p_log件
<option value="10">10件
と変えさせて頂きました。 すみません。
本当に有難うございましたm(_ _)m
0418ななしさん
01/10/12 16:39ID:OeiSq0oMそれにわざわざひとつひとつ教えてくれるなんて、やさしいね。
0419名無しさん@お腹いっぱい。
01/10/12 17:15ID:???相手にさとらせず、しかし相手の潜在意識には強く植え付ける。
そんな技術が回答者には望まれる。
0420名無しさん@お腹いっぱい。
01/10/12 19:17ID:???あ、そっちの方がいいかも
>>419
何か後輩に似てたからね、俺も普段はこのスレエスケープしてる (笑
0421419
01/10/13 04:02ID:???わはは。おれも回答したことあるから気持ちはわかるよ。
おれは「リハビリ代わりにコードを書いて確認するヤツ」でした。
んーしかし電動氏はナイスだ(スレ違い
0422396
01/10/13 13:41ID:FFS9a4BY>>397
http://isweb35.infoseek.co.jp/diary/his734/chat.txt
http://isweb35.infoseek.co.jp/diary/his734/enter.txt
http://isweb35.infoseek.co.jp/diary/his734/pref.txt
です。お願いします。
0423名無しさん@お腹いっぱい。
01/10/16 03:16ID:???もう解決してるかもしれんけど,あげついでに。
自信無し。
>参加者表示順変更
chat.txtの39行目あたりのを↓
#参加者表示
open(DBS,"$sanka_file");
@lin = <DBS>;
close(DBS);
$aaa = @lin;
$num = @sanka3;
$bbb = $aaa - $num;
if($aaa < $num){
$bbb = 0;
}
print '<FONT size="2">';
print "ROM:($bbb)\n";
print "参加者($num):";
print "@sanka3\n";
print '</FONT><HR>';
#ログ表示
↑こう置き換える
>時間表示削除
pref.txtの63行目あたりのを↓
sub jikan{#$dateに時刻を代入します。
$date = '';
}#jikan END
↑こう置き換える
0424名無しさん@お腹いっぱい。
01/10/16 23:19ID:A3KdiC8Aプチボードのレス表示させるやつ
消えてるので
もう1回、UPしていただけないでしょうか?
0425名無しさん@お腹いっぱい。
01/10/16 23:47ID:???0426しっぽなしきつね
01/10/17 01:02ID:???今の所依頼は無し、 かな?
0427396
01/10/17 15:41ID:DasRCtmyありがとうございます。
変えてみたんですけど、なんか変になっちゃいます・・・
時間の中の()←枠だけが消えないし、入室したときに、おかしくなってしまいました。
0428名無しさん@お腹いっぱい。
01/10/17 16:08ID:eEGCYKUq.docomo.ne.jp .ezweb.ne.jp .ido.ne.jpなどのモバイルのアクセスしか
カウントしない(PCからの投票制限機能)ように改造をお願いいたします。
The Room Link Ring:http://dream.lib.net/room/cgi/e_linkring.html
The RoomのRanking Linkは携帯/PCからの投票制限機能があります。
The Room Ranking Link:http://dream.lib.net/room/cgi/e_ranklink.html
Link Ringのスクリプトをアップロードしましたのでご覧下さい。
http://waiwaiwai_00.tripod.com/linkring.txt
http://waiwaiwai_00.tripod.com/lr_admin.txt
http://waiwaiwai_00.tripod.com/lr_mail.txt
http://waiwaiwai_00.tripod.com/lr_prf.txt
http://waiwaiwai_00.tripod.com/lr_user.txt
お手すきの時にでもよろしくお願いいたしますm(_ _)m
0429名無しさん@お腹いっぱい。
01/10/18 18:11ID:???この掲示板の
引用色は半角の>しか対応してなので
全角にも対応させたいのです
http://isweb37.infoseek.co.jp/diary/kentapyu/plug/all.pl.txt
これの
# 引用部分強調
if ($quotation_color) {
$in{'comment'} =~ s/([\>]|^)(>[^<]*)/$1<b style=color:$quotation_color>$2<\/b>/g;
$in{'r_comment'} =~ s/([\>]|^)(>[^<]*)/$1<b style=color:$quotation_color>$2<\/b>/g;
ここをどーかえたらいいのでしょうか?
よろしくお願いします。
0430名無しさん@お腹いっぱい。
01/10/18 19:33ID:???.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
$in{'comment'} =~ s/([\>]|^)((?:>|>)[^<]*)/$1<b style=color:$quotation_color>$2<\/b>/g;
$in{'r_comment'} =~ s/([\>]|^)((?:>|>)[^<]*)/$1<b style=color:$quotation_color>$2<\/b>/g;
0431430
01/10/18 19:34ID:???「正解は30行後に。」
だった。鬱だ死のう。
0433名無しさん@お腹いっぱい。
01/10/19 01:30ID:???まだそんなに見てないけど、具体的にどれ位アクセスさせたく無いです?
(PCは一切駄目とか、投票のみ不可とか)、一応しょぼいサブルーチンが有ったので
#端末に含まれるHOST名をならべます
@allowhost = (
'.docomo.ne.jp',
'.ezweb.ne.jp',
'.ido.ne.jp',
);
以下をソースの一番下にでも追加します
sub Host_check{
    my ($stat,$pack);
    if (!$ENV{'REMOTE_HOST'}||$ENV{'REMOTE_HOST'} eq $ENV{'REMOTE_ADDR'}){
        $pack = pack('C4',split(/\./,$ENV{'REMOTE_ADDR'}));
        $ENV{'REMOTE_HOST'} = gethostbyaddr($pack,2)||&error('携帯以外からのアクセスは出来ません<br>');
    }
    foreach (@allowhost){
        if ($ENV{'REMOTE_HOST'} =~ /$_/){
            $stat = 1;
            last;
        }
    }
    unless($stat){&error('携帯以外からのアクセスは出来ません<br>');}
}
後は、制限したい処理の手前でHost_check;で呼び出せば、エラールーチン(既存)に飛ばされます
照合部分が泥臭いですが10件位なら問題無いと思います(突っ込み歓迎です)
0434428
01/10/19 21:21ID:???レスありがとうございますm(_ _)m
>まだそんなに見てないけど、具体的にどれ位アクセスさせたく無いです?
>(PCは一切駄目とか、投票のみ不可とか)、一応しょぼいサブルーチンが有ったので
PCはアクセスは自由で、ランキング投票のみ不可(↓のサンプルの「<Previous」などをクリックしてもカウントせず、ランキングに反映しない)といった感じになれば、と思います。
http://dream.lib.net/room/cgi/s_linkring.html
#Link Ringは「<<Previous5」「<Previous」「Random」「Next>」「Next5>>」をクリックするとクリック数がカウントされ、ランキングに反映されるという仕様みたいです。
そして、以下のホストのクリックのみをランキングに反映する、といった感じです。
.ezweb.ne.jp .ido.ne.jp .docomo.ne.jp .cmchuo.uttpnet.ne.jp .em.nttpnet.ne.jp .mnx.ne.jp .mopera.ne.jp
.jp-c.ne.jp .jp-d.ne.jp .jp-k.ne.jp .jp-q.ne.jp .jp-n.ne.jp .jp-h.ne.jp .jp-t.ne.jp .jp-s.ne.jp .jp-r.ne.jp
0435名無しさん@お腹いっぱい。
01/10/21 00:03ID:O7up0kSg  # カウントするホスト
  my @allowhost = (
  '.docomo.ne.jp',
  '.ezweb.ne.jp',
  '.ido.ne.jp',
  以下略
  );
  my ($stat,$pack);
  if (!$ENV{'REMOTE_HOST'}||$ENV{'REMOTE_HOST'} eq $ENV{'REMOTE_ADDR'}){
    $pack = pack('C4',split(/\./,$ENV{'REMOTE_ADDR'}));
    $ENV{'REMOTE_HOST'} = gethostbyaddr($pack,2)||return(0);
  }
  foreach (@allowhost){
     if ($ENV{'REMOTE_HOST'} =~ /$_/){
      $stat = 1;
       last;
    }
   }
   if (!$stat){return(0);}
  else{return(1);}
}
56行目に my $countstatus = &Host_check(); ←これを入れる
後76、77、81、82、114行目をそれぞれ下の様に書き換え
76 $access[$num{$act}]++  if $countstatus;
77 $access[0]++          if $countstatus;
81 $y2[7]++              if $countstatus;
82 $y2[7+$siteaccess]++  if $countstatus;
114 $access[1]++  if $countstatus;
こんな感じでどうでしょう、後は細かい所でインクリしたくなければ
if $countstatus; を足していけばokです。
# この人、インデントが変で凄く読みにくい (-_-...
0436名無しさん@お腹いっぱい。
01/10/21 00:06ID:???総カウントとかは増やした方が良いんじゃないかな....
0437428
01/10/21 18:27ID:???エラーが出てしまって動かなくなってしまいました。
添削お願いできませんでしょうか…。
http://waiwaiwai_00.tripod.com/x_linkring.txt
>総カウントとかは増やした方が良いんじゃないかな....
ですね。すっかり忘れておりました(汗
0438428
01/10/23 19:15ID:uIcZ1pAzなのですが、、、HELPです。どなたか437の添削お願いします…
とりあえず、あげさせていただきます。
■ このスレッドは過去ログ倉庫に格納されています