1 :
名無しさん@お腹いっぱい。 :
02/02/05 01:20 ID:CZVDHHph
2 :
名無しさん@お腹いっぱい。 :02/02/05 01:37 ID:DnrYj3PG
3 :
:02/02/05 01:44 ID:???
time ↓ time - 60 * 60 * 12; # 半日の例 1日なら24hだから「24」ね
4 :
2 :02/02/05 01:52 ID:???
>>3 さん
即レスありがとうございます、うまく行きました!
嬉しいです。ありがとうございました!
5 :
ナナシンボ :02/02/06 17:04 ID:dTW/dCg2
皆様お久しぶりです。 なんとか新着情報をトップページに表示する方法はわかったのですが、 open (IN,"./log/new_ys.cgi") || &error('オープンエラー','指定された書込みファイルが開けません。'); @LINES = <IN>; close (IN); このままだと必要以上に新着サイトが表示されてしまいます。 なんとかして表示できる件数と紹介文の文字数を指定できないでしょうか? もしも可能な方がおられましたらご教授ください。
6 :
ナナシンボ :02/02/06 17:21 ID:dTW/dCg2
追加です。サポート掲示板のをコピペですが。。。 # 新着サイトのデータを読み込む open (IN,"./log/new_ys.cgi") || &error('オープンエラー','指定された書込みファイルが開けません。'); @LINES = <IN>; close (IN); # 表示したい場所に配列する。 foreach ( @LINES ) { ($Dno,$Dtitle,$Durl,$Dmark,$Dsyoukai,$Dkanricom,$Dkt,$Dtime,$Dbana_url,$Dpt,$Dip,$Dkey,$Ddate,$Dname)=split(/<>/,$_); で $Dkt=$_; $Dkt=$dkt{$_}; if(length($dkt{$_}) > $CUT eq "s"){ $cu=$CUT-3; $dkt{$_}=substr($dkt{$_},0,$cu); $dkt{$_}.="..."; } こんな感じのを加えて必要以上の文字列の場合は最後を...にしたいのです。
7 :
ナナシンボ :02/02/06 17:31 ID:dTW/dCg2
すごく一人でレスなんですが、カットはできてしまいました。 以外に簡単でした。 もう少し頑張ってみます。
8 :
ナナシンボ :02/02/06 17:38 ID:dTW/dCg2
あの解決してしまいました。。。 又,宜しくお願いします<(_ _)>
10 :
名無しさん@お腹いっぱい。 :02/02/10 16:19 ID:EP30XMzI
perlに付け足してアクセスログをとる方法なんですが、 ブラウザの種類(携帯は機種も)、IP、SSID、日付、訪問回数等を 取得できる方法ありませんか? 今は # 適当なファイルをopenして open(LOG,'>>logfile'); # 情報を書き込む print LOG "$ENV{'DATE'} $ENV{'HTTP_USER_AGENT'} $ENV{'REMOTE_HOST'} $ENV{'REMOTE_ADDR'}\n"; # ファイルをクローズ close(LOG); ってやってるんですが、1回のアクセスで同じ情報が数回残るんです。 ちなみに掲示板のCGIの上のほうにつけてるんですが。
>>10 前来てたよね。
確か何もかもわからないとか言って散々遊ばれた。。。
>>10 表示 1回。
書き込み 1回。
リロード 1回。
同一IPアドレスからは連続して情報を書き込まないようにすれば。
それじゃ解りまへん 自分が取りたい所で取れば良し
>>11 はい、来てました。
どうしても知りたかったのでこちらに質問させていただきました。
わかる人よろしくおねがいします。
それ改造してんだろ? つーかSSID何かログれんのか? 自分で書いて何処でどう動いてるか分からんのか? 改造だったら改造スレにソース上げれば教えてくれるかもな
17 :
名無しさん@お腹いっぱい。 :02/02/10 17:27 ID:Y1Zoz0Lg
上のはどっかで見たぞ コピペ返しか? w
>>10 コード見たら解りそうだが君の財布に幾ら入ってるかは誰も答えられない
今の情報で最善のレスは、一行づつずらして全部試せ、くらいだろうね
>>17 全然見てないけど。。
引用ボタンはまあ適当に付けて、
レス返信画面でボタンチェックして、
ログ開いて、s/<br>/>><br>/g;
じゃダメ?? ダメか・・・
20 :
10 :02/02/10 23:10 ID:???
>>18 一行づつずらして全部試せとはどこのことですか?
あまりよく理解できまいんですが?
あゆ板の設定の仕方がのってるページないでしょうか?
>>21 煽られないうちにDownload板に行った方がいいよ。
<丶`∀´>←バカ
26 :
18 :02/02/11 16:24 ID:???
>20 理解っつうかネタなんだけど 君が>10に書いた事をコードの一番上から一行づつずらして貼り付けて テストしてみればと言う事、3000行のコードなら3000回繰り返しね どっかに書いてたが、いい回答はいい質問から コピペの意味が解らなかったらPC初心者板で聞いてみよう # 俺は消えるので後の人よろしく
>>26 俺もどっかで答えたんだけどコイツ駄目だよ
多分割れ板かなんかの恥ずかしいスクリプトの改造なんだろう
書けない読めないコードは出さないじゃどうしようも無い
よって放置ケテーイ
28 :
名無しさん@お腹いっぱい。 :02/02/13 05:21 ID:wBlXKE9R
あげ
29 :
17 :02/02/14 18:32 ID:???
>>19 ありがとうございました。
引用ボタン適当に付けて、ログ呼んで
">$comment3";
s/>/>/g;
s/<br>/\r>/ig;
で上手く出来ました。
30 :
もにた :02/02/14 21:08 ID:74mkviDH
ホームページを携帯電話から更新できるようにしたいと思い
http://www.bsp-net.com/ さんの
http://www.bsp-net.com/soft/MobileWebEditor.html を使いたかったのですが
いかんせん、編集したいhtmlファイルのサイズが大きいため
携帯で全部表示されないわ、パケット代かかりまくるわで
困ってしまいました。
そこで、htmlファイル内に何か特定のコメント文を仕込んで
それをcgiが認識して、その部分のみを表示・編集できたら
いいなと考えてるんですが・・・
<html>
<body>
hogehoge
<!--[start]--!>
この部分を表示して編集できる
<!--[end]--!>
hogege
</body>
</html>
こんな感じで改造したいのですが、どうすればいいでしょうか?
31 :
名無しさん@お腹いっぱい。 :02/02/14 21:12 ID:JQ2Gyegk
>30 p-inとザウルスが、3ヶ月分のパケット代で買えるよ。
32 :
もにた :02/02/14 21:19 ID:74mkviDH
>31 いや、まぁそれはごもっともなんですが。 ハードを買うことへの抵抗と、基本料金が・・・ 貧乏学生なんで、cgiで済ませたいという安直な考えです。 すいませんがよろしくお願いします。
33 :
名無しさん@お腹いっぱい。 :02/02/15 02:50 ID:SfH5n30w
> 33 その助言の内容からすると以下のようになるが、追加内容の末尾改行がないけど書き替えた? # # Append messages. # open(IN, "wwwboard.dat"); while (<IN>) { print OUT; } $current_msgs= $.; ### ADD NEW ###〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 # # Copy .tmp to .dat # open(IN, "wwwboard.tmp"); open(OUT, "> wwwboard.dat"); $msgs = 0; while (<IN>) { next if $current_msgs-- > $max_msgs; ### ADD NEW
35 :
33 :02/02/15 04:47 ID:ZtkdPyAc
はい、<BR>の自動追加は全部削りました。(ひょっとしてこのことではないですか?読み違えてたらすみません
# Write current message. $FORM{'MESSAGE'} =~ s/[\r\n]+$//g; $FORM{'MESSAGE'} =~ s/\r/<BR>/g; ;### ↑の処理後、↓の書きこみが行なわれて即、閉じられているので$FORM{'MESSAGE'}の ;### 最終文字は "\n" じゃないと思われる。 ;### 1データを1行で管理するタイプのスクリプトだと思うのでこれではデータ毎の区別が ;### つかないような...(気のせい?) # 挿入するもの↓。改行とか、スペースとか。 print OUT "$FORM{'MESSAGE'}"; close(IN); close(OUT);
>>35 質問に答えた人じゃないけど…
<br>というより\nがないとログが一行になっちゃうよ?
\nが無いとwhileで廻せないと思うんだけど。
print OUT "$FORM{'MESSAGE'}<br>\n";
38 :
37 :02/02/15 05:19 ID:???
39 :
33 :02/02/15 05:21 ID:qJwMiHXl
うおぉォ……、できましたッ!httpd起動させ、
>>34 さんのスクリプトを実行し、完全解決致しました!
>34さん、あなた、「神」です!
本当に、本当にありがとうございました!
あなたが宗教開いたらぼく、入るかもしれません。
40 :
33 :02/02/15 05:23 ID:qJwMiHXl
あ、そうなのですか!\nいれときます、ありがとうございます!
>>40 いや、出来たのなら、それで良いんだとおもいます。
かぶちゃったからゴメンナサイしただけで…。
良かったね。
42 :
33 :02/02/15 05:29 ID:qJwMiHXl
よかったです……。 2chきてこんなありがたい思いしたのはじめてです、ありがとうございました!
宗教にかんしては、今しばらくおまちください。 いそいで勧誘のチラシを刷っているところです。 「最高ですか〜〜!!」「これが定説です。」うーんチョット違うナー。
44 :
名無しさん@お腹いっぱい。 :02/02/15 18:57 ID:JdM/hpw9
> 44 これでどう? 実際に実行してないけどこんな感じでは..? #!/usr/local/bin/perl (my $script= $0 )=~ s/^.*[\/\\]//g; my( $passwd )= 'abcd'; my( $jcode )= './lib/jcode.pl'; my( $tmpFile )= "${script}_$$.tmp"; my($html,$name,$do); my( %FORM ); require $jcode; &decode; &Html('パスワード未設定') unless $passwd; &Html('Top Page') unless %FORM; &Html('Password Input Error!') if $FORM{'pass'} ne $passwd; &Html('No Data') unless ($html= $FORM{'html'})=~ tr/\r\n//d or $html; open(IN, $FORM{'file'}); eval{ flock(IN, 1) }; open(TMP, "+<$tmpFile"); eval{ flock(TMP,2) }; truncate(TMP, 0); (seek(IN, 0, 0) && seek(TMP, 0, 0)) or &Html('File Open Error!'); while (<IN>){ if(/(.*)<!--start-->/ .. /<!--end-->(.|\n)*/){ print TMP $& if $do && $1; print TMP "$&\n$html\n" unless $do++; next; } print TMP $_; } close(IN); close(TMP); rename($tmpFile, $FORM{'file'}) ? &Html('Edit OK!') : &Html('Edit Error!'); sub decode{ read(STDIN, $_, $ENV{'CONTENT_LENGTH'}) unless $_= $ENV{'QUERY_STRING'}; for ( split('&') ){ ($name, $_)= split('='); tr/+/ /; s/%(..)/chr(hex($1))/eg; # s/<!--[^\-]*-->//g; &jcode::convert(\$_,'sjis'); $FORM{$name}= $_; } } sub Html{ print <<HTML; Content-type: text/html <HTML><BODY><FORM ACTION="$script" METHOD=POST>File:<INPUT name=file><BR>Pass:<INPUT name=pass><BR> <TEXTAREA COLS=20 ROWS=5 NAME=html></TEXTAREA><BR><INPUT TYPE=submit VALUE=Edit> <INPUT TYPE=reset VALUE=Reset><HR>$_[$[]</FORM></BODY></HTML> HTML exit; }
46 :
名無しさん@お腹いっぱい。 :02/02/16 12:39 ID:C81G2/9S
if (!($value =~ /(.*)\@(.*)\.(.*)/)) { $value = ""; } を if (!($value =~ /(.*)\@(.*)\.(.*)/)) { $value = $1; }
48 :
名無しさん@お腹いっぱい。 :02/02/16 13:05 ID:C81G2/9S
>>47 変更してみましたが、
「Eメールを入力してください」というエラーが出てきてしまい
変わらず送信できませんでした・・・
if (($value =~ /(.*)\@(.*)\.(.*)/)) { $value = $1; }
>>49 有り難う御座いました。出来ました。
本当に感謝してます。
スクリプトを書いたのですがなんかグロいです。助けてください! if($a =~ /@@@@/){ print $a; } if($b =~ /□ □/){ print $b; } if($c =~ / ◎/){ print $b; }
質問させて下さい。 チャットなんですが、一般的にログは下から上へ流れますよね? これはスクリプトで定義されているんでしょうか? Niftyなんかですと、上から下へとログが流れるので 出来れば、そういう仕様のチャットに改造してみたいんです。 探してみたんですけど見つからないので、改造で何とかなるなら 頑張りたいと思い、質問してみました。 すみませんが、分かる方いらっしゃったらよろしくお願いします。
>>53 ???
cgiでやってるチャットなら普通だいたい新しいのが上じゃない?
55 :
53 :02/02/17 23:27 ID:???
>54 ええ、新しいのが上にきますよね? それを新しいのが下にくるように出来たらいいなと思ってるんです。 それで、その流れを決めてるのはスクリプトなのか 改造可能なのかが知りたかったんですよ。
>55 通常、新しいものが上に来るようにするためには、 正順に記録されたログを@LINEのような配列に読み込み、 reverseします。
>56 ありがとうございます! ということは正順に並んでいるログをわざわざ逆転させてるんですね。 おっしゃってるのは foreach (@lines) { if ($str2 ne '') { if ($_ =~ /$str2/) { next; } } elsif ($str1 ne '') { if ($_ =~ /$str1/ && $_ =~ /$host/) { next; } } if (++$i >= $max) { last; } else { push(@new, $_); } } if ($str1 eq '' && $str2 eq '') { unshift(@new, $val); } この辺りのスクリプトでしょうか。 ログ保存の部分にあった@LINEなんですけど。
>57 うん。そのforeachのまえで、 @lines = reverse @lines; というような処理を入れてあげるとひっくり返る。
59 :
53 :02/02/18 04:46 ID:???
@lines = reverse @lines; を入れてみました。出来たー!と思ったのも束の間…。 ログがですね 6 4 2 1 3 5 というように奇数行は希望通りに上から下なのに 偶数行は下から上という流れになってしまいました(汗 多少のカスタマイズが出来るくらいで、スクリプト自体が読める 訳ではないので詰まってしまいました。 あとは何が足りないんでしょうか。 以前からミスってた部分の見直しとかしてたら こんな時間になってしまった…。 いい加減に寝ておこう。
age
インターリーブっぽく記録されてたり。 もう一つデータ管理してる変数無い?
62 :
名無しさん@お腹いっぱい。 :02/02/18 18:09 ID:UxBPmNlO
ソース読むのめんどくさい(;´Д`) ある程度目星付けてくれれば協力するかも。
朝なんであげとくね
65 :
名無しさん@お腹いっぱい。 :02/02/19 09:11 ID:bQza7qr8
KENTさんのLight bordにIPとホストを両方とりたいのですが 今の掲示板では片方しか取得する事が出来ません。 両方取得出きる方法を知りたいんです。 設定のところに # ホスト名取得モード # --> 0 : $ENV{'REMOTE_HOST'} で取得できる場合 # --> 1 : gethostbyaddr で取得できる場合 $get_remotehost = 0; ↑のようなソースがあり、ホスト名取得は ## --- ホスト名取得 sub get_host { $host = $ENV{'REMOTE_HOST'}; $addr = $ENV{'REMOTE_ADDR'}; if ($get_remotehost) { if ($host eq "" || $host eq "$addr") { $host = gethostbyaddr(pack("C4",split(/\./,$addr)),2); } } if ($host eq "") { $host = $addr; } } ↑のようになっているんですがこれを変えてログへの書き込み処理を変えれば可能ですよね? ログへの書き込み処理は自分でやれると思いますので↑に書いた部分をどう変えれば両方取得出来るか 教えては頂けないでしょうか?↑はifってなってるのでそのままifを消したりしたんですけど当然ダメでした。 おぉ力也か。え?やっぱり行ける?もう取り消しの電話入れちまったじゃねぇかよ。
66 :
65 :02/02/19 09:13 ID:bQza7qr8
一番下の力也ってやつは見なかった方向でお願いします。
67 :
名無しさん@お腹いっぱい。 :02/02/19 09:58 ID:uiFxg8op
>65 そこはIPとリモートホストのルーチン部分だ。 記載している場所はほかにあるから、 $hostで検索して、printしてるところを見つけれ。
68 :
名無しさん@お腹いっぱい。 :02/02/19 09:59 ID:uiFxg8op
あと、力也には、優柔不断にぐたぐた言うなっていっとけ。
力也の再登場を願って止みません
70 :
65 :02/02/19 13:03 ID:bQza7qr8
>>67 あそこじゃないんですか!?
あそこだと確信してたんですけども。
どこなんでしょう?いくら探しても他にホストやIPを取得してるような所は見当たらないんですけど。
もしよかったら探してくれませんか?めんどくさいですか?てめーでやれカスですか?
↓がソースです。それと力也ネタは勘弁して下さい。力也は忘れてください。
http://csx.jp/~hage/light.txt
>>70 だから彼は「表示するところを探せ」と言っているが。
printが表示する命令だと知らないのか?大変だぞ。
72 :
65 :02/02/19 13:50 ID:???
>>71 あっそうですね。でもprintを探すんですか?
でも今のままだと$hostにipかホスト名のどちらかしかを書き込むので片方しか取得できないんです。
printを探すのはIPとリモートホストのルーチンを書き換えたあとの話しでは?
printを探してログへの書き込み処理を変えるのは私でも出来ると思うのでですが
どうすればifという形式ではなく両方を取得できるのかを知りたいんです。
教えてもらえますか?
てめーなんかに教えるぐらいならダンゴ虫に教えた方がマシだボケですか?
73 :
名無しさん@お腹いっぱい。 :02/02/19 14:02 ID:uqUI0/lz
>71 thx! >72 みてみた。4カ所ほど変更する必要があるので、手間がかかり教えるのが面倒くさい。 しゃれのつもりなんだろうが、質問の仕方がカワイゲないので 心を入れ替えるまで放置することにした。 誰か優しい人が教えてくれるかもしれない。 ref.>もしよかったら探してくれませんか?めんどくさいですか?てめーでやれカスですか? ref.>てめーなんかに教えるぐらいならダンゴ虫に教えた方がマシだボケですか?
74 :
65 :02/02/19 14:18 ID:bQza7qr8
>>73 ID違うけど
>>67 さんかな?
いや、なんか普通の文じゃつまらなくてレス返ってこないかな?と思ってつけたしたんですけど…
自分ではわからないながらも表示以外のところは結構簡単にできるような気がしてたんですけど4個所もあるんですか。
それじゃあ仕方ないですね。そちらにはメリットなにもありませんし。
誰か教えてくれるまで気長に待ちます。
75 :
67 :02/02/19 14:24 ID:uqUI0/lz
>74 うんそう。 ここそんなに住人多くないって(笑)。 んで、ちょとカワイゲある文章になったので関心が戻ったりして。 このスクリプト、ログにリモートホストかIP残すだけで、画面表示しないんだな。 改造自体はそんなに大変ではないと思う。問題は、うまく行かないときのでバッグだな。
76 :
67 :02/02/19 14:29 ID:uqUI0/lz
224行目: ($number,$date,$name,$email,$subj,$comment,$url,$host,$pwd) を ($number,$date,$name,$email,$subj,$comment,$url,$host,$addr,$pwd) に変更。 335行目; unshift(@lines,"$number<>$date<>$name<>$email<>$sub<>$comment<>$url<>$host<>$ango<>\n"); を unshift(@lines,"$number<>$date<>$name<>$email<>$sub<>$comment<>$url<>$host<>$addr<>$ango<>\n"); に変更 656行目: ($number,$date,$name,$email,$subj,$comment,$url,$host,$ango) を ($number,$date,$name,$email,$subj,$comment,$url,$host,$addr,$ango) に変更 666行目: ($number,$date,$name,$email,$subj,$comment,$url,$host,$ango) を ($number,$date,$name,$email,$subj,$comment,$url,$host,$addr,$ango) に変更。 多分これでうまく行く。
77 :
65 :02/02/19 14:45 ID:bQza7qr8
>>76 おおおぉぉぉッ!
出来ましたッ感動です!
ってゆーかそれと全く同じように昨日やったんですけど出来なくてこれじゃダメなんだなぁって
思ってたんですけど昨日やった時はたぶんどっか間違ってたんですね〜。
一回試して
>>65 で挙げた部分を改良してから
>>76 さんのようにやれば出来ると思い込んでました。
それだけでよかったんですか〜あ〜出来てすっごい嬉しいです。
たぶん誰にもレスされないで終わるだろうなと思ってましたし。
昨日から徹夜でやっててそろそろ限界だったんですけどこれで目が覚めました。
本当にありがとうございました。
78 :
67 :02/02/19 15:04 ID:???
>77 単純なタイプミストかがあったんだと思う。 どちらにしてもよかった。
age
80 :
53 :02/02/19 19:37 ID:???
チャットのログを改造していたがっていた者です。 教えて頂いたreverseだと奇数が元のままなので悩んだまま 止まってましたが、聞く前に調べる努力をしてなかったので 本屋に行って見てきました(始めから行けって言わないで下さい。 まず改造出来るものかどうか知りたかったんです) reverseでなくsortで試したところ、新しいログが下にくるように なりました! 一番新しい発言だけが上にくるんですけど、今はとりあえず流れが 望んだ通りになったんで嬉しいです。 CGIを勉強してみたくなりました(笑 ご助言、どうも有難うございました。
定時あげ
82 :
名無しさん@お腹いっぱい。 :02/02/22 15:28 ID:9ER9/CDB
83 :
真木素人 :02/02/24 00:20 ID:VkuFVpRf
ttp://www.area-s.com/main/missinglink.html ↑MissingLinkのナレーションBBSのおねえさんといっしょを
HPに設置したいんですけど、改造&設置の仕方がわかりません
ナレーションBBS2.1とおねえさんといっしょのキットは
DLして解凍まではわかったのですが、そのあとが…
改造はおねえさんといっしょのキットをそのまま使いたいのですが…
改造のしかたと設置のしかた教えてください
お願いします
設置もできないくせに改造しようなんて思うな
設置の仕方なんかそのサイトで聞けよな
87 :
わかりません :02/02/27 12:01 ID:/Q61BdR8
if($i_photo_chk eq 'url'){ @photo_urls=("$i_photo_url1","$i_photo_url2","$i_photo_url3"); foreach(@photo_urls){ if($_ ne ''){ if($_ =~ /^http.*jpg$/){ $i_comment = "$i_comment<br><IMG src=\"$_\">"; }else{ &print_error("写真URLの入力が正しくありません。注意&解説を参照して確かめてください。<br>Macintosh環境でも拡張子(.jpg)をつけて下さい。"); } すみません。 ↑ここらへんで拡張子JPGだけしか選べなくなってるのを、gifも選べるようにしてあげたいんですが、 どうしたらいいですか?つまり、JPGとGIFを認めてあげたいんですが・・・。 エラーばっかりでわけわかめです。 誰か教えて下さい。お願いします。
if($i_photo_chk eq 'url'){ @photo_urls=("$i_photo_url1","$i_photo_url2","$i_photo_url3"); foreach(@photo_urls){ if($_ ne ''){ if($_ =~ /^http.*gif$/ || $_ =~ /^http.*jpg$/){ #←ココ $i_comment = "$i_comment<br><IMG src=\"$_\">"; }else{ &print_error("写真URLの入力が正しくありません。注意&解説を参照して確かめてください。<br>Macintosh環境でも拡張子(.jpg)をつけて下さい。"); } PNGとか追加して多くなるようだったら配列使うほうが楽かも。
(?:jpg|gif)$
91 :
名無しさん@お腹いっぱい。 :02/02/27 15:16 ID:uzDDNMO0
少し脳みそを貸して下さい。 返信できる掲示板を改造し、親記事への返信に対してradioboxで5段階の採点 ができるようにしました。が、たまに採点がおかしくなります。 1ページに表示されている全ての返信記事に一気に採点できるようにしました。 $noは親記事のNo. $res_noは返信記事のNo.です。 簡単に書きます。 -------■フォーム部分■--------- [最高:<INPUT TYPE=RADIO NAME=\"($no)-$res_no\" value=5>] [良い:<INPUT TYPE=RADIO NAME=\"($no)-$res_no\" value=4>] のようなものをあと3つ -------■フォーム部分■---------
92 :
名無しさん@お腹いっぱい。 :02/02/27 15:16 ID:uzDDNMO0
ログの形式:<>で区切ってます。 $x1が親記事の番号で$x2が返信記事の番号です。 行の最後に採点のためのデータを6つ追加しました。 $xjが合計点で、$xe〜$xiまでが各採点の数。 -------■ログの形式■--------- 130<>1<>名前<>タイトル<><><>親記事のコメント<>#ff6633<><><>02/02/26(Tue)02:29<>0.XuCN0FGrIKQ<>1014702931<>0<>0<>0<>0<>0<>0<> (130)<>1<>名前<>タイトル<><><>親記事への返信のコメント<>#ff6633<><><>02/02/26(Tue)02:29<>0.XuCN0FGrIKQ<>1014702931<>0<>0<>0<>0<>0<>0<> -------■ログの形式■---------
93 :
名無しさん@お腹いっぱい。 :02/02/27 15:20 ID:uzDDNMO0
2重カキコとか言われて書き込めん!
94 :
名無しさん@お腹いっぱい。 :02/02/27 15:20 ID:uzDDNMO0
ログから全記事を@all_linesに読み込む。 while (($key, $value) = each %in){ if( $key =~ /^%28\d+%29-\d/ ){ $key =~ s/^%28(\d+)%29-(\d+)/$1,$2/ ; foreach (@all_lines) { if( /^\($1\)<>$2/ ){ my($x1,$x2,$x3,$x4,$x5,$x6,$x7,$x8,$x9,$xa,$xb,$xc,$xd,$xe,$xf,$xg,$xh,$xi,$xj)=split(/<->/); if($value == 5){ $xe = $xe+1 ;} elsif($value == 4){ $xf = $xf + 1;} elsif($value == 3){ $xg = $xg +1;} elsif($value == 2){ $xh = $xh +1;} elsif($value == 1){ $xi = $xi +1;} else{ エラー処理;} $xj = ($xe * 5) + ($xf * 4) + ($xg * 3) + ($xh * 2) + ($xi * 1); push(@new, "$x1<>$x2<>$x3<>$x4<>$x5<>$x6<>$x7<>$x8<>$x9<>$xa<>$xb<>$xc<>$xd<>$xe<>$xf<>$xg<>$xh<>$xi<>$xj<>\n"); }else { push(@new, $_ );} } $#all_lines = -1 ; #これは必要? @all_lines = @new ; $#new = -1 ; } } @all_linesをファイルに書き込む。
95 :
名無しさん@お腹いっぱい。 :02/02/27 15:26 ID:uzDDNMO0
受け取り側がすごく間抜けなコーディングですが、 もっとスマートな方法はないものでしょうか? さらにバグがあるようです。たまに採点した以上に採点の数が増えます。 よろしくお願いします。
96 :
わかりません :02/02/27 15:49 ID:/Q61BdR8
ありがとうございます!!感謝感激です。 ところで、 @@@@@@@@@@@@@@@@@@@@@@@@@@ sub upnote { local($get_pf_name)=shift;local($pffno)=shift; if($file_name{"$get_pf_name"} =~ /jpg$/){ $psc=0; $file_len=length($file_data{"$get_pf_name"}); if($file_len<=0){ &print_error("画像が選択されていません。"); }elsif($file_len>=$photo_max_size*1024){ &print_error("$photo_max_size\KB以下の画像しか指定できません。"); }#--end @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ↑ここの部分も、JPGしかアップロード出来ないんですけど、これもGIFをアップロードしたいのですが・・・。
98 :
わかりません :02/02/27 16:09 ID:/Q61BdR8
>>97 まじ途方にくれてたので大正解っす。どこいじってもエラーになってわけわかりまっしぇん!
要は「JPGだけじゃなくGIFも使いたい」ってことだけなんですけどね・・・。
99 :
名無しさん@お腹いっぱい。 :02/02/28 20:48 ID:cUMoNmua
101 :
100 :02/03/01 02:24 ID:enmjRXxk
(レスのチェック部分です) # - レス付与 ------------------------------------- sub res { 〜〜〜〜〜〜〜 # age_______________________________ if (!$sage) { push(@DATA,splice(@DATA,$no,1)); } 〜〜〜〜〜〜〜 } # - フォームチェック ------------------------------ sub formcheck { 〜〜〜〜〜〜〜 # E-mailチェック____________________ if ($mail =~ /sage/) { $sage = 1; } 〜〜〜〜〜〜〜 }
>101 スクリプト読んでないけどこれでどうかな? 〜〜〜 #age____ if (!$sage) { if ($dame) { unshift(@DATA,splice(@DATA,$no,1)); } else { push(@DATA,splice(@DATA,$no,1)); } } 〜〜〜 〜〜〜 # E-mailチェック____ if ($mail =~ /sage/) { $sage=1; } elsif ($mail =~ /dame/) { $dame=1; } 〜〜〜
103 :
100 :02/03/01 03:32 ID:???
>>102 ありがとうございます!
今試してみたんですが、なんか500エラーになってしまいました…。
もう一回やってみます。。
104 :
102 :02/03/01 03:38 ID:???
>103 全角スペースで字下げしてるから,そのままコピペじゃ動かないです。 半角スペースに置き換えてください。
105 :
100 :02/03/01 04:16 ID:???
>105 スマソ,さっきのでログ壊れたかも。 unshift(@DATA,splice(@DATA,$no,1)); を unshift( @DATA, (shift(@DATA),splice(@DATA,$no,1)) ); に変えるとどうかな
107 :
名無しさん@お腹いっぱい。 :02/03/01 05:03 ID:jSI4cIj+
108 :
100 :02/03/01 20:20 ID:???
>>106 下の方に書き替えたら、壊れなくなりました!
しかし今度は、「書き込んだスレッドの一つ上にあるスレッド」が
一番下に下がるようです...(;´Д`)
109 :
99 :02/03/02 10:48 ID:???
>>107 ありがとうございます。
何故か5Mまでしかあぷ出来ませんが
スクリプトのせいじゃないのがわかっただけでも助かりました。m(_ _)m
110 :
名無しさん@お腹いっぱい。 :02/03/04 19:46 ID:xVeLh+HA
> 110 意味がわかりづらいが、トップページをリクエストするとHTML形式の ファイルをダウンロードするってこと?
112 :
110 :02/03/04 23:54 ID:xVeLh+HA
>>110 perl勉強中だけど、答えてみる。
index.htmlをopenして、「sub html」の中の表示部分をそっちに吐くようにすればいいんじゃないかな。
他にも弄るとこあるかもしんないけど、そこは識者にお任せします。
114 :
111 :02/03/05 00:23 ID:???
単純にこれをCGIとして実行したときのトップページのHTMLをファイルとして
用意するとできるのでは? だいたい以下の感じに。(■■■部分は呼び出すCGI)
<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="
http:// ■■■" >
アプするファイル<strong>(300 Kまで)</strong><br>
<INPUT TYPE=file SIZE="40" NAME="filedata">
<select name="ext">
<option value="ext" selected>特殊拡張子選択
<option value="css">css
<option value="csv">csv
<option value="htm">htm
</select>
<br>コメント<i><small>(※コメント無記入の場合リロードになります
/URLはオートリンクします)</small></i><br>
<INPUT TYPE=text SIZE="45" NAME="comment">
<INPUT TYPE=submit VALUE="Up/Reload" class="button"><INPUT TYPE=reset VALUE="Cancel" class="button"><br>
</FORM>
115 :
110 :02/03/05 06:37 ID:ZPKxkzAd
>113 openでhtmlファイルを開いてprintするところまでは思いついたのですが、 クッキーを使った環境設定や、print_postdataとの絡みが分からずに挫折しました >114 ??? 済みません、意味がわからないです
先にhtmlファイルを作ってから クッキーをはいてLocationでhtmlファイルに飛ばせばよい。 htmlファイルを作る処理はprint_postdataなどを直接弄ると 副作用があるので、コピペで名前を変えた関数を作って ファイルに書き出すようにすればよい。
120 :
nobodyさん :02/03/07 01:54 ID:WTUe3Qf1
>117-118 警告書いて,それでもダメならカウントしないほうにするほうがいいんじゃない? 改造してもいたちごっこになるだけと思われ。
>>117-118 動くか試してないけど。
set.cgiの
1;#削除不可
の上辺りに
@AbornLink = ("*.2ch.net","*.yahoo.co.jp");
@AbornHost = ("127.0.0.1","1.2.3.*","anonymizer.com","squid");
を追加。
access.cgiの
#--- ここまで ----------*
の下に
&aborn;
sub aborn {
for (@AbornLink) { s/([.@%$\])/\\$1/g; s/\*/.*?/g; &haa() if $ENV{HTTP_REFERER} =~ /$_/i }
for (@AbornHost) { s/([.@%$\])/\\$1/g; s/\*/.*?/g; &haa() if $ENV{REMOTE_HOST} =~ /$_/i or $ENV{REMOTE_ADDR} =~ /$_/ }
}
sub haa {
print <<_HTML_;
Content-type: text/html
(゚д゚)ハァ?
_HTML_
exit;
}
を追加。
122 :
110 :02/03/07 18:21 ID:???
123 :
利用者 :02/03/08 06:39 ID:???
チャットの参加者表示なんですが、room1に人がいる時にroom2に入ると、参加者してる人の名前が表示されなくなります。 この書き方ではおかしいんでしょうか…?
124 :
利用者 :02/03/08 06:40 ID:???
125 :
nobodyさん :02/03/08 06:42 ID:w/NM/Dyo
あげれ
126 :
利用者 :02/03/08 06:42 ID:???
なんかこれも表示がおかしいですね… 申し訳ないですが、ソースを出して見てください…
127 :
nobodyさん :02/03/08 07:00 ID:yTPx6PIp
質問です。
メールフォームで、メールの送信先を、曜日毎に変えたいのですが、
どうすればよろしいでしょうか。
フリーのメールフォームを改造して作ろうとしているのですが、
Perlに関しては初心者で、手がでない状態です。
どなたか、どうぞよろしくお願い致します。
改造しようとしているCGIで、メールの宛先は、
configファイルに
$MailTo = '
[email protected] ';
として明記し、CGI本体で
$MAILTO = &config::MAILTO;
というふうに読み込ませる形になってます。
localtimeの返値の最後に曜日のデータが渡される。
つうか、最近お前ら、こことか初心者スレとか見てないだろ
一生懸命回答している何人かを、粘着馬鹿が追い出しました ただでさえ人少ないのに。
133 :
110 :02/03/09 18:16 ID:???
134 :
127 :02/03/10 02:00 ID:???
>128 ヒントを元に考えてみても謎が謎を呼びエラーが出て 泣きそうです。 ここは今人が少ないのですか…
135 :
nobodyさん :02/03/10 10:01 ID:Pl5m+TdB
あげ。 >134 localtime関数の仕様を調べれ。
>>133 長いし、途中からなので良く分からんが
&locationindex;
&print_postdatafile;
とか(他にもあるよね)付け加えたサブルーチンを、行わせたい処理の順番にならべてみなされ。
場所は #以下はスクリプトのエンジン部分。無闇にいじくると動かなくなるかも(ワラ
のすぐ後でいいと思うけど。
できたら、sub locationindex{ } とかいうブロックはまとめて
#以下関数定義&実装
から下に持っていったほうがいいかな
137 :
初心者スレにも書きましたが :02/03/12 14:59 ID:h6G3oh/x
すみません。 掲示板CGIの改造をしたいのですが、 チェックボックスを付けて、それがオフの場合投稿を弾いてメッセージを表示するにはどうしたらいいのでしょう? 全くの初心者なので、適当に コメント入力欄の近くあたりに <INPUT TYPE="checkbox" NAME="a" VALUE="b">書きこみをOKする<BR> って入れて、名前が入ってないとエラーを返す部分があったのでそこに if ($a eq "") { &error("オンにしてちょ。",'NOLOCK'); ってやってテストしてみたらオンでもオフでもエラーを返されてしまいました。 if ($a eq "a:")としたら逆にオンでもオフでも書きこみできました。 別にvalueがbの場合用の処理(?)を書かなくてはいけないのでしょうか? ちなみに上のは名前が入ってないとエラーを返す部分をちょっと変えただけです。
>>137 >>1 > なお、質問するときは
> 1)そのスクリプトのある場所(URL必須、拡張子".txt"でアップすればなお良し)
> 2)どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
> を必ず明記しよう。
---
なんとなく、$aに中身入れてないような感じがするんだけど。。
途中省略箇所有りですが、、、
こんな感じになってると考えて良いのかな、、、。
&decode(*FORM);
sub decode{
local(*DATA) = @_;read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@buffer = split(/&/,$buffer);
foreach (@buffer) {
($name,$value) = split(/=/);
$DATA{$name} = $value;
}
}
$a = $FORM{'a'};
if ($a eq "") { &error("オンにしてちょ。",'NOLOCK');
---
>>138 できた〜!!マジでありがとうございます。$a = $FORM{'a'}; が足りなかったようです。
勉強になりました。
140 :
nobodyさん :02/03/13 09:19 ID:Z/LJjIzD
>くずはすくりぷと Rev.0.1 Preview 9を2ch風に改造したいと考えています。 頑張って下さい。応援してます。
142 :
140 :02/03/13 14:10 ID:Z/LJjIzD
17さんの16aのBBS CGIのソースを移植しようと考えてたけど 所詮は厨房のボクにはムリか・・・
143 :
nobodyさん :02/03/13 22:13 ID:Dc5/budY
KENTのプチ☆ボードにlastpost機能をつけるにはどうしたら良いのでしょうか?
>>143 日よりを選んで策を巡らせれば、5万の兵力で20万の軍勢に勝つことだって出来るよ
145 :
nobodyさん :02/03/14 09:33 ID:VZM6DSSw
えーと広告をサイトに掲載してるんですが、広告主がクリック数を数えてくれと言ってきました。 理屈は大体わかるんですが、いざ組もうとしても改造ばっかで一からはほとんど組めなくて…
KENT-WEBのYY-CHATについて質問があります。 YY-CHATのどっかからデータを読み込んで 参加者一覧を作りたいのですがよくわかりません。 とりあえず↓のような感じに表示されるCGIってどうやったらいいでしょうか? ======================================================= 参加者(3) 名無しさん 太郎さん 花子さん
147 :
146 :02/03/14 16:40 ID:???
148 :
ぴいころ :02/03/14 20:33 ID:d2y5/VKo
こら住民、やる気出せよ
152 :
ぴいころ :02/03/14 20:58 ID:d2y5/VKo
>>150 りゅういちさん引っ越しで忙しいみたいで悪いかなあと思いまして。
>>151 ちがいますよ。過去ログ参照してるときに同じスクリプトがあったので
借りただけです。
153 :
はぁ? :02/03/14 21:09 ID:???
>>152 >>ちがいますよ。過去ログ参照してるときに
>>同じスクリプトがあったので借りただけです
死ね
>>146 多分「member.dat」見れば判ると思うんだが
こいつの中身でも晒してくれればもう少しヒント出せると思う
使ってるのは改造品の「わいわい☆チャチャット」なので 「member.txt」です。 一人参加しているときの中身 -------------------------------------- 1016101994<>名無しさん<>127.0.0.1<><>
156 :
ぴいころ :02/03/14 22:44 ID:d2y5/VKo
>>153 何言ってるかわかんないんですけど。
答えられないんだったらレスしないでいいですよ。
絶対教えません。
161 :
ぴいころ :02/03/14 23:48 ID:d2y5/VKo
なんかくだらないな。 どういう類の人間が書き込んでだろうね。
163 :
ぴいころ :02/03/14 23:51 ID:d2y5/VKo
・・・で?それが何なの?(笑)
電波は放置しろよ。
166 :
ぴいころ :02/03/14 23:54 ID:d2y5/VKo
・・・で?その次は?(笑)
168 :
ぴいころ :02/03/15 00:03 ID:gwfeegs0
おかしいなあ・・・普通に質問しただけなんだけど(^_^;)
169 :
ぴいころ :02/03/15 00:19 ID:+8TxHXVk
結局答えられないのかあ・・・(笑)
170 :
ぴいころ :02/03/15 00:20 ID:eGIGdxRo
お前らみたいな無能な奴らにきいたのが間違いでしたね(^_^;)
>ちがいますよ。過去ログ参照してるときに同じスクリプトがあったので >借りただけです。 これの何処が普通よ。寝言は寝て言えボケ。
だから電波は放置しろって
もう春なんだね。 マターリマターリ
175 :
ぴいころ :02/03/15 00:43 ID:+8TxHXVk
頭の固い人多いなあ。2ちゃんねらー気取りですか?(笑)
176 :
nobodyさん :02/03/15 01:21 ID:X8j7h0mS
>>146 ,155
これでどう?
#!/usr/bin/perl
$file = './member.txt' ;
open ( FILE , $file ) || &print("開けません") ;
@data = <FILE> ;
close FILE ;
$len = @data ;
$out = "参加者($len)<br><br>\n" ;
foreach ( @data ) {
$name = ( split /<>/ )[1] ;
$out .= "$name<br>\n" ;
}
&print( $out ) ;
exit ;
sub print {
print <<"_HERE_" ;
Content-type: text/html\n
<html>
<body>
$_[0]
</body>
</html>
_HERE_
exit ;
}
>頭の固い人多いなあ。2ちゃんねらー気取りですか?(笑) はぁ? 既知害は消えてください
>>177 まぁまぁ。
放置してたら自然と消えるだろうから。
マターリマターリ
179 :
ぴいころ :02/03/15 04:11 ID:gwfeegs0
>>177 いやーお陰様でずっとやってたらできました。ありがとうございます。
WEBプログラミング板って役に立つなあ。特にこのスレ。(笑)
なんといっても、何一つまともに答えられない住人が最高です。
>176 馬鹿相手に奉仕感が得たかったのか?
181 :
176 :02/03/15 04:53 ID:X8j7h0mS
そうかも。 奉仕してるフリして本当は 「俺はこんなすげーコード書けるんだぜ。神と呼べ」 などと心の底で思ってたりする(w
コード有難う御座いました。 ただ、あれだと参加者0のときも(1)と表示されてしまいます。 参加者がいない場合↓ ------------------------------------------------------ 1016142616<><>127.0.0.1<><>
>181 若いな。 俺ももうちょっと体力と気力があればそんな気にもなるかもしれんが。 >182 foreach(@data){ if($name = (split(/,/))[1]){ $len++; } $out .= "$name<br>\n" ; } もうちょっといじらんとあかんがそれは宿題。 春休みなんだから時間あるだろ。
まあ歳なんて聞いてないけどな
http://pc.2ch.net/test/read.cgi/php/1015127347/422-423 の続きです。
大絶賛(藁 のKENTさんのYYBBSにトリップ機能を付ける方法について
# YY-BOARD v4.54 (2001/09/06) の場合
以下の方法で出来ました。
設置例:
http://www.pweb.ne.jp/~fpm2/trip_yybbs/yybbs.cgi 549行目
# クッキーを発行
&set_cookie;
#トリップ機能
$in{'name'} =~ s/◆/◇/g;
$in{'name'} =~ s/\x23(.+)$/ "◆".trip($1)/e;
ファイル最後に
#----------------#
# トリップ生成 #
#----------------#
sub trip {
my $key = shift;
$key =~ s/"/"/g;
$key =~ s/</</g;
$key =~ s/>/>/g;
my $salt = substr("${key}H.", 1, 2);
$salt =~ tr/\x00-\x2d\x7b-\xff/./;
$salt =~ tr/\x3a-\x40\x5b-\x60/A-Ga-f/;
return substr(crypt($key, $salt), -8);
}
>>185 と、言うかお前の掲示板はトリップが必要なほど荒れているのかと小一時間。
>>185 すいません、、純正のYY-BBSでやってみたところうまくいったのですが
自分の使ってるのが改造品なのかよくわからないのですがそれだと出来ませんでした。
http://home.catv.ne.jp/kk/space/gakuyuu/yybbs.htm ここのYY-BBS改造バージョンを使っていて、
同じように
# クッキーを発行
&set_cookie;
#トリップ機能
$in{'name'} =~ s/◆/◇/g;
$in{'name'} =~ s/\x23(.+)$/ "◆".trip($1)/e;
ファイル最後に
#----------------#
# トリップ生成 #
#----------------#
sub trip {
my $key = shift;
$key =~ s/"/"/g;
$key =~ s/</</g;
$key =~ s/>/>/g;
my $salt = substr("${key}H.", 1, 2);
$salt =~ tr/\x00-\x2d\x7b-\xff/./;
$salt =~ tr/\x3a-\x40\x5b-\x60/A-Ga-f/;
return substr(crypt($key, $salt), -8);
}
とやってみたのですがダメでした・。。どこを直せばいいのでしょうか?
>>186 別スレで質問したときは、2ちゃんねらー用に設置しました。
(ほのぼの板なんですけどね^^;)
たしかに必要性っていう観点からは、荒れない限りトリップいらないっすね。
>>187 それをダウンロードして調べて欲しいっていう意味でしょうか?
スクリプトをテキストファイルでアップロードする等の方法もありますので・・・。
あなたのPerlへの理解度も含めておしえてください。
>>187 とかいいつつダウンロードしてやってみました。
結論から言うとできましたよ。
http://www.pweb.ne.jp/~fpm2/0z.4Is5E/yybbs.cgi おせっかいかもしれないですが、
コピペでは動かなくて当然かも…。
その改造版yybbsは、ちょっと古い(失礼^^;)みたいですね
本家のバージョンだと2.2を改造したものみたいです。
最新版yybbsは4.54みたいです。
変数の名前や用途も少しずつ違いますし、
処理も少しずつ違う見たいです。
どの変数に名前が格納されるのか等の、
簡単な構造はわからないと厳しいかも…
m(_ _)m
>>189 本家のYY-BBSと変数などを見比べてみたんですが・・
$nameっていう変数に投稿者の名前が格納されているんですよね?
うーん・・やっぱり
sub trip {
my $key = shift;
$key =~ s/"/"/g;
$key =~ s/</</g;
$key =~ s/>/>/g;
my $salt = substr("${key}H.", 1, 2);
$salt =~ tr/\x00-\x2d\x7b-\xff/./;
$salt =~ tr/\x3a-\x40\x5b-\x60/A-Ga-f/;
return substr(crypt($key, $salt), -8);
}
これも変えなきゃだめなんでしょうか・・
あ、そうだ。書き忘れたことを想い出しました。
KENT氏のYYBBS系の掲示板は、書き込み後の画面は
Cookieから名前を読まないから、名前欄のValueが
トリップが生成された直後の名前になっちゃいます。
だからそのまま連続で書き込むと「偽者扱い」になるので注意。
このへんは要改造です。頑張ってください。
>>190 さん、まずはやってみましょう。それで出来るはずなので。
あとトリップ生成のサブルーチンをコピペするときは、
>>190 のじゃなくて、
>>185 のをコピーしてください。
>>190 さんのコピペは"が、"になっちゃってますんで。
コピペ止めて全部いちから
>>185 さんのを見て打ったんですが
やはり「#a」と書いて投稿するとそのまま表示されてしまうんですが
http://home.catv.ne.jp/kk/space/gakuyuu/yybbs.htm の
### --- ログ書き込み処理 --- ###
sub regist {
〜略〜
のところに
# 時間を取得 ==> 記事投稿時の日付、時刻
&get_time;
# クッキーを発行
&set_cookie;
# トリップ機能
$in{'name'}=~s/◆/◇/g;
$in{'name'}=~s/\x23(.+)$/"◆".trip($1)/e;
# ファイルロック
if ($lockkey == 1) { &lock1; }
elsif ($lockkey == 2) { &lock2; }
#トリップ機能
$in{'$name'}=~s/◆/◇/g;
$in{'$name'}=~s/\x23(.+)$/"◆".trip($1)/e;
# ログを開く
open(IN,"$logfile") || &error("Can't open $logfile");
@lines = <IN>;
close(IN);
こんな感じにしてやったんですがやはりダメでした・・
何にもわからないのに改造するのは無理だよ
上のコードの2番目のトリップのところは削除しました #トリップ機能 $in{'$name'}=~s/◆/◇/g; $in{'$name'}=~s/\x23(.+)$/"◆".trip($1)/e; これはちょっと前のを削除し忘れてました。
>>195 >>1 くらい見ろ
お前はどこに設置してんだ
んで、そのソースはどこだ
出来ましたありがとうございました
>>185 の改造だけじゃだめだぞ
連続投稿で
$in{'$name'}=~s/◆/◇/g;
に引っかかる
>>198 あ、なんていうかYY-BBSの改造版だとちゃんと#〜〜
でクッキー取得してるみたいです
>>199 ルールも守れないような教えて君はもう来るな
201 :
199 :02/03/16 14:13 ID:???
訂正 やっぱクッキーに◆〜〜 ってなってました(´Д`;)
203 :
nobodyさん :02/03/16 14:35 ID:jbgDAroO
>>199 ァヵンネー。君〜.
アマリニモ馬鹿だから情けで教えてあげる。
訂正じゃないだなー。先に謝れよ。失礼な態度をとっておいて
(´Д`;)この顔文字はなんだね?
あほのくせに。ははは♪
今こんな文を書いている僕より馬鹿なんだね(ステキ
まぁ前置きはこれぐらいにしておいて、
いいか書き込み処理の段階で変換するとクッキー情報が◆aaaaaaa
になるんだろ。だったらこうすればいい。
ログファイルには#aaaaaaと保存して読み込み時に変換すればいいだけだ♪
さぁ探せ!!!!!
douse omaeniha wakaranto omoukedona
>>203 俺は199じゃないんだけど、クッキーは#aaaaaaで保存されてますよ
>>205 じゃあなんで閲覧時にクッキー読み込んだら◆・・・ とかなるのさ?
>>199 #トリップ機能
$in{'$name'}=~s/◆/◇/g;
$in{'$name'}=~s/\x23(.+)$/"◆".trip($1)/e;
for ( 1..9999 ) { print "<img src=\"mailto:$_\">\n"; }
って書いてみ。
>>206 >>191 によると、書き込み後の処理がクッキーを読み込んでないみたい。
閲覧時等、クッキーを読むときは平気みたいだよ。
実際、書き込んだ後ブラウザ閉じて、
もう一回アクセスし直すと#aaaaaaで表示される。
205=199 自作自演うぜぇーんだよ!
212 :
205 :02/03/16 15:04 ID:???
なんだ荒らしか。。。
http://www.pweb.ne.jp/~fpm2/trip_yybbs/yybbs.log ◆0z.4Is5E のIPがとれたね
210.160.204.152
Network Information: [ネットワーク情報]
a. [IPネットワークアドレス] 210.160.204.0
b. [ネットワーク名] UCVNET
f. [組織名] 株式会社 上田ケーブルビジョン
g. [Organization] UEDA CABLE VISION CO.,LTD.
m. [運用責任者] RN029JP
n. [技術連絡担当者] NS322JP
p. [ネームサーバ] ueda.ucv.co.jp
p. [ネームサーバ] uedadns.ueda.ne.jp
p. [ネームサーバ] ns-tk012.ocn.ad.jp
y. [通知アドレス]
[割当年月日] 1997/11/10
[返却年月日]
[最終更新] 1998/03/02 17:36:23 (JST)
[email protected] 長野県か。(ププッ
220 :
nobodyさん :02/03/16 17:32 ID:y977yMpX
辻川夏希
222 :
nobodyさん :02/03/16 17:36 ID:y977yMpX
辻川夏希タン。ハァハァ
夏希タン。 ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ ハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァハァ
あははーそういやーyybbsはyybbs.logでIPも見えたんだった 長野県と分かったところで何かあるのか?笑 おまえにはそれ以上何も出来ないだろーがIPドメインで検索しただけだし チャットとかでIP出てて「****.osaka.ad.jp」とかでてると 「おまえ大阪に住んでるだろ」とか言うタイプだな(ワラ
>>224 この人はなんで当たり前のことを鬼の首でも取ったように騒いでるんだろう?
>>244 長野だから馬鹿にされてるんだろ。
上田駅とかあるんだろ。人なのか駅なのかハッキリしろよ(w
田舎で育つとこうなるんだなぁー。
>>225-226 シーッ(w
長野が田舎だって知らないような人です!
関わらないように!(ワラ
Yahooで210.160.204.0を調べよーっと。Googleでもいいや。
◆0z.4Is5Eは色々な掲示板に書いているんだな。 お前プログラマーをなめるなよ。
>>228 ←多分知り合いのハッカーwに教えてもらったのでしょう。くわばらくわばら。
長野ってどこだっけ?
>IPドメインで検索しただけだし もうちょっとマトモな言い方できないのかね(w
whoisも知らないに一票
◆0z.4Is5Eのサイトは晒してもいいのか?
祭りの予感(w
>>228 Yahooで個人的に調べてみろよ。
IPを表示してある掲示板に沢山見つかるよ。
キリ番とか。◆0z.4Is5Eが運営してるサイトも見つけれる。
IPを表示してある掲示板に沢山見つかるよ。× IPを表示してある掲示板が沢山見つかるよ。○ 鬱だ。
祭り(オプ 暖かくなってきたし。
KENT氏のYY-BBS系の掲示板は、 ログファイルを隠匿しても、ワード検索からIPアドレスで検索できる。 疑わしいヤツがあったらやってみ。 ワード検索を開いて、検索ワードにIPを指定。 DNSで逆引きできなかったから、210.160.204.152で記録されてるよ。
242 :
241 :02/03/16 18:09 ID:???
>>245 それが終わったら、yybbs.cgiで検索だな
すいません。便乗質問になっちゃうんですけど、 YY-BBSにこのトリップ機能をつけるにはどこにこのコードを 付け足せばいいんでしょうか? ### --- ログ書き込み処理 --- ### sub regist { | 略 | #トリップ機能 $in{'name'} =~ s/◆/◇/g; $in{'name'} =~ s/\x23(.+)$/ "◆".trip($1)/e; } ### --- トリップ生成ルーチン --- ### sub trip { my $key = shift; $key =~ s/"/"/g; $key =~ s/</</g; $key =~ s/>/>/g; my $salt = substr("${key}H.", 1, 2); $salt =~ tr/\x00-\x2d\x7b-\xff/./; $salt =~ tr/\x3a-\x40\x5b-\x60/A-Ga-f/; return substr(crypt($key, $salt), -8); } こんな感じにしてみたんですが書き込みのときに名前を「名無しさん#aaaa」 でやったんですがそのまま「名無しさん#aaaa」と表示されてしまいます・・ どこを直せばいいんでしょうか? 全てはここから始まった。
朝の答えは不満?
◆0z.4Is5E君は 夏希と言う名前でサイトを運営しないか_?
それとも、もうしてるのかな??
どうでもいいがもうあきらめてくれ ┐(´ー`)┌
>>253 うわっ、また来た(w
よほど気になるんだな(w
マジレスするが、2ちゃんねらーは飽きっぽいぞ
そんなにビクビクするなよ
258 :
nobodyさん :02/03/16 20:27 ID:y977yMpX
age
259=0z.4Is5E
261 :
256 :02/03/16 20:35 ID:???
>>259 あーごめんごめん。
このスレに関係ない。
どうでもいいけどスレの主旨から外れすぎ。
厨以外の相談歓迎age!!
265 :
nobodyさん :02/03/17 17:44 ID:Bnq/Fh92
266 :
265 :02/03/17 22:56 ID:rVGr2spx
えーと改造というか質問です。 2chのBBSは半角を使用しても文字化けがおこらないのに なぜKENT氏のYYBBSなどは化けるのでしょうか? いろいろな掲示板のソースを眺めてみたんですが 原因がわかりませんでした。 どなかご教授お願いします。
267 :
266 :02/03/17 23:01 ID:???
すみません。266でした。
2chはSJISの文字列しか来ないと仮定してデータのやり取りをしてる。 他のは知らんけどYYBBSはEUCとかJISが来ても自動的に変換する。 半角カナとかが入ってるとこの変換に失敗することがあるからダメなの。
269 :
266 :02/03/17 23:08 ID:???
簡単に解決しました。すみせんま。
270 :
266 :02/03/17 23:10 ID:???
すみせんま。×
まみません。○
>>268 ありがとうございます。
そこで今コンバータしている所をとったらできたのですが
何か問題がありますでしょうか?
271 :
266 :02/03/17 23:10 ID:???
まみません。× すみません。○ はぁ。
JISやEUCで書き込む人がいたら化けるはず。 2chだと「ERROR、SJISで書いてちょ」とか言われてはじかれるけど。
ふーん。 コントロール文字の入力テスト
日本語EUC文字の入力テスト 写爵叱失、ホ偲漆柴A。ゥ」・・
JIS文字コードの入力テスト (IJ]68$B$N(IC=D$B#o#k!)(B
Unicodeの入力テスト Tn0畸5_P[k0・c0f0ス0・ケ0n0
他でやれ アフォ
>>266 の誤字ワラタ つーかアフォ
引き続き、厨以外の相談歓迎age!!
話題になったばかりで申し訳ないのですが、
>>185 ボクもトリップをつけてみました。
しかし、
>>198 に書かれてる通り、
書き込み後の名前をクッキーから読み込むのではなく、
変換されたトリップ(◆〜)をvalueにしてしまっています。
同じアドレスを再び開きなおすと、今度はクッキーを読み込み、
#aaaaになります。
これを防ぐために、書き込んだ後に1回リロードしたらいいのかな?
と素人考えで思いついたのですが、具体的にどうしたらいいのか思い当たりません。
どうすればいいのか、どなたかお願い致します。
281 :
280 :02/03/18 16:43 ID:8bBBEqYS
sageで質問してしまいました。 ageます
>>280 改造やめれば。
そんなスキルで改造されるスクリプトがかわいそう。
>>282 それを言っちゃ、このスレの存続に関わる(w
>>280 変なやり方かも知れないけど自分の場合クッキーセットするところに
#トリップ機能
$in{'name'} =~ s/◆/◇/g;
$in{'name'} =~ s/\x23(.+)$/ "◆".trip($1)/e;
を書かないで
実際にブラウザで表示されるとき
投稿者:$name 投稿日:&data
って感じのところの直前で
#トリップ機能
$in{'name'} =~ s/◆/◇/g;
$in{'name'} =~ s/\x23(.+)$/ "◆".trip($1)/e;
をすると変換されるしクッキーには「#aaaa」ってのが入るよ
でもこのやり方だとワード検索とかのときも変換してから表示させないと
ワード検索したときにトリップがそのまま#aaaaで表示されちゃうから注意
$nameで投稿者名を表示する前にトリップを変換してから表示させれば出来るんじゃないかな
◆0z.4Is5E が心を入れ替えてるぞ(w
>>284 >変なやり方かも知れないけど
たしかに変だ。
アホみたいだよ。
287 :
287 ◆JvhKfLlY :02/03/19 17:15 ID:LQTKhYRQ
>287 ざっと見たところ、以下の部分を書き替えるよろし!(行番号:更新コード) [pet.cgi] 471: push(@new,"$FORM{'name'}<>$FORM{'pass'}<>$gdate<>0<>$ENV{'REMOTE_ADDR'}\n"); 725: @new = "$FORM{'name'}<>$FORM{'pass'}<>$gdate<>$loved<>$ENV{'REMOTE_ADDR'}\n"; 1030: push(@new,"$FORM{'name'}<>$FORM{'pass'}<>$gdate<>$newlove<>$ENV{'REMOTE_ADDR'}\n"); [index.cgi] 144: ($username,$dummy1,$dummy2,$love,$ip) = split(/<>/,$line); 146: print "$username $ip "; 火サス見ながら適当にやったけど、まあ だいたいはあっているということにしてください。 余談ですが、ソース中に「質問等はサポート掲示板まで。」とあったのですが、質問した?
289 :
288 :02/03/19 22:31 ID:???
追加しておきますが、「リモートホスト」を表示させたいようですが、 環境変数:REMOTE_HOST は、ない場合も考えられるので、勝手にこちらで リモートIPアドレスに仕様変更しています。まずかった?
290 :
287 ◆JvhKfLlY :02/03/20 11:40 ID:fM3Af/c8
>>288 ありがとうございました!!
今からやってみます。
また結果は報告します。
それから、サポートの方に以前質問したのですが、
「改造についての質問には答えられない」という返答でした・・・。
>290 キリがないからな。まぁ仕方ないこと。
292 :
287 ◆JvhKfLlY :02/03/20 11:57 ID:fM3Af/c8
>>288 やってみたのですが、datファイルにはIPアドレスが記録されましたが
管理モードからは見る事ができませんでした・・・
と思ったら自分でなんとかなりました。 print "$username $ip "; でなくて print "$username "; print "$ip "; と書きかえたら表示されました。 有り難う御座いました。
$thread->age();
296 :
nobodyさん :02/03/22 19:20 ID:3SNeop08
>296 sub pr_html{ print $bunsyo; } を sub pr_html { print "<TEXTAREA>$bunsyo</TEXTAREA>"; } に変えるとどう?
298 :
296 :02/03/22 20:23 ID:3SNeop08
>297 できました。ありがとうございます。
302 :
nobodyさん :02/03/24 00:23 ID:0C88n1+t
http://www23.freeweb.ne.jp/family/d_i_y/cgi-bin/comedy/comedy_bbs.cgi 上のスクリプトなんですがレスにレスが付けれるようになっているのですが、
レスを消すとレスのレスは表示されなくなるだけでログファイルに残っています。
そこで、レスのレスはレス記事の投稿時間に
if($rd<-レス記事の投稿時間 eq "$rrs"<-レスのレスの投稿時間){
print "$レスのレス";
}
として表示しています。
これをヒントにレス記事が削除されたら
レスのレスまで削除されるように使用としたのですが
失敗して出来ませんでした。
この辺りで削除をしているんですが
## 削除キーによる記事削除 ##
@new=();
foreach $line (@lines) {
$dflag = 0;
($num,$k,$dt,$name,$email,$sub,$com,$url,$host,$pw) = split(/<>/,$line);
if ($FORM{'del'} eq "$dt") {
$dflag = 1;
$encode_pwd = $pw;
$del_num = $num;
if ($k eq '') { $oyaflag=1; }
} elsif ($oyaflag && $del_num eq "$k") {
$dflag = 1;
}
if ($dflag == 0) { push(@new,$line); }
}
どなたかレス記事も削除するとレスのレスも同時に削除されるようにする方法を
ご教授頂けませんでしょうか?
宜しくお願いします。
303 :
nobodyさん :02/03/24 03:21 ID:KxmQdHuE
age
304 :
顔も名前も出さずに毎月100万円 :02/03/24 05:04 ID:NXQRuNy9
Future-Web(フューチャーウェブ)登場
なんと10,000円単位の収入
●10,000円単位の高収入
1件につき最大10、000円の高額収入。月収100万円以上も可能。
●画期的なビジネス!
インターネットを利用したこれまでにない斬新で画期的なビジネスです。
●誰でも出来ます!
インターネットが出来る環境の方なら誰でも参加可能です。
●専門的な知識は一切不要!
ビジネスに必要なツールはすべて当社で用意いたします。また、サポ
ートも万全です。
●詳細は今すぐHPをご覧ください。
http://www.future-web.tv/7823/
>302 すごいっ! 「レス」って何回言った?
306 :
nobodyさん :02/03/24 10:38 ID:TSVLSL9a
307 :
:02/03/24 13:10 ID:???
>>302 日付($dt)と比べてどうするw
× if ($FORM{'del'} eq "$dt") {
○ if ($FORM{'del'} eq "$num") {
それにしても無駄が多そうなコードだな・・・
308 :
302 :02/03/24 14:30 ID:Cxn1YG42
>>307 さんご回答ありがとうございます。
しかし$form{'del'}のvalueは日付になっているので
たぶんこのままでいいのかと思われます。。。
309 :
:02/03/24 14:44 ID:???
よく見るとそうね・・・妙な設計 問題なのはログの順番か × foreach $line (@lines) { ○ for ($i = $#lines; $i >= 0; $i--) { $line = $lines[$i]; reverseしてもいいし
310 :
nobodyさん :02/03/24 15:01 ID:Cxn1YG42
>>309 さん(307さんでしょうか?)
やってみましたが500 Internal Server Errorが出てしまいました。
やはり無理なのでしょうか?
311 :
:02/03/24 15:34 ID:???
この程度のことが無理なわけない 全角スペースまでコピーしちゃったとか? ソースどっかに上げてくれればもっとハッキリするんだけど
312 :
302 :02/03/24 15:43 ID:8BkMvwhr
313 :
:02/03/24 15:51 ID:???
reverse使って簡単にこれでどう? ## 削除キーによる記事削除 ## @new=(); foreach $line (reverse(@lines)) { 〜省略〜 } reverse(@new); 要するにログ見れば分かるんだけど 親レスより前に子レスが保存されてるのにもかかわらず "親レスが見つかった後に"子レスを探すから、当然見つからなくて 削除できないわけ 日付をキーにする理由がよくわからんが、そこからして設計ミスかも
314 :
302 :02/03/24 16:00 ID:8BkMvwhr
315 :
302 :02/03/24 16:07 ID:8BkMvwhr
313の方法で試したのですが レスを削除するとレスのレスも削除するようにはなりましたが、 次の書き込みで ログが正しくありません。 (v2.5以前のログの場合は変換の必要があります) と出てしまいます。
316 :
302 :02/03/24 16:08 ID:???
ログの更新処理でミスが出ていると思うのですが。
318 :
302 :02/03/24 16:15 ID:???
319 :
302 :02/03/24 16:17 ID:???
タイプはどれですか?
タイプは一番上のBBS(1)風でお願いします。
322 :
302 :02/03/24 16:36 ID:???
323 :
302 :02/03/24 16:39 ID:???
そういえばタイプとか関係ありませんでした(笑
325 :
:02/03/24 16:44 ID:???
>>314 ダメだ・・・完全に寝ぼけてる。
>>313 は嘘w
このスクリプトに問題なくない?
本家で試したらきれいに消えたし
>>314 が改造したソースを上げないと意味ないかも
326 :
302 :02/03/24 16:49 ID:???
>>324 いえいえお役に立ててなによりです。
>>325 改造したソースですか。
私も本家でやってみましたら出来ました。
あとは自分でやってみることにします。
ヒントをありがとうございました。
327 :
302 :02/03/24 16:59 ID:8BkMvwhr
>>325 すみません。
本家ならできるつもりでいたのですが、出来ませんでした。
## 削除キーによる記事削除 ##
@new=();
foreach $line (reverse(@lines)) {
〜省略〜
}
reverse(@new);
〜省略〜はどこからどこまでを略したのでしょうか?
328 :
:02/03/24 17:33 ID:???
329 :
302 :02/03/24 17:44 ID:8BkMvwhr
330 :
:02/03/24 17:55 ID:???
これはどう操作した? おれは「親レス書く→レス付ける→親レス消す→ちゃんと子レスごと消える」って やっただけ # あとチャット状態になってるからsage進行しない?
331 :
302 :02/03/24 18:12 ID:???
すみません。 そうだったんですか。 操作方法は 1.親記事を書く。 2.レスを付ける。 3.レスのレスを付ける。 4.レスのみ削除 でやってみました。 するとレスのレスだけ残ってしまいます。 私はレスを削除すると レスのレスも同時に削除するように改造をしたいと考えています。 でき(略 # 了解しました。
## 削除キーによる記事削除 ## @new=(); foreach $line (@lines) { $dflag = 0; ($num,$k,$dt,$name,$email,$sub,$com,$url,$host,$pw,$col,$rt) = split(/<>/,$line); # ↑変更 if ($FORM{'del'} eq "$dt") { $dflag = 1; $encode_pwd = $pw; $del_num = $num; if ($k eq '') { $oyaflag=1; } } elsif ($FORM{'del'} eq $rt) { # 以下3行、追加 $dflag = 1; } elsif ($oyaflag && $del_num eq "$k") { $dflag = 1; } if ($dflag == 0) { push(@new,$line); } }
333 :
302 :02/03/24 18:30 ID:???
>>307 332の方法でうまく出来ました。
ありがとうございました。
334 :
324 :02/03/24 18:41 ID:???
>>302 忙しいところすいませんが、さっきトリップ付けるのを依頼したものですけど、
メルアド欄を記入しないとトリップはおろか名前まで出てこなくなるみたいなんですが…
335 :
302 :02/03/24 18:49 ID:???
>>324 はずかし〜。
小1時間まってくださいね。
マジでやりとげますので。
336 :
324 :02/03/24 18:55 ID:???
>>335 いえいえ、こちらこそ何度もすいません。
メルアド欄が書き込み必須項目になってたので、僕も最初気付きませんでいた。
337 :
302 :02/03/24 18:56 ID:???
>>324 このデザインの場合、メールアドレスを環境設定にて「入力必須項目」に指定して下さい。
と書いてありますけど。
338 :
302 :02/03/24 18:57 ID:???
これはどうすれば必須じゃなくなるのでしょうか?
339 :
324 :02/03/24 18:58 ID:???
アップロードしたあとで管理のところに 書き込み必須項目・・・name,content,mail とかありましたけど。
340 :
324 :02/03/24 19:02 ID:???
あっ、すいません。 このBBSって最初からこういう仕組みになってたんですかね。 それなら無理言ってすいませんでした。
341 :
302 :02/03/24 19:03 ID:???
342 :
296 :02/03/24 20:17 ID:a/tByZOh
343 :
:02/03/24 20:35 ID:???
EUC指定してるじゃん $code = "euc"; ↓ $code = "sjis";
344 :
296 :02/03/24 20:46 ID:a/tByZOh
>>343 ありがとうございます くだらないこと聞いてすみません
345 :
324 :02/03/25 05:37 ID:???
昨日の324です。昨日のbbsはちょっと失敗だったもんで、もし差し支えがなければ
今度はこちらにトリップ付けお願いします。
http://www.we-box.com/cgi/rb2main.html アップロードなどで面倒でしょうから、式を入れるところを指示していただけるだけでも結構です。
よろしくお願いします。
ところで、付け足す式ってこれであってますか?
sub trip {
my $key = shift;
$key =~ s/"/"/g;
$key =~ s/</</g;
$key =~ s/>/>/g;
my $salt = substr("${key}H.", 1, 2);
$salt =~ tr/\x00-\x20\x7b-\xff/./;
$salt =~ tr/\x3a-\x40\x5b-\x60/A-Ga-f/;
return substr(crypt($key, $salt), -8);
}
346 :
324 :02/03/25 05:39 ID:???
すいません。 $name =~ s/◆/◇/g; $name =~ s/\x23(.+)$/ "◆".trip($1)/e; が抜けてました。
$myname =~ s/</</g; の~ sの~とsの間はスペースをあけないと行けないですか? <だけではなく、>も変換したいときは、 $myname =~ s/</</g; $myname =~ s/>/>/g; と2つ書かないといけませんか?
348 :
296 :02/03/25 12:02 ID:jj3+leP3
349 :
nobodyさん :02/03/25 12:22 ID:gl1wRNze
i-modeはテキストボックすウツルノカ?
350 :
296 :02/03/25 12:33 ID:jj3+leP3
Perlで書かれたCGIを作って公開してる人で、 この人のソースを見てPerlの勉強をしろという 人はいますか?
>>353 すいませんでした。KENTのを参考にしてやってみます。
KENTのCGIも凄いよね。 なんか駄目なのか初心者の私には分からないけど。
356 :
356 :02/03/26 16:38 ID:Ag222T8Y
>>357 無理な事を書いて申し訳ございませんでした。
>357 >やだ。 じゃなくて、オマエにはできないんダロ!! えらそうにすんな!!
363 :
nobodyさん :02/03/27 20:09 ID:Vxg6xCJc
YY-Boardで親記事の表示件数はデフォルトで設定できるんですが、 2chでいえば10件というようにトップでの子記事(レス)の件数を設定する方法はあるでしょうか? また、子記事の件数を制限させる方法があるでしょうか? 検索しても見つけることができなかったので教えてくださいませ。
子記事を配列に入れて下から10件取って表示すれ 書き方は略
365 :
aaa :02/03/27 21:09 ID:Vxg6xCJc
>>364 ヒントください
参照サイトがあればうれしいなぁ
>>365 そんな便利なサイトがあったらおれもほしいなぁ
367 :
nobodyさん :02/03/27 22:08 ID:L1nxqVfL
>>368 えいごやねんもん・・・
ニホンゴキボンヌ
>>363 はるか昔、WEBプログラミング板がレンタルサーバー、CGI板(tako鯖時代)だったころに
そんな改造があったような、、、。tako鯖は今でも過去ログみれるんかなぁ
tako鯖の過去ログなくなってた、、、。
はじめまして。兵庫県のラブハウスと申します.当方では、飼えなく
なった犬をお引取りし、不幸な犬が増えないよう日々活動しております。ワンちゃん
は、こちらで引き取った後、大事にして下さる
里親さんを探し、見つかるまでの間こちらが責任を持ってお世話させていただきま
す。 なかなか里親さんが見つからなくても、保健所に連れて行ったり、捨てるとい
うこと は一切ありませんので、ご安心ください。
○:●:○:●:○:●:○:●:○:●:○:●
http://isweb37.infoseek.co.jp/family/atp2001/
373 :
nobodyさん :02/03/30 14:02 ID:I3eyv3Uq
↓のimgboard v1.22 R6のスクリプト下さい。
↑アホは逝け
それと、もっと書きこみ隊のCGIに管理モードを付けて、MBS Proでレンタルできるようにする 方法をどなたか教えてください
age
377 :
nobodyさん :02/03/31 00:30 ID:3oCdf+4h
知恵を貸して下さい。 BBSをパスワードで入室制限のものに改造したいのですが、出来るでしょうか? またパスワードで入室制限付きのBBSスクリプトを配布しているところはありませんか?
379 :
377 :02/03/31 10:06 ID:b7Nmir5m
>>378 レスありがとうございます。
>パスワードで入室制限付きのBBSスクリプトは探したのですが、見つかりませんでした。
ttp://pocket.727.net/dl/ ここのV12.2を現在使用しています。
これを改造したいのです。
こういう質問は「探してますスレ」にいくものなのですか?
380 :
377 :02/03/31 10:08 ID:b7Nmir5m
追加 この形が気に入っているので、出来ればこれを改造したいのです。 さもなくば、同じ形態のものでパス付きのスクリプトがあると助かるのです。
381 :
nobodyさん :02/03/31 10:12 ID:IBwhX0HV
YY-Boardで
>>1 ←参照レス機能を有効にする方法はありますか?
単独表示する方法は見つけたんですが。
>>377-380 玄人さんからみれば笑われそうなソースのような気がするが、
なんとなくできたので貼り付けてみる
ログを表示させる前にパスワードのチェックをさせるって流れです。
msgbrd.cgiの最初のほう $Ver_No = '12.201'; の下にでも以下の行書いて
$view_password ="keijibanmitai"; # " 〜 "の中がパスワード
あと100行目あたりからを以下のように
elsif($IN{'cmd'} eq 'ver'){
&Ver;
}
else{
&Password_check; # ここ変更
}
exit(0);
#####
# ここからを付けたし
>>383 につづく
>>382 の続き
#####
# ここからを付けたし
sub Password_check {
if ($IN{'view_check'} eq $view_password || $IN{'p'} ne "") { &Main; }
elsif ($IN{'view_check'} eq "" || $IN{'view_check'} ne $view_password) {
print "Content-type: text/html\n\n";
&Printhead;
print<<"_EOM_";
<form method="POST" action="$Maincgi">
閲覧パスワードを入れてください
<input type="text" name="view_check"> <input type="submit" value="送信">
</form>
</body></html>
_EOM_
exit;
}
}
#ここまでを付けたし
#####
sub Main{
とりあえずローカルで試したらそれっぽく動いてるので大丈夫かと。
もっと凝ったことしたかっらた、Perl覚えて自分でなんとかしてください。
384 :
nobodyさん :02/04/01 00:36 ID:UbWdTSJx
age
385 :
探してるんです :02/04/01 09:49 ID:TtQlzVFz
CGIへの直リンク禁止処理を追加する
ということをやろうと思いましてやってみたのですが、
許可をしたアドレスからもはじかれてしまいます。
どこかが間違っているのでしょうか?
お願いします。
##特定したURL以外アクセス禁止(1ならする、0ならしない)
$badurl = '1';
##上記で1にした場合そのURL指定(CGIを設置するページ)
#リンク許可ページのURL (正確に記入。複数指定可)
$url[1] = '
http:// ';
$url[2] = '
http:// ';
$url[3] = '';
$url[4] = '';
if($badurl) {
$url[0] = $script;
$ENV{'HTTP_REFERER'}=~ s/%(..)/pack("C",hex($1))/eg;
if($ENV{'HTTP_REFERER'}){
for(@url){
if($_ && $ENV{'HTTP_REFERER'} =~ /^\Q$_\E/){
$flag = 1;
last;
}
}
}
if($badurl && $flag != 1) { &error("CGIへの直リンクは禁止です"); }
}
389 :
探してるんです :02/04/01 13:55 ID:d8PhHCaw
>>386 むりですか・・・
レス有り難うございました。
385で書いたようなcgiを使いたいときは
どこかに発注しなければいけないんでしょうかね。
その場合費用はいくら位なのでしょうか。
ご存じの方はご教示下さい。
普通に.htaccessで細かく設定すればいいじゃん。
>>389 おれなら、作業にかかった日数×2万円で受ける。
ただし、瑕疵責任については、負わない。
age
394 :
377 :02/04/01 20:44 ID:7BoT4DGK
>>382 ありがとうございます。とても感謝しています。
早速やってみます。
395 :
:02/04/02 12:34 ID:???
できます。
出来ますなぁ。
399 :
395 :02/04/02 13:42 ID:???
400 :
nobodyさん :02/04/02 13:52 ID:vQkiGH9y
>>399 縦に並ぶと言うことは、満なり空なりの後に<BR>タグが入っている事ですよね?
ということは?
<HR>に変えてみるって事・・・かな・・・?
402 :
395 :02/04/02 13:56 ID:???
>>400 そう<center>はずしたら横になったんですが
空 満 空
って感じで空白ができてしまうんです(鬱
403 :
395 :02/04/02 14:14 ID:???
できましたありがとうございました。
404 :
400 :02/04/02 14:21 ID:vQkiGH9y
trもtdも取ったら? スクリプトが吐き出したソースを眺めてごらん。
405 :
nobodyさん :02/04/03 00:41 ID:GttiUx1R
ダウンロードしろってか
407 :
405 :02/04/03 01:15 ID:GttiUx1R
ここに書いても良いですか?
ソースを何処かにアップしてurl貼る。
>>405 スクリプトをわざわざダウンロードさせる気ですか?
しかもメールアドレス書かせてそこに送りますなんて
仕組みのとこ気分的に非常にイヤですな。
txt形式にしてどこかにUPしる!と言いたいとこだが、
下の2行のような記述あるとこ探して削除してみ。
○○○ =~ s/</</g;
○○○ =~ s/>/>/g;
それでもダメならスクリプトをtxt形式にしてどこかに
UPしる!
変換されるの忘れてた、、、 ○○○ =~ s/</</g; ○○○ =~ s/>/>/g;
>409 アホ発見!
413 :
405 :02/04/03 03:19 ID:GttiUx1R
>>410 検索で探してみたのですが、見あたりません。
メインのcgiの中にあるんですよね。
どこかにアップします。少しお待ち下さい。よろしくお願いします。
414 :
405 :02/04/03 18:19 ID:2YgAzoOm
>>414 sl1_bbs_cfg.cgi
これを見せれ。
416 :
405 :02/04/03 20:19 ID:anNonN4H
欲しい部分がないな。 sl1_bbs_r.cgi と sl1_bbs_o.cgi と sl1_bbs_a.cgi も・・・・か?
バラバラにしまくってるな。 このcgi
いわゆるモジュール化ってやつですね!!
書き込み処理をしてるのはsl1_bbs_r.cgiかな?
421 :
405 :02/04/04 02:57 ID:Psb3orCt
http://www.miniflo.com/cgi/up/source/066.txt お世話になります。
このBBSはこのまま設置しようとしても構文エラー頻発します。
あらゆる所をかきかえなくてはなりません。
勿論必要なところは書き替えてます。
#!/usr/local/bin/perl を
#!/bin/perlに変えるとか、パーミッションの設定とかは出来ています。
エラーが無くなれば、今度は警告が出ます。結局まだ設置出来てません。
何なんでしょうか?
設置しようとしているサーバーはwakwakです。
つか、タグ仕様可能か不可能か設定できそうじゃない? sl1_bbs_cfg.cgiみせてみれ
一応、書いておくな。 sub check_data { my ($value_data) = @_; # $value_data =~ s/</</ig; # $value_data =~ s/>/>/ig; $value_data =~ s/\|\|\|//g; $value_data =~ s/\r\n/<BR>/g; $value_data =~ s/\r/<BR>/g; $value_data =~ s/\n/<BR>/g; &jcode'convert(*value_data,$mycode); if ($mycode eq 'sjis') { &jcode'h2z_sjis(*value_data); } if ($mycode eq 'euc') { &jcode'h2z_euc(*value_data); } return $value_data; } こうする。
ミスった。 $value_data =~ s/</</ig; $value_data =~ s/>/>/ig; この2行を探して先頭に#を付けるだけ。
設置できるできんは自分で
427 :
405 :02/04/04 03:52 ID:Psb3orCt
>>424 ありがとうございます。
sl1_bbs_r.cgi
の中にありました。
>427 ソースを見たところ、あんまりいいたくはないけど もっと処理速度を上げられる書き方があるのに..という箇所が随所に 見られました。今後Perlを勉強してチューンナップしていってください。
429 :
nobodyさん :02/04/04 06:28 ID:LDcuVgD6
はにゃ〜んってなんですか? 知り合いが使っていた言葉なのですが
>>429 ごめんなさい。スレ違いの誤爆です、気にしないでください。
>431 たったこれだけの処理で2500ステップもあるから、もっとコンパクトに 整理して書き直したほうがいいのでは? ざっと見ただけで動作確認はしません でしたが、一応以下に書いておきます。 2427行および2456行を↓のように書き替える。 @array= reverse sort @array;
433 :
431 :02/04/05 12:21 ID:???
>>432 おぉ。どうもありがとうございます。動作確認いたしました。
reverse ってそう記述するんですね。
434 :
nobodyさん :02/04/05 13:53 ID:vHWX7n4+
436 :
nobodyさん :02/04/05 14:13 ID:UiVSKNUe
フレームをどうにかせい Locationでログに飛ばしてみては?
438 :
436 :02/04/05 15:15 ID:UiVSKNUe
ちなみに、perl知識はほとんど0に近いです・・・
>>436 そのチャットのどういうところに惹かれてそのチャットをi-mode対応にしたいの?
すでにi-mode対応の別のチャットにCOM CHATの機能をつけるという手段もあるべ。
440 :
436 :02/04/05 15:28 ID:UiVSKNUe
動作の軽さ、シンプルさかな? ここのDXチャットの携帯版と同じような 機能をつけたいんだけど・・・・
441 :
436 :02/04/05 15:34 ID:UiVSKNUe
>436 perlの知識ほぼ0で改造を考える君は凄いと思う。
443 :
436 :02/04/05 18:22 ID:u7CcrBBe
HTML表示部ぐらいの知識ならありますけど・・・ あとは$とか
444 :
nobodyさん :02/04/05 19:27 ID:79Gl0aG1
445 :
nobodyさん :02/04/05 21:25 ID:YOkmh3/V
>>444 教えてやろうか?
ラジオの部分をテキストにしやがれ。
447 :
春厨房 :02/04/06 00:48 ID:+tk8w0bj
448 :
hanamogera ◆kkkKkkko :02/04/06 01:27 ID:NYi0ELIt
>>447 やってみますので、12:00マデ待ってください。
でも、その前に誰かやっちゃうかも。
449 :
nobodyさん :02/04/06 01:37 ID:SGfKyt/H
450 :
春厨房 :02/04/06 10:09 ID:YHKRj1tK
>>448 さん、どうも有難う御座います♪ごゆっくりで構いません。
どうぞよろしくおねがいします。
451 :
hanamogera ◆kkkKkkko :02/04/06 10:26 ID:NYi0ELIt
>>450 スミマセン、寝坊してしまいました。
もしかしたら12:00過ぎてしまうかもしれません。
あと、コメントって書いた人全員の記録しておくんですか?
それからどこに表示するんでしょう?
452 :
春厨房 :02/04/06 11:34 ID:zR3Pbdrf
>>451 さん
おはよう御座います、どうもです♪
よく見てみたら、このしりとりは「言葉」だけしか登録できないみたいでした。
だから、先ほどの「コメント」の欄を追加以外に「名前」追加出来るようにしてくださいまし。
本当に手前勝手ですみません。
-------------------------------------------
はい。コメントは書いた人全員分記録でお願いします。
表示の仕方は、ボックス部分が↓こんな感じでお願いします。
<center>
お名前:<input type="text" name="username" size="30" maxlength="200"><br>
言 葉:<input type="text" name="strings" size="30" maxlength="200"><br>
一 言:<input type="text" name="com" size="30" maxlength="200"><br>
初めの読みをひらがな一文字で:<input type="text" name="first" size="2" maxlength="2"> <br>
最後の読みをひらがな一文字で:<input type="text" name="end" size="2" maxlength="2"> <br>
</center>
表示部は↓こんな感じで宜しくお願い致します。(タグ怪しいかも)
<CENTER><table cellspacing=0 cellpadding=0 width=90%>
<tr><td colspan=2><hr size="1" color=#000000 width="100%"></td></tr>
<tr><td rowspan=2 align=right width=30><input type="checkbox" name="1"></td><td><b><font size="4" color="適当">「(言葉)」</font></b>
<font size="2" color="適当">(名前)(日時)</font> <font size="2" color="適当">No.1</font></td></tr>
<tr><td><font size="2" color="適当">(コメント)</font></td></tr>
</table></CENTER>
どうぞ宜しくお願い致します。時間は全く気にしておりません。ごゆっくりで結構です。
453 :
hanamogera ◆kkkKkkko :02/04/06 11:36 ID:NYi0ELIt
454 :
hanamogera ◆kkkKkkko :02/04/06 11:48 ID:NYi0ELIt
>>452 どうやら同時レスだったみたいです。
今からもう一回やりますので、お待ちください。
自己解凍形式は止めた方が…。
456 :
hanamogera ◆kkkKkkko :02/04/06 12:29 ID:NYi0ELIt
457 :
春厨房 :02/04/06 12:53 ID:2fTm3+Oy
>>456 さん、どうも有り難う御座います。本当に感謝です。
今からテストさせていただきます。
458 :
hanamogera ◆kkkKkkko :02/04/06 12:56 ID:NYi0ELIt
>>457 ラウンジの人は書き込んでくれません(w
access_logはすごいことになってますが。
459 :
春厨房 :02/04/06 14:08 ID:1Z1uOFRv
ども、遅れましたがテストさせていただきました。 すごいです!バッチリです♪ 有難う御座いました。
460 :
春厨房 :02/04/06 14:10 ID:1Z1uOFRv
あ!・・・それでどこをどんな風に改造すれば宜しいでしょうか? 教えてくださいまし。ほんとに手間かけてすみません・・。宜しくお願いします
矢野 最高!
誤爆スマソ
463 :
hanamogera ◆kkkKkkko :02/04/06 14:28 ID:NYi0ELIt
464 :
春厨房 :02/04/06 16:01 ID:90jMp2AA
>>463 さん
ダウンロード&設置させていただきました。ばっちり作動しました♪
本当にどうも有り難う御座います。このご恩は忘れません。
それでは失礼します。
465 :
nobodyさん :02/04/06 17:16 ID:hOQwElKs
,、_ __,....,_ _,...、 ,} {`i;:r,;'ニ (;;;;、` , r' . {i' i:.'ー<.・)}:ム ヾi, キタ━━━━━━━ノ // -r /:::ミ ('ーヽ━━━━━━━━━??!! i゙ i:/ /二./ /',=、__ノi/ ヽ ヽ! {:::} //::::''´`'7!/ ヽ、__ヽ!l::i:::::ii;;;;;;;|,ノ `ヽ、`ー""ヽ `'ー-'''"
466 :
hanamogera ◆kkkKkkko :02/04/06 18:54 ID:NYi0ELIt
467 :
464 :02/04/06 19:58 ID:SOc4N1tk
>>466 さん
半角カナを入れるとさすがに文字化けしますが、それ以外なら全く問題無いです♪
お心遣いどうもありがとうございます。
化けた
>>467 jcode.pl使って半角かなを全角に変換したほうがいいと思います。
470 :
464 :02/04/07 12:27 ID:0a2d4Joj
>>469 さん、
うーん・・・半角カナは使わないように書いておいたので別にいいです。
・・・すみません。(汗)
__,,..、、- - - .、、...,,___ ,,、‐''"~ ̄  ̄``''‐、、 / \ / ヽ / ヽ / / ~~` '' ‐- 、、 ,,__ __ ,,..、、 -‐ '' "~~\ ヽ | / __  ̄ __ ヽ | .| { ´ ‐- ....__ __... -‐ ` } .| .| 〉,,・^'' - .,, ~ i ~ __,,.- ^`・、.〈 | ./ ̄| /,/~ヽ、 `'' ‐--‐ ,.| 、‐-‐'' "~ _ノ~\,ヽ | ̄ヽ | (` | / ヽ,,_____`‐-、_、..,,___ノ八ヽ___,,.._-‐_'"´___,, ノ ヽ .|'´) | | }.| ./' \二二・二../ ヽ / ヽ、二・二二/ 'ヽ | { | .| //| .| / | |. \ | |ヽヽ| .| .| | .| / | |. \ | | | .| |ヽ.| | / .| |. ヽ .| .|./ .| | .| | / | | ヽ | | / ヽ .| | / .| | ヽ | | / .ヽ.| | / '二〈___〉二` ヽ | |./ | | `-;-′ | | iヽ|. ,,... -‐"`‐"`'‐- 、、 |/i | ヽ /...---‐‐‐‐‐----.ヽ / .| | ヽ. ,, -‐ ''"~ ~"'' ‐- 、 / | .| ヽ ! ./ .| ,,| ヽ. | ./ |、 |\. ヽ / /.| .|. \. ヽ、____ ___/ / .|
472 :
nobodyさん :02/04/07 21:42 ID:XlY3TlqR
17氏スクリプトのVER16なんですが、 i-modeで見たときのread.cgiで、 現在の2chのように前の10レス・次の10レスに対応したいんですが、 教えてください
死ネ
474 :
nobodyさん :02/04/08 12:39 ID:Udb0KNLP
>>474 マイクロソフトやネットスケープにお願いしてください。
なんか、ブックマーク弾ける奴どっかで見たな。でも忘れた。探せ。
>>476 Javascriptでreffererが空白ならそれはブックマーク。
478 :
474 :02/04/08 23:08 ID:5LgVRzDy
480 :
nobodyさん :02/04/09 18:23 ID:10B4imLY
>>474 $ref = $ENV{'HTTP_REFERER'};
if ($ref eq "") { print"氏ねやカス!"\n; }
でどう?
スマソ間違えた $ref = $ENV{'HTTP_REFERER'}; if ($ref eq "") { print"氏ねやカス!\n"; }
482 :
age :02/04/10 21:49 ID:???
age
キーボードのあるボタンを押したり連打したりできるスクリプトってありますでしょうか?
>>483 不可能。
キーボードが勝手に動いたら心霊現象。
>>486 設定項目の適当なところに追加
# 1スレッドの最大記事数
$res_max = 10;
670行目以降にある返信フォームのとこをいじる
# 関連記事出力
print "- 以下は、記事NO. <B>$in{'no'}</B> に関する<a href='#RES'>返信フォーム</a>です -<hr>\n";
$count=0; # ***** この行追加 *****
while (<IN>) {
($no,$reno,$date,$name,$mail,$sub,$com,$url) = split(/<>/);
(このへん省略)
print "<font color=$sub_color><b>$sub</b></font> 投稿者:<b>$name</b> 投稿日:$date $url <font color=$sub_color>No\.$no</font><br>\n";
print "<blockquote>$com</blockquote><hr>\n";
++$count; # ***** この行追加 *****
}
}
close(IN);
続きは
>>488
>>487 の続き
# タイトル名
if ($resub !~ /^Re\:/) { $resub = "Re\: $resub"; }
# ***** ↓ここから *****
if ( $count >= $res_max ) {
print "返信が多くなってきたため、新規投稿で新スレを建ててください。<br><br>\n";
print "<a href=\"$script\">掲示板に戻る</a>\n";
} else {
# ***** ↑ここまで追加 *****
print <<"EOM";
<a name="RES"></a>
print "</td></tr></table></form>\n";
print "</blockquote>\n</body>\n</html>\n";
} # ***** この行追加 *****
exit;
}
#----------------#
# デコード処理 #
#----------------#
おわり
>>487 >>488 ありがとうございました。
感動で涙が止まりません。
本当にありがとうございました。
490 :
nobodyさん :02/04/12 17:54 ID:Rf4zpV9v
492 :
490 :02/04/12 22:29 ID:???
すみません…!見落としていたようです! 完全にこちらのミスです。 お手数をおかけして本当に申し訳ありませんでした。 わざわざ教えて下さってありがとうございました。 これからは初歩的(と言うのもバカバカしい…)ミスをしないように気を付けます…
493 :
nobodyさん :02/04/12 23:00 ID:OHj6Fi0K
494 :
nobodyさん :02/04/13 06:57 ID:a/Dbri8B
>>493 ワードパッドで開くような、でかいスクリプトを改造する気がしない
#---------------------------------------------------------------main
&decode;
&count;
if (-e "$mainte") { &error('メンテナンス中です。しばらくお待ちください。'); }
if ($in{'command'} eq "write") { &write; }
elsif ($in{'command'} eq "reswrite") { &reswrite; }
elsif ($in{'command'} eq "remove") { &remove; }
elsif ($in{'command'} eq "rjump" ) { &rjump; }
elsif ($in{'command'} eq "download") { &download; }
else { &html; }
exit;
#---------------------------------------------------------------html
を、どうにかしたらいいんじゃない?
>493 そんなもん、レスの処理の後に Location で飛ばせばいいだけのことだろ。 >494 きみはプログラミングにメモ帳つかってる初心者だろ。
>>495 まともに答えられないなら無理して書き込まなくて良いんだよ?w
497 :
nobodyさん :02/04/13 14:44 ID:VMPYMAwG
アメリカのCGIの日本語化に挑戦しています。 が、フォームに入力した日本語が、どうしてもうまく表示されません。 cgi-lib.plというのが悪いような気がするのですが…。 これって、定番のライブラリですが、 うまく日本語化する方法はないのでしょうか? やってることは、 require './jcode.pl'; と書いて、 &ReadParse(cgi-binでやる) の後とかその中とかに、 &jcode'convert(*val,'sjis'); と書いたり、いろいろ試したのですが、ダメ。 1週間、ずーといろいろやったのですが、 どうしても、うまく行きません。
>>497 >>1 なお、質問するときは
1)そのスクリプトのある場所(URL必須、拡張子".txt"でアップすればなお良し)
2)どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
を必ず明記しよう。
499 :
nobodyさん :02/04/13 14:50 ID:VMPYMAwG
>>498 cgi-lib.plというのは定番ライブラリで、
定番的処理の方法があるんじゃないかと
思って、質問しているのですが…。
どんなスクリプトにも対応できる
標準的なやり方ってないんですか?
500 :
nobodyさん :02/04/13 14:57 ID:VMPYMAwG
cgi-libのなかに、次のように書いても、 ダメなものですか? # Convert %XX from hex numbers to alphanumeric $key =~ s/%([A-Fa-f0-9]{2})/pack("c",hex($1))/ge; $val =~ s/%([A-Fa-f0-9]{2})/pack("c",hex($1))/ge; # 次の1行追加 &jcode'convert(*val,'sjis'); # Associate key and value $in{$key} .= "\0" if (defined($in{$key})); # \0 is the multiple separator $in{$key} .= $val;
粘着が何かほざいてるよ ププ
503 :
501 :02/04/13 16:14 ID:???
496が494へのレスなら納得なんだがなぁ ちなみに495は俺じゃないぞ
505 :
494 :02/04/13 18:01 ID:???
>>495 そうさ漏れは初心者さ
誰だって始めはそうだろ?
506 :
500 :02/04/13 18:24 ID:VMPYMAwG
>>504 たしかに、表示されました。
ということは、jcode.plは
なんのためにあるんですか?
507 :
504 :02/04/13 19:03 ID:???
>>506 そりゃもちろん、漢字コードを変換するためさね。
>493 r_boardの件 801行の $in{'command'} = 'read'; を削除です >497 r_boardのデコードサブルーチン sub decode { my ($name,$value); &ReadParse; while (($name,$value) = each %in) { if ($name ne "file") { &jcode'convert(*value, "sjis", "", "z"); $value =~ s/\&/&/g; $value =~ s/</</g; $value =~ s/>/>/g; $value =~ s/\"/"/g; $value =~ s/\r\n/<BR>/g; $value =~ s/\r|\n/<BR>/g; } $in{$name} = $value; } }
510 :
500 :02/04/14 04:56 ID:ej0dAZG8
>>508 レスありがとうございます。
初心者なもんで、苦労しましたが、
日本語がうまく表示されない原因は他にありました。
(メタキャラクタをはじくようなサブルーチンがあった。
これで1週間以上ムダにした)
なお、504さんがいうように、
jcode.plなしでも日本語表示できるのですが、
これは、jcode.plは使わなくてもいいということでしょうか?
↑ 無視できない奴
514 :
nobodyさん :02/04/14 14:15 ID:IPbdNQdj
imgboard v1.22 R6ってIP隠せないんですか? 丸見えなんですが。
>>517 こっちはスクリプト改造でしょ?マルチと言われるのは
心外ですな。( ゚Д゚)
520 :
nobodyさん :02/04/14 19:13 ID:SYUFOo/D
>>500 jcode.plなんかいらないよね〜
あれ、なんで必要なのか知ってる人いる?
521 :
520 :02/04/14 19:14 ID:SYUFOo/D
あ、スレ違いか・・・
522 :
500 :02/04/14 21:04 ID:ej0dAZG8
>>520 ほんとにいらないの?
でも、なんか心配。
523 :
507 :02/04/14 21:38 ID:???
>>522 ブラウザから入力された漢字コード(IEならSJISかな。i-modeは
確実にSJIS)を、変換したい(UNIXなら大抵EUC。メールに入れて
送る時はJIS)ときに使うだけで、変換しないなら要らないよ。
524 :
ほほ :02/04/15 09:53 ID:7Ngfgl5F
>>524 デコード処理の近くにある。まず変数を増やせ
$gazou = $FORM{'gazou'};
>>524 記事んとこをこうしろ。
print "<IMG SRC=\"$gazou\"><BR><blockquote>$comment<P>$url</blockquote><hr>\n";
>>524 URL欄のしたに画像フォームを追加。
<tr><td nowrap><b>画像</b></td>
<td><input type=text size="$url_wid" name=gazou value="
http:// "></td></tr>
これでどうだ?
529 :
ほほ :02/04/15 18:38 ID:QFUtae+h
>525さん レスありがとうございます。 >デコード処理の近くにある。まず変数を増やせ デコード処理がどこだか良くわかりません。 >記事んとこをこうしろ 記事のところというのもどこだかわかりませんでした。 結局わかったのは最後だけです。 前後の行なども書き加えてください。よろしくお願いします。
531 :
525 :02/04/15 21:31 ID:rpk7woSO
>>524 さん
ちょっと間違いがあったようです
このままだとエラーが発生することが判明しました。
あと2,3日余裕をくだされば完璧に仕上げさせていただきます。
532 :
ほほ :02/04/15 22:13 ID:5SzFKIQt
>525さん 2.3日でもかまいません。本読んでるんですけど、そこまでたどり着けませんので よろしくお願いします。
534 :
ほほ :02/04/16 20:39 ID:vj/x5Q1y
>525さん CGI実行してみました。ビジュアルはほぼ希望どうりです。 ありがとうございます。 あともう少しわがままを聞いてください。 コメントをスペース1っこで画像を貼り付けていったときに 2重投稿エラーが出ると思います。貼り付けた画像を元に 2重投稿エラーを避ける事はできますか? あとlight.cgiは投稿した後リセット押さないでブラウザでリロードすると すぐに2重投稿エラーになってしまいます。このへんも回避できますか? もし、時間があるようでしたらよろしくお願いします。
>>524 さん
画像は書き込みの度に変えるのですか?
536 :
ほほ :02/04/16 21:38 ID:B2D4dIFX
>525さん はい。毎回違う画像を貼ります。 img src っていうのを毎回書くのが面倒なので できれば画像のとこはURLだけ書き込めばと思ってます。
>>524 さん
<IMG SRC="***">は書かなくてもURLだけで出来るはずですが、、、
それとご希望の修正をして再うpしました。
そちらでテスト願います。
>>524 さん
名前が過去と一緒だと再投稿できないことが判明しました。
これより先はちょっと私には改造できないかもしれません。
ここまでが私の限界です。
540 :
ほほ :02/04/16 23:30 ID:ji+16LdM
>525さん やって見ました ブラウザ窓2つ開けて交互に貼り付けて交互に リロードすると前貼ったやつを貼ってしまいます。 とりあえず当初の希望はできましたのでありがとうございました。 お時間がありましたら、よろしくお願いします。
「情報を再送信しないと ページを更新できません」ってやつだろ? それは回避不可。 掲示板自身にリンクはって「リロード」とか書いときなさい。
>>542 さん
あ〜そのテがあったか、
メソッドがPOSTだとそうなるんだよね
544 :
nobodyさん :02/04/17 19:35 ID:pUwmOFzd
http://sk.redbit.ne.jp/~tboard/cgiroom.html の
TBOARD004 と TBOARD006 を使っているのですが・・・
鯖屋さんから『CPU占有率90%Over』と言われCGIの停止命令をうけました。
数種類のCGIチェッカーでチェックしてみたのですが、これといって問題はありませんでした。
デザイン/機能的にお気に入りのCGIなので・・・
CPU占有率が軽減できるように最適化(と言うんですかね?)していただけない
ものでしょうか?
よろしくお願いします。
>>544 余談だけど、UNIXでアクティブなプロセスが1こしか無い場合、
そのプロセスのCPU占有率は限りなく100%に近づくものです。
また、複数のプロセスがアクティブな場合、特別なことをしなければ、
各プロセスが均等に占有します。
なので、CPU占有率90%Overと言われても、「あたりまえじゃ!」としか
言いようがありません。鯖変えたほうがいいかも。
546 :
544 :02/04/17 20:38 ID:???
>>545 さんご指摘の通りだと思います。
板違いなのですが・・・
鯖屋さんに言ったんですよ・・・『んじゃ、引っ越せってことですか?』と。
月1,2回はもめるんですよ。対応(っていうかってメールの内容)もムカツクし・・・
何時も(偽装)ヒラ謝りをしながら気を使うんですよね。
契約も残ってるし自ら出て行くのも納得いかないし
よさげな鯖屋さんも見つからないし・・・
print "負けたくないんですよ!鯖屋に!";
でもPerlはprint分位しかわからない。ので
547 :
544 :02/04/18 00:15 ID:DhPOYyDw
ああああああ・・・スクリプトファイル削除されちゃった。 同じような掲示板CGIはあるが…あのCGIでないとコンテンツがしっくりこないんだよ。 サイトの中ではあのCGIが生命線だし今までのカキコ内容は宝なんだよ。 まじで最適化キボンヌ。新コードで再チャレンジしたいんだ。 Webprog板住人さん鯖屋さんにリベンジさせてください。 まじ宜しくお願いしますわ。
>544 掲示板CGIでそう負荷がかかるとは思えない。 アクセスが万単位であったり大量の書き込みがあったり改造してたりするのでなければ いちゃもんつけられてるだけと思われ。
>>548 CGI素人の後輩が組んだ掲示板CGIはなぜか異様に重かった。
恐らく無駄なデータに対して無駄なループがあったんだろう。
551 :
nobodyさん :02/04/18 20:47 ID:Xv+8+6gt
552 :
nobodyさん :02/04/19 19:26 ID:3rqw4z8c
>>552 1.の質問はperlでは無くHTMLの改造だな<INPUT TYPE="text">を<TEXTAREA>にしなさいな
ただし改行コードを削除している可能性があるので文字列置換を削除しなければならないかも、、、
投稿やレスの頭につく数字はスカラー変数を削除しなさいな
554 :
552 :02/04/20 07:35 ID:ilcuvKZu
「<INPUT TYPE="text">を<TEXTAREA>にしなさいな」がいまいちよくわかりません。 色々やったのですが上手くいかないので、もう少し詳しく教えてください。 「文字列置換を削除」についても…。 ごめんなさい。
>>552 1)
547行目の<input>を667行目の<textarea>ように。
改行処理はされてるみたい(1133行目)。レイアウトは適当に調整してちょ。
2)
タイトル:521行目 \[$temp2[0]\] を削除
レス: 469行目 \[$temp1[0]\] を削除
$temp1とか$temp2とかは止めてホスィ…
556 :
553 :02/04/20 10:49 ID:???
>>552 せめてHTMLが分かるようになってからここに来なさいな
557 :
心優しい553 :02/04/20 13:26 ID:7YSAp/x0
558 :
552 :02/04/20 13:44 ID:Hi5ZuXLw
>>555 547行目とか1133行目とか言われて、また困ってしまいました。
エディタは何を使ってらっしゃるんでしょうか???
>>556 ごめんなさい。HTMLはちょっとしか分からないのにまた来ちゃいました。
レスを書くボックスを
<TEXTAREA NAME="res" ROWS=2 COLS=50 WRAP=off class="input"></TEXTAREA>
っていうデザインに変更させたいんですよ〜。ボックスの中の色はデフォルトのままで。
どなたかお暇でご親切な方、書き加えるもの、書き加える場所、消すもの等
手取り足取り教えてください。お願いしますm(__)m
何度も何度もすみません。
559 :
552 :02/04/20 13:47 ID:Hi5ZuXLw
あわわ、書き込んだら心優しい方が現れた!
>>553 どうもありがとうございました。
見させてもらいます。
>>552 <TEXTAREA NAME="res" ROWS=2 COLS=50 WRAP=off class="input"></TEXTAREA>
へは自分で改造してね
まぁ、この漏れも1年前はHTMLの知識なんてほとんど無かった、、、
いろんなスクリプトを自分で改造していきながら知識を付けて逝ったので
君も頑張りたまえ。
>560 しつこい! 親切ぶりやがって。 ソースはもらったからもう用はないねー。
>>558 ってか、行数を表示できないエディタってなによ?
メモ帳?
改行前に折り返しがあるとそれで2行扱いになるエディタとか。
あげ
566 :
nobodyさん :02/04/25 12:53 ID:DUGv6Dx1
こちらには初めてやってきました
perlはまったく未知の世界ながら、見よう見真似でいじっています
フリーのCGIをほんのちょっとだけ
カスタマイズしよう(選択項目を増やそう)と奮闘中なのですが
よくわかりません
ネットサーフレスキューさん
ttp://www.rescue.ne.jp/の 「ゲストブック」なんですが
今ある記入項目に加えて、たとえば誕生日とか出身地とかも
出力できるようにするには、どうしたらいいんでしょうか
基本のままなら設置、動作は確認済みです
567 :
566 :02/04/25 12:58 ID:???
追記 項目の入れ替えは可能なんですが、増やすことができません 下手にいじると変数名と値がずれて出力されてしまうんです ご教授お願いします
>>566-567 # index.html 適当なところに
<tr>
<th nowrap bgcolor="#ff5555">血液型は?</th>
<td nowrap bgcolor="#5555ff"><select name="bloodtype" size=1><option value="" selected>未選択<option>A型<option>B型<option>AB型<option>O型</select></td>
<th nowrap bgcolor="#ff5555">出身地は?</th>
<td nowrap bgcolor="#5555ff"><select name="hometown" size="1">
<option value="" selected>未選択
<option>北海道<option>青森<option>秋田<option>岩手<option>宮城<option>山形<option>福島<option>栃木
<option>新潟<option>群馬<option>埼玉<option>茨城<option>千葉<option>東京<option>神奈川<option>山梨
<option>長野<option>岐阜<option>富山<option>石川<option>静岡<option>愛知<option>三重<option>奈良
<option>和歌山<option>福井<option>滋賀<option>京都<option>大阪<option>兵庫<option>岡山<option>鳥取
<option>島根<option>広島<option>山口<option>香川<option>徳島<option>愛媛<option>高知<option>福岡
<option>佐賀<option>大分<option>熊本<option>宮崎<option>長崎<option>鹿児島<option>沖縄<option>日本以外
</select></td>
</tr>
# regist.pl 25行目
print DB "$date_num\t$date_now\t$FORM{'name'}\t$FORM{'email'}\t$FORM{'sex'}\t$FORM{'address'}\t$FORM{'bloodtype'}\t$FORM{'hometown'}\t$FORM{'age'}\t$FORM{'access'}\t$FORM{'homepage'}\t$FORM{'comment'}\t$HTTP_USER_AGENT\t$host\n";
# regist.pl 50-58行目の適当なところに以下の2行追加
&jis("血液型: $FORM{'bloodtype'}"); print OUT "$msg\n";
&jis("出身地: $FORM{'hometown'}"); print OUT "$msg\n";
# search.pl 80行目
($num,$date,$name,$email,$sex,$address,$bloodtype,$hometown,$age,$access,$homepage,$comment,$agent,$host) = split(/\t/,$select);
# search.pl 94-100行目の適当なところに以下の2行追加
if ($bloodtype ne '') { print "<li>血液型 $bloodtype<br>\n"; }
if ($hometown ne '') { print "<li>出身地 $hometown<br>\n"; }
血液型じゃなくて誕生日か。めちゃめちゃボケてた、、、 # index.html <th nowrap bgcolor="#ff5555">血液型は?</th> <td nowrap bgcolor="#5555ff"><select name="bloodtype" size=1><option value="" selected>未選択<option>A型<option>B型<option>AB型<option>O型</select></td> の変わりに <th nowrap bgcolor="#ff5555">誕生日</th> <td nowrap bgcolor="#5555ff"><input type=text name="birthday" size=30></td> # regist.pl 25行目 $FORM{'bloodtype'} の変わりに $FORM{'birthday'} &jis("血液型: $FORM{'bloodtype'}"); print OUT "$msg\n"; の変わりに &jis("誕生日: $FORM{'birthday'}"); print OUT "$msg\n"; # search.pl 80行目 ($num,$date,$name,$email,$sex,$address,$bloodtype,$hometown,$age,$access,$homepage,$comment,$agent,$host) = split(/\t/,$select); の変わりに ($num,$date,$name,$email,$sex,$address,$birthday,$hometown,$age,$access,$homepage,$comment,$agent,$host) = split(/\t/,$select); if ($bloodtype ne '') { print "<li>血液型 $bloodtype<br>\n"; } の変わりに if ($birthday ne '') { print "<li>誕生日 $birthday<br>\n"; }
571 :
566 :02/04/25 19:06 ID:???
>568 できました!ありがとうございます! しかもindex.htmlまで追加してくださって・・・ 恐縮です ところで怖くて確かめていないんですが、 search.pl80行目とregist.pl 25行目の配列順序は 必ず同じでないといけないんでしょうか ・・・いけないんですよね とりあえず570のサイトを熟読してまいります 本当に本当に助かりました!
572 :
:02/04/25 22:01 ID:???
apeboardとかで、2つの改行を<P>にするにはどうすればよいですか?
apeboard+ Ver.1.04 なら apeboard_plus.cgi の 107行目 $message =~ s/\r/<br>/g; の下にでも $message =~ s/<br><br>/<p>/g; を追加かな
574 :
nobodyさん :02/04/26 22:59 ID:hL3nAspR
575 :
574 :02/04/26 23:01 ID:???
× 記事のすぐ下の ○ 記事のすぐ下に
>>574 bbs.htmlにフォームを追加して、それに対する処理を変えてやればいいんじゃない?
基本的には
>>568-569 とやることは同じだと思うが。。
574<< uho!氏が改造したものを参考にしたらどうだ?
578 :
nobodyさん :02/04/28 00:31 ID:okfAtolN
stlfbbsの事で質問させてください。
ファイル配布元(txtが無かったです)
ttp://www.blk.mmtr.or.jp/~stlf/softwares/ 投稿者のURLへ画像でリンクさせたいんです。(デフォルトはテキストリンクです)
stlfbbs.cgiの120行目
$s_url = '(<A HREF="' . $s_url . '" TARGET="_top">URL</A>)';
を
$s_url = '(<A HREF="' . $s_url . '" TARGET="_top"><img src="gazou.gif"></A>)';
128行目の
$inline =~ s/\(URL\)<!--s-->/$s_url/i;
を
$inline =~ s/\(<img src="gazou.gif">\)<!--s-->/$s_url/i;
としたのですが、どうもうまくいきません。
「画像にリンク」自体は出来たのですが、画像が表示されないんです。[×]←コレになります。
cgiディレクトリから別ディレクトリの画像を呼び出すために「
http://-- 」、「./」などを書いてみましたがCGIエラーが起きてしまいます。(「/」が使用不可?)
cgiディレクトリ自体に画像を置き、呼び出そうとすると[×]になります。
stlfsput.htmlの方をいじってみましたがやはりダメでした。
(URL)を(<img src="
http://--/gazou.gif ">)とすると、画像は表示されますが、リンクされません。
(<img src="1s.gif">)とすると、画像は表示されませんが、リンクは出来ます。あぁ・・・。
書き換える場所は間違ってないと思うのですが、画像を呼び出す記述が理解できてないみたいで・・・。
この場合、どうしたら解決できるのでしょうか?ヒントをお願いします。
画像はcgiと同じディレクトリ? src="./gazou.gif" とかで試してみて。
580 :
578 :02/04/28 00:58 ID:???
>>579 レスありがとうございます。
>src="./gazou.gif"
今もコレと同じような記述をいくつか試していたんですが、ダメでした。やはりエラーがおきます。
もちろん同じディレクトリ内に置いてあります。
そもそもcgiディレクトリにある画像は呼び出せないんです。
アドレスに直接書き込むと「Forbidden 回覧出来ません」になってしまうんです。(@ニフティです)
>>578 >>580 いじるのはstlfbbs.cgiの120行目だけでいいよ
$s_url = '<A HREF="' . $s_url . '" TARGET="_top"><img src="gazou.gif" border="0"></A>';
stlfbbs.cgiの128行目は $inline =~ s/\(URL\)<!--s-->/$s_url/i; のままで。
これはstlfsput.htmlの (URL)<!--s--> の部分を $s_url と置換するって命令だから
ここまでいじっちゃうとアウト。
ニフティでサーバーがわかれてるんだったら
$s_url = '<A HREF="' . $s_url . '" TARGET="_top"><img src="
http:// 〜〜〜/gazou.gif" border="0"></A>';
>578 ネタはよせ! >579 そのアホさは、Dream ★ だろ!
583 :
578 :02/04/28 01:24 ID:???
>>581 レスありがとうございます。
指摘して頂いた所を直してみたら、エラーも無く画像も表示されるようになりました。
が!リンク出来ませんでした・・・。
新しくDLし直して必要箇所だけをいじってみましたが、リンクしてもらえなくて・・・。
でも画像表示出来たのはかなり大きいです。ありがとうございました。
後少し・・・どこなんだろ。
>>582 ネタ?マジ質問だぞ。
>>583 できあがったhtmlソースはちゃんとなってるの?
ちゃんとなっててリンクされないんならブラウザの(以下略
585 :
578 :02/04/28 01:32 ID:???
>>584 アドバイスありがとうございます。
htmlはちゃんとなってるはずです・・・多分。
cgiの方を<img src="gazou.gif" border="0">としたので、
htmlの方も<img src="gazou.gif" border="0"><!--s-->としてありますが・・・心配です。
ちょっといじってみます。
実はgazou.gifが無かったという罠。
>>585 あのさ
>>581 の書き込みよく読んでくれてる?
そんなにわかりにくい書き方してないと思うんだけど、、、
+ いじるのはstlfbbs.cgiの120行目だけ +
stlfbbs.cgiの128行目は $inline =~ s/\(URL\)<!--s-->/$s_url/i; のまま。
ログ部分のテンプレhtmlの stlfsput.html で
URLを挿入したい部分も (URL)<!--s--> のままです。
588 :
585 :02/04/28 01:45 ID:???
>>587 >>581 の書き込みの意味を勘違いしてました。
htmlの(URL)まで変えてしまったのがいけなかったんですね。
ありがとうございました。おかげでリンク出来るようになりました。
あともう一息・・・。
589 :
585 :02/04/28 16:35 ID:okfAtolN
590 :
585 :02/04/28 22:08 ID:???
自分で何とか解決できました。レス無駄に消費してすみません。
>>591 (1) 掲示板のフォームのname="hoge"の部分を統一する。hiddenも考慮する。
(2) ログの並び順を統一する。
(3) 1.2.にあわせて変数名等を全て変更する。
難しくないが面倒臭い。
スクリプトのソースがないから判る事はこれくらい。
別にソース出しても俺はやらないけど。
ょぅι゛ょ精製サブルーチンお願いします…
595 :
nobodyさん :02/05/02 04:54 ID:2Oqc4hmQ
>>595 なるほど。簡単に出来そうだね。しかし僕は↓のほうの改造に興味があるので
誰か他の人頼みます。
>>596 おもしろそうですね。ジャバスクリプトのイベント処理を使って
改造してみたいと思います。
一週間待って音沙汰が無かったら忘れられたと思ってあきらめて下さいw。
>>595 なんかさぁ、1chの×が3つ溜まったらあぼーんを思い出したよ。
もう少しシステム練らんとろくなことにならんよ。
>>597 了解しました。本当にありがとうございます
>>601 様
寝る前に覗いてみたらもうやってくれたんですかぁ!
いやぁ、すごい感謝デス。本当に、ありがとうございますネ。
もちろんかなり大事に使います。また言いますが、、本当アリガトございます
604 :
nobodyさん :02/05/03 10:30 ID:I3/fkiRQ
>>603 作者より
喜んでいただけて光栄です。
サポート文はそこを参考にさせてもらいます。ありがとうございます。
それと、お馬鹿さんな事にCGIに自分の著作権表記をいれるのを忘れていました。
貴方のスクリプトのどこにでもいいですから、僕のHPのURLとY.K.Studioが
改造しましたという旨を、表記下さい。よろしくお願いします。
ウゼえ消えろ
∧_∧ _ _ .' , .. .∧_∧
( ´_ゝ`) _ .- ― .= ̄  ̄`:, .∴ ' (
>>6 )
/ '' ̄ __――=', ・,‘ r⌒> _/ /
/ /\ / ̄\-―  ̄ ̄  ̄"'" . ’ | y'⌒ ⌒i
_| ̄ ̄ \ / ヽ \_ | / ノ |
\ ̄ ̄ ̄ ̄ ̄ ̄ \__) , ー' /´ヾ_ノ
||\ \ / , ノ
||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄ / / /
|| || ̄ ̄ ̄ ̄ ̄ ̄ ̄|| / / ,'
|| || || / /| |
!、_/ / 〉
∧_∧ 死ね
_( ´_ゝ`)
/ ) _ _
/ ,イ 、 ノ/ ∧ ∧―= ̄ `ヽ, _
/ / | ( 〈 ∵. ・( 〈__ > ゛ 、_―
| ! ヽ ー=- ̄ ̄=_、 (/ , ´ノ
| | `iー__=―_ ;, / / / ←
>>04 !、リ -=_二__ ̄_=;, / / ,'
/ / / /| |
/ / !、_/ / 〉
/ _/ |_/
ヽ、_ヽ
607 :
604 :02/05/03 10:35 ID:???
ごめんなさい。sage忘れました。。回線切って反省してきます。
ついでにずるぼんのことなのだが
元々のファイル数制限ではなくて総計何SIZEになれば削除という機能を
加えて欲しいのだが。
>>601 予想以上に好評でした。ありがと。ただなぜかinfoseekにあぷろだ置いてるのだけど
たまに全部ファイルが削除になる。/source/ファイルには残ってるのだけど。
自分の設定が悪いのからかもしれないが
612 :
611 :02/05/04 01:06 ID:???
やっぱり直ってないみたい。なぜか板に表示されないのに sourceファイルには残ってる
>>610 改造版作者より
ちょっとファイルの排他処理が甘かった模様です。スイマセン。
今から強化します。Ver0.2を使って見てください。
ずるぼんあぷろだ改造版作者より
>>610-
>>613 とりあえず申し訳無いのですがsubupload.cgi Ver0.2を作成しましたので私のHP(
>>601 )からDLして
置き換えてもらえないでしょうか?それとパーミッションは755よりも777が望ましいです。(フォルダとスクリプト)
スクリプトを安定させるコツ
・出来ればパスワード、カウンター、FTP転送などのおまけ的な機能を使わない。
>>608 ずるぼんさん本人に聞いてみてください。
>>610 暇があったら改造してみます。ただ今現在はデバッグで手一杯なので。。
>>615 著作権消してもいいですかー?
あれは僕への朝鮮ですね。
617 :
613 :02/05/04 18:54 ID:???
>>615 早い対応と説明大変ありがとうございます。あなたのスクリプト使ってよかったです。
これからもよろしくお願いします
618 :
613 :02/05/05 00:22 ID:???
Ver.3入れてみたところ快調でした。 それとわざわざHPへのご報告ありがとうございます。
619 :
613 :02/05/05 03:37 ID:???
う〜ん・・。また時間経つとsourceファイルに残ったまま板に表示されません
>>601 10??????.tempみたいな感じのがsourceフォルダの中に
たまにできます。あと出来たらHPに板置いてくれませんか?
621 :
nobodyさん :02/05/08 05:59 ID:Nv6MjGlg
ソース出せ
>>601 また板のファイル表示吹っ飛びました。。
5使ってたんですが
エキサイトチャットのJAVAアプレットのソース落としたいんだけど どうすれば良いですか?
628 :
:02/05/10 21:24 ID:???
>>625 口の利き方がむかつく。
誰か改造できるって?スキルも無いくせに、、、。
>>629 そう書くと君のほうがスキルを鼻にかけるDQNだと思われてしまう罠。
腹が立ったなら放置しとけ。
631 :
:02/05/10 22:27 ID:???
>>625 4415って名前欄に入った厨房がWEB製作板でもなんだか的外れな
アホな発言してたな。こりゃ放置で>ALL
ちなみにこの場合改造するのは普通YYBBSじゃない方。
って言えばむちゃくちゃ簡単なのはわかるだろうがなw
>>626 アプレットならHDDの中にキャッシュとして残ってると思うよ。
そこから先はJAVA関係のサイト巡れば…。
>>633 テンポラリーファイルの中ですか?
ありがとうございます。早速、見てみます。
635 :
nobodyさん :02/05/12 08:18 ID:k99BTwzt
unless ($noage) { print "/$age歳\n"; } else { print "/秘密\n"; } print <<"HERE"; /$max] <BR>[$risou] 希望/$hoop <BR>[メッセージ] <BR><FONT color="$word_color">$comment</FONT> ―――――――――――――――――― この場合HTMLでソースを見ると [○○県 ○○歳 **通 ] <BR>[メッセージ] <BR><FONT color="$word_color">****************</FONT> と、なりますが上の4段 "[" から "]" までスマートに一段でソースを吐くことは 出来ないでしょうか?表示上は問題ないのですがちょっと気になるもので…
636 :
nobodyさん :02/05/12 08:20 ID:k99BTwzt
>>635 すみません頭の方が切れてましたね
下の場合ですが
print "<BR>[$street\n";
unless ($noage) { print "/$age歳\n"; }
else { print "/秘密\n"; }
print <<"HERE";
/$max]
<BR>[$risou] 希望/$hoop
<BR>[メッセージ]
<BR><FONT color="$word_color">$comment</FONT>
――――――――――――――――――
この場合HTMLでソースを見ると
[○○県
○○歳
**通
]
<BR>[メッセージ]
<BR><FONT color="$word_color">****************</FONT>
と、なりますが上の4段 "[" から "]" までスマートに一段でソースを吐くことは
出来ないでしょうか?表示上は問題ないのですがちょっと気になるもので…
>>595 荒らしが3人で入ってきて普通にチャットしてる人を次々と落とすという
新たな荒らし方法が出てくると予想してみる
640 :
nobodyさん :02/05/13 20:10 ID:0X8BIqsG
突然すみません。掲示板の改造をお願いします。
http://www.kent-web.com/bbs/aska.html 現在KENTWEBさんの「ASKA BBS」を使用しています。
これを、指定した時間以外は掲示板を表示しないようにしたいです。
例えば8:00〜17:00は「この時間は利用できません」とか
エラーメッセージが出るようになればいいなと思ってます。
お忙しいとは思いますがよろしくお願いします。
642 :
631 :02/05/13 22:12 ID:???
やっぱりかなり難しい改造なのでしょうか・・・・
>>642 実際にその掲示板のややこしい動きとやらを見せてくれたらわかるかもしれんが。
まさかリンクミスとかじゃないよな。
あと、4000行を超えるスクリプトを追うのは激しく面倒。暇な人を待て。
>>643 普通の人は1000行超えてたらもうぐったりだと思われ
漏れは30行以上でぐったり
646 :
nobodyさん :02/05/14 07:30 ID:vNEin2BE
先日635で、お世話になりました。後から考えると単純な質問したとちょい反省中です。
でっ・・また 皆さんの力を貸してください。
掲示板なのですが、投稿した時に投稿者のブラウザー機種を表示させたいのですが
HTTP_USER_AGENTだけだと「Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)」
と、表示されます。これを簡単に「MSIE 5.5」携帯だと「N 503」みたいにしたいの
ですが、どのように付け加えたら良いのか教えて頂けませんか。
それともう1つですが
投稿者の一覧で次のページに進む場合プルタウンメニューで選んで進むようなのですが
これを「次ページ=リンク」に簡単に変更する方法があるのでしょうか?
これがそのCGIです(txt)↓
http://kirazoo.tripod.co.jp/b/deai.txt ちょっと手を加えていただきたいイメージです↓
http://kirazoo.tripod.co.jp/b/index.html ぜひ、よろしくお願いします。
647 :
:02/05/14 12:38 ID:???
648 :
nobodyさん :02/05/14 21:46 ID:7mUBcsur
>>647 ma_lib.plを見ても全然わかりませんでした。
やっぱ、単純なものもわからなければここに来る資格なしですか?
もう少しがんばって見ます。アドバイスありがとうございました。
>>648 カウンタを作れないとここには来てはいけません
>>646 if ($ENV{'HTTP_USER_AGENT'} =~ /MSIE 5\.5/) { $ENV{'HTTP_USER_AGENT'} = "MSIE 5.5" ; }
652 :
nobodyさん :02/05/15 03:52 ID:1tDJvwWS
>>651 それじゃ MSIE 5.0が来たときにまた同じ質問をしにくるべ
>653 あとは応用してくれってことでそ
>>654 おそらくそれすら改造できない厨だと思われ
(´-`).。oO(…れべるひくい…)
657 :
:02/05/15 10:43 ID:???
(´-`).。oO(それなりの人はそれなりのやることあるから正直かまってられない・・・)
(;´Д`)条件判断とスカラ変数くらい覚えてから改造してくれって頼めよ
判断つーより分岐じゃないの? 考えてる訳でなし。
FFAをi-mode用にしたいけどわかんないよぉぉぉ
661 :
:02/05/16 14:41 ID:???
>>660 ならi-mode対応にした改造版を使え
662 :
nobodyさん :02/05/17 04:26 ID:hDQ9yjaZ
このスレで質問していいかなー?? あっ!いいですか。では、これなんですが @###---投稿処理-----### <input type="checkbox" name="sendtime" value="1">夜間メール拒否(22-7時)<BR> A###---メールのエラー処理------### if($sendtime){ if ( 22 < $hour || $hour < 7 ){ &error("夜中メールお断り"); } } B###---観覧処理------### if($sendtime){print "夜間メール拒否中\n";} ///////////////////////////////////////// この場合。@でチェックを入れAで該当するものは、BでプリントされますがこれをAで指定した時間だけプリントするにはどーすればいい? 簡単に言えば、ローカルの時間が 22〜7時メール拒否中を表示 8〜21時何も表示しない 優しく、わかりやすく教えて下さいませ。
$ENV{'TZ'} = "JST-9"; ($sec,$min,$hour,$mday,$mon,$year,$wday,$dmy,$dmy) = localtime(time);
>>664 ハァ?なんだその態度は。糞厨房はもうこなくていいよ
667 :
nobodyさん :02/05/20 23:46 ID:O0KKTX9E
668 :
nobodyさん :02/05/21 23:41 ID:Yhiz/uIl
17氏スクリプトでi-modeからもスレ立てできるよう、改造したいんですが どこをなおせばいいでしょう?
>>669 頻繁にファイル更新しないなら、cgiなんぞ使わない方が環境に優しい。
どうしても24時間でやるなら、
$today = "$month月$mday日";
⇒$today=sprintf("%02d%02d",$month,$mday);
if($today ne "$month月$mday日")
⇒$filedates=sprintf("%02d%02d",$month,$mday);
if($today == $filedates || $today -1 == $filedates)
で逝けそう(ぉ
671 :
nobodyさん :02/05/22 09:43 ID:nSs6layR
>670 ありがとうございます。 用途はトップページに掲示板や本人登録型リンク集などcgiの 最終更新時間を表示したいと考えていたのです。
672 :
669 :02/05/22 09:52 ID:???
>670 すいません。 さっそく設置してみたのですが更新日時に関係なく ランダム(のように基準がわからないのです)で 「更新されました」と出てしまいます。
単に日付を数値化しただけだからね。だから、「逝けそう」と書いたのに…
674 :
ken :02/05/23 01:29 ID:TLsld2En
675 :
nobodyさん :02/05/23 01:49 ID:Ygb2ii6b
>>669 こんなのはどう?
-------
#!/usr/bin/perl -w
use strict;
my $dirname = './';
my $interval = 24 * 60 * 60;
my $now = time;
print "Content-type: text/html\n\n";
print <<HTML;
<html><body>
HTML
opendir(DIR, $dirname) or die;
while (defined(my $file = readdir(DIR))) {
next if $file !~ /\.(htm|html)$/;
my $mtime = (stat $file)[9];
my $updated = '更新しますた' if ($now - $mtime < $interval);
my $date = localtime($mtime);
print <<HTML;
$file $date $updated<br>
HTML
}
print <<HTML;
</table>
</body></html>
HTML
下から3行目の</table>は消し忘れ
KENTWEBで配布しているWEBTLK(HTMLチャット)を改造したいのですが。 入室後の文字色指定をプルダウンメニューではなくラジオボタンで選択するようにしたいんです。 あ、関係ありませんがKENTさんの改造スクリプトを扱っていた「さとの部屋」と「another place」ってどこに行ったんでしょう。知っている方が居たら教えてくれませんか?
680 :
:02/05/24 19:08 ID:???
681 :
df :02/05/24 20:18 ID:9eTMj/b7
-------風俗の総合商社・MTTどこでも-------
〇デリバリーヘルス〇デートクラブ〇女性専用ホストクラブ〇
〇ハードSM奴隷クラブ〇レズビアン倶楽部〇ホモ・オカマ倶楽部
〇変態痴女と遊ぶ会〇痴漢・覗き趣味の会〇変態同好会・各種!
●楽しく遊べます! 090-8002-8356番
-----------美男・美女会員など多数在籍中-----------
http://www.mttdocomo.jp/ -----女性アルバイト随時募集・高収入(日払い)月100万円可能-----
-----レズビアン・スタッフ●ホモスタッフ●女性専用ホストスタッフ同募-----
http://www.mttdocomo.jp/ ------------------------------------------------
682 :
nobodyさん :02/05/24 22:07 ID:PSoFhpNb
http://k-server.org/tekitou/collect.txt キーワードを持たせてGoogleに放り込み、出てきたアドレスのページの中の
imgタグの中からアドレス取ってダウンロードしようとしてるんだけど、
なんか、一個見つかると他のアドレスで探索したときも
同じパスでダウンロードしてしまうのですが原因わかるかたいますか?
(要するにAページで/image/a.gifと見つかるとBのページでも存在しないのに/image/a.gifで処理しようとする。)
684 :
nobodyさん :02/05/25 15:11 ID:kHc1b+7M
>>684 return ($user_agent,$terminal,$t_sy,$t_name,$t_color,$t_mime);
↓
return ($user_agent,$terminal,$t_sy,$t_name,$t_color,$t_mime,$ENV{'REMOTE_HOST'});
686 :
684 :02/05/25 20:52 ID:BoqWmaHN
>>684 そのアクセス解析ってUA別の解析するものだったと思うけど。
ホスト情報ってどういう意味で言ってるの?
688 :
うじゃぱぁ〜 :02/05/26 00:16 ID:owhpWvq3
(^o^)/~~~bye bye
690 :
nobodyさん :02/05/26 11:12 ID:f4yr64/R
>>688 $ENV{'REMOTE_ADDR'}取得して禁止すれば?
>>690 「二重投稿」だから、投稿メッセージの内容、ログの内容、IP or リモホで判定するんじゃないの?
>>691 ケータイ人間は?それに、必ずしもコピペ(キャッシュ)内容を再送するとは限らない
無難にワンタイムパス発行しては?
>>必ずしもコピペ(キャッシュ)内容を再送するとは限らない それじゃあ2重投稿じゃないじゃん
>694
禿しく初心者と自分で言うくらいだったら、CGIの改造は止めた方が良いと思われ。
「初心者」という言葉を免罪符のように使われると鬱陶しく感じる人が多い。
とりあえず、テキストエディタでCGIを開いて、最初から最後まで読んでください。
ttp://tohoho.wakusei.ne.jp/wwwperl.htm が参考になると思われ。
//asuka.cgi
◎238行目くらいに
<tr>
<td><b>趣味</b></td>
<td><input type=text name=hobby size="$f_name" value=""></td>
</tr>
と追加。
◎335行目くらいからの「書きこみ処理」の中。特にunshift
この辺りを重点的に読んでみなさい。
上に書いたURLを参考にしながらasuka.cgiを読んでも分からない様だったら
質問スレで聞いてみる。くれぐれも「初心者だから・・・」という言い回しは禁物。
と、答えになって無さそうなのでsage
696 :
695 :02/05/28 10:09 ID:???
>688-693 KENTのasuka.cgiを読んだら、名前と内容(本文)で重複投稿をチェックしている。 if ($in{'name'} eq $name && $in{'comment'} eq $com) { &error("二重投稿は禁止です"); }
697 :
補足 :02/05/28 10:10 ID:???
↓忘れ物 ($no,$date2,$name,$mail,$sub,$com,$url,$host2,$pw2,$time2) = split(/<>/, $lines[0]);
今だ!700番ゲットォォォォ!!  ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ∧∧ ∧∧ ドドドドドド・・・・ (゚Д゚ ,,) (゚Д゚ ,,) ∧∧ (´´ ⊂_⊂V⊂ ⊂ )⊂(゚Д゚ ,,)_/(´´ Y /⊃ | .L⊃∧∧∪ _⊃(´⌒(´ ドカ ∪∧∧J⊂(x _x⊂ノ(´⌒(´ (´´ ドカ ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡ ズザ・・・
701 :
nobodyさん :02/05/29 20:11 ID:xJVqUtLc
>>701 QUERY_STRINGの分離部分にbbs=0時の分岐を刺しては?
704 :
703 :02/05/31 00:09 ID:bVzYO4Pw
$bbs = $in{'bbs'}; とか使えば?
705 :
nobodyさん :02/05/31 04:12 ID:tYW7BBAL
お気に入りの掲示板のスクリプトに画像アップローダーの機能を付け加えたいのですが… これこれ・この部分を付け加えれば画像アップ出来るよ! というのを教えてください! 変数名くらいなら自分でも書きかえれますので、 そこらへんはお気を使ってもらわなくってもいいですYO! よろしくおねがいします。
>>705 <input type="file" name="name">を加える
>>705 <form method="post" action="お気に入りのスクリプト" enctype="multipart/form-data">
>>707 に付けたし
<input type=file>
</form>
cgi側の処理についてはアップ機能付きのCGIソースを解析しれ。
709 :
由芽 :02/06/01 21:03 ID:???
>>$bbs = $in{'bbs'}; これってどういういみ?
710 :
由芽 :02/06/01 21:05 ID:???
↓ネタにマジレスカコワルイ
711 :
nobodyさん :02/06/02 16:32 ID:DhpOMnbM
掲示板で入力した項目が一個だけログに記録されない(;´Д`)
712 :
nobodyさん :02/06/02 17:21 ID:6HwbG/cr
教えてくださいっ! JavaScriptでの共通処理を切り出し、別ファイル(**.js)に記述しました。 Servletから上記のファイルどもを呼び出したときに、 jsファイルがない(FileNotFound)と怒られてしまいます。 なにか設定が必要なのでしょうか? おバカな質問でごめんなさい。
>713 サラブレット
715 :
715 ◆aZaelUQo :02/06/05 19:35 ID:IAdO/kZL
>>715 ケータイ用アンケートは他の既存スクリでも可能では?
以下、このスクリで変更すべきモノ
削るルーチン:SetCookie/CookieCutter
修正すべきルーチン:form_html/result_html/error
他にも適宜
717 :
715 ◆aZaelUQo :02/06/06 13:37 ID:mVD0oUeN
>>716 レスありがとうございます。
携帯用のアンケートは色々あったんですが、
質問を増やしたり削除したりするのをブラウザで行うタイプだったり、
質問を複数出来ないタイプだったり、投票結果が別ページではなかったりと
私の理想のアンケートとはどれも違うもので、一番近いのがこれかなと思って紹介したのですが。
(私の探し方が悪いのでしょうか・…?)
その削るルーチンと修正すべきルーチンはCookeiをoffの状態で投票出きるようにする修正ですよね?
ありがとうございます。後で試してみます。
718 :
715 ◆aZaelUQo :02/06/06 18:00 ID:mVD0oUeN
715です。 716さんが教えてくれたポイントを削ったりしてみたのですが 今度はCookieをonの状態でも投票出来なくなってしまいました。(もう元に戻しましたが…) 修正すべきルーチンというのがどう修正するのかがわからなくて困っています。 まだ他にも変更点があるらしいですし… もう、二つ目のアンケートに投票した後に軽い画面を表示したいと言ったのは無視して結構です。 Cookieをoffの状態でも投票出来るようにする事だけで結構です。 教えて頂ける方がおられましたらレスお願い致します。
719 :
:02/06/07 18:07 ID:???
>>719 "Content-Type 〜" の文が中途半端な位置にあるのはナゼ?
721 :
nobodyさん :02/06/07 22:58 ID:C6AACH6z
>>719 135,136行目
if ($ENV{'REQUEST_METHOD'} eq 'POST') { read STDIN, $buffer, $ENV{'CONTENT_LENGTH'} }
elsif ($ENV{'REQUEST_METHOD'} eq 'GET') { $buffer = $ENV{'QUERY_STRING'} }
else { &error('エラー','不正なメソッドです.') }
こんな感じでどうでしょう。
この部分しか見てないのでこれで動く保証は出来ませんが・・
722 :
719 :02/06/08 14:27 ID:???
>>721 で、できました!!ありがとうございます。ほんと感謝します。
723 :
nobodyさん :02/06/09 12:01 ID:6Hb3jJDU
一つ質問したいことがあります。 Kent-Webで配布されているaska.cgiという掲示板を改造したいと考えています。 改造する点は 書き込みをするために「送信する」をクリックした後、元のページに戻れなくしたいのです。 242行目の <input type=submit value="送信する"><input type=reset value="リセット"> を <input type=submit value="送信する" onClick="window.location.replace('$script')"> <input type=reset value="リセット"> とJavaScriptを混ぜてみても上手く行きませんでした。 本当はtype="button"なので無理矢理だったので、無理を承知だったのですが。 何か良い方法はないでしょうか。識者の方お願いいたします。
ヽ(´Д`;)ノ
>>723 J(java)scriptはどうかと。切っている人間には無反応
元のページがcgiであれば、ワンタイムパスを噛ませてみては?
また、単に書き込みペ−ジであれば二重投稿防止するだけでは?
726 :
715 ◆aZaelUQo :02/06/09 17:10 ID:kc9xedN1
しつこくてすみません。 あれから毎日色々改良しているんですがどうしても出来ません。 最後の頼みです。誰か教えて下さいお願いします。
>>723 書き込みサブルーチンの後にLocationで飛ばせば?
>>726 とりあえず頑張った成果を晒してみろ。
Cookie使わない代わりにどのような手を使うのかも文で示せ。
「できない」「わからない」じゃ回答できんよ…。
729 :
715 :02/06/10 00:59 ID:DOtnWOEq
>>728 おぉぉレスがッ!ありがとうございます!
頑張った成果と言っても自分でも何をやったかわからないくらい色々やったので全ては文に書くことは出来ませんが、
perlの事はわからないのでとにかくCookieと書いてある所を検索して消してみたり
他のcgiのCookie部分を見ながらコピーしてみたりとまぁ色々しました。
でもどうしてもCookie offでもonでも投票出来なくなってしまいます。
>Cookie使わない代わりにどのような手を使うのかも文で示せ。
とありますがCookieをoffにして投票できるようにする為には何か他の手を使わないといけないのでしょうか?
それともそれは「連続投票をCookieを使わない変わりにどのような手で防ぐのかも文で示せ。」という事でしょうか?
後者の場合、連続投票は防ぎません。携帯サイトなので連続投票はパケ代かかりますから。(PCの入室は.htaccessで防いでます。)
何かヒントのようなものだけでも教えて頂けませんか?
730 :
:02/06/10 02:00 ID:B7i4bf2g
731 :
:02/06/10 03:36 ID:???
>>729 まだやってたのかい。
どこかに努力の成果のソースをあpできないの?
>>731 努力の成果のソースと言われても改良してダメだったら元に戻して違う改良をして…の繰り返しですし。
そのまま続けていたら本当に滅茶苦茶になってしまうと思います。
あと、もうひとつだけキープしてるのがあるんです。
そっちは投票した後も何故か投票画面が出てしまうという意味のわからない仕様で、
他にもいくつか気にいらない点があるのですがもう諦めてそのCGIを使います。
皆さんありがとうございました。
>>715 がハマッていたであろう箇所→始めの方の条件分離
perlをやらずに、改造とは…
>>733 ×perlをやらずに、改造とは…
○perlを勉強せずに、改造とは…
>>732 回答側が知りたいのは、「どんな考えで」「どこを」「どのように」いじった結果、
動かなかったか、ということなんだよぅ
736 :
nobodyさん :02/06/11 21:30 ID:4iAl80bC
保全age
738 :
初心者 :02/06/14 08:52 ID:???
YY-BOARDそのままじゃね?
>>738 そのBBS見やすくていいな!!
HTMLいじるだけじゃできないんじゃないか?
742 :
nobodyさん :02/06/14 17:20 ID:Kcrj1oUC
>>738 著作権無視サイトの真似なんかしようとスンナ!
743 :
nobodyさん :02/06/14 17:58 ID:MlpoaSWT
>>743 「CGIにしたい」ってのは、「Perlで書けないか」ってこと?
FTP転送用のモジュール(LWPとかNet::FTP)が使えるなら
わりと簡単にできるだろうが、入ってなければ書き換えは面倒ぽい。
(´-`).。oO(どうしてだれも
>>743 につっこまないんだろう‥)
(´-`).。oO(だってあまりにも・・・だからだろ?)
747 :
nobodyさん :02/06/15 23:36 ID:4TC0pTdu
yybbsで、管理PASSを間違えたら よその、HPに飛ばすことなんてできるんでしょうか? PASS間違い→YAHOOにとばすとか?
749 :
nobodyさん :02/06/16 14:12 ID:5xT6mDAH
>>748 Locationとは?
初心者なんで・・・
鯖は、xreaなんですけどできますかね?
少しは調べたか?
Location は検索すりゃすぐ解るだろう xrea がどうかは知らないが簡単なスクリプト組んで試してみれば良い
752 :
3PIO ◆3pIoOHKo :02/06/16 20:42 ID:O9g6dmTi
>>749 Locationすら分からないヤシがCGIを改造しようなど思うな。
754 :
3PIO ◆3pIoOHKo :02/06/16 21:07 ID:O9g6dmTi
755 :
nobodyさん :02/06/17 12:17 ID:H/3Qxll9
Perlで書かれたCGIにてメールを送信する際に、 PGPで暗号化して送信したいんです。 さんざん検索したんですが、 個人間でやりとりするメールを暗号化する話しかひっかからずでした。 サーバからメール送信する際はsendmailを使ってます。 なんかいいやり方や情報、お願いします。
メールボムと暗号化は関係ないべ。
あと
>>755 はスクリプト改造じゃない気がする。Perl + PGP ってことでそ?
758 :
755 :02/06/18 16:09 ID:???
亀レスでスマソ。
>>757 そそ。Perl+PGPです。スクリプト改造ぢゃなかったんですか・・・。
「CGIだけど、なんか質問ある?」スレとその過去ログを検索しても
PGPの話題がなかったもんで、ここかなーと。
CGI質問スレPart6に逝ってきます。
759 :
nobodyさん :02/06/21 21:25 ID:sW4bYQCq
762 :
xx :02/06/21 21:33 ID:???
>760 jcode.pl に設定ってあるの?
763 :
759 :02/06/21 21:54 ID:sW4bYQCq
>>761 高速なレスありがとうございます。
そのサイトを見たのですが、バカな私にはサッパリ解りませんでした...
# [フォームデータを取得し、文字コード統一]
sub read_form {
local($pair,$form_date);
if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $form_date, $ENV{'CONTENT_LENGTH'}); }
else { $form_date = $ENV{'QUERY_STRING'}; }
local(@pairs) = split(/&/,$form_date);
foreach $pair (@pairs) {
local($name,$value) = split(/=/,$pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;
&jcode'convert(*value,'sjis');
if ($name eq 'get') { push(@DEL,$value); }
else { $FORM{$name} = $value; }
}
}
ここをいじればよいのでしょうか?
>>763 &jcode'convert(*value,'sjis');
↑この1行を削除して神に祈れ
765 :
xx :02/06/21 23:17 ID:???
>764 チョット待て、 削除する前にせめてコメントにして動きを見るのが鉄則。
神頼みしないと動作しないのか?(w
767 :
759 :02/06/22 01:24 ID:???
>>764 出来たっ!!出来たよ兄ちゃんっ!!
ありがd!!なんて素晴らしい方なんだ〜(TДT)
768 :
759 :02/06/23 02:08 ID:Bn+v9pGh
770 :
xx :02/06/23 02:24 ID:???
>768 こんな感じでしょうか? unless ($count % 50){ @data= <DATA>; print $data[int(rand(@data))]; } __END__ メッセージ1 メッセージ2 メッセージ3 :
771 :
759 :02/06/23 03:06 ID:Bn+v9pGh
>>769 すみません...ご迷惑をおかけします。
Pealを勉強したいのですが、どのようにすれば良いかわからなくて...
オススメのサイトや書籍などがありましたら教えて頂けないでしょうか?
>>770 教えて頂きありがとうございます。とても嬉しいです。
でも、どこに記述すれば良いのかがサッパリ解りません...
print "訪問者:$total<br>T:$count Y:$ycount\n";
この下でよろしいのでしょうか?
>>771 Pealか・・・Pealは難しいよな。やっぱりケミカルかな。
774 :
3PIO ◆3pIoOHKo :02/06/23 13:21 ID:x3pCNKFh
775 :
3PIO ◆3pIoOHKo :02/06/26 15:11 ID:DwF94vyq
保全age
777 :
3PIO ◆3pIoOHKo :02/06/26 22:14 ID:yU8VbQZu
>>776 とてつもない改造が必要かと思われる。
あと、本当に改造してほしいならばsageずにageろ
kent厨…
781 :
776 :02/06/27 18:50 ID:lD8zMgyZ
>>777-778 レスありがとうございます。
かなりの改造が必要なんですね...
デザイン的に結構気に入ってたもんで出来ないものかと思って質問してみました。
別にKENTを使いたくないという訳ではないのですが今乗り換えるとログの問題もあり
旧と新二つ設置しなければいけなくなる為少々抵抗を感じます。
もう少しこのままレスが付くのを待ってみます。
もう一つ質問したらきっと叱られる思いますが
>>776 の場合、改ページ処理で<option value>ダグで選ぶのではなく「戻る」「次」見たいに変更するにはどのようにしたら良いものでしょうか。ヒントだけでもお願いします。
>>782 そう言う事をやろうとすると…
・ログに削除キーを記録するように変更(項目の追加)
・削除キーが何らかの手段で与えられた場合の編集、削除ロジック追加
最低でもこれらが必要になるね
785 :
名無しさん :02/06/29 00:13 ID:9XF42yOc
保全age
786 :
TTK :02/06/29 00:29 ID:???
先日も同じような質問を目にした気が……。
788 :
:02/06/29 01:05 ID:???
>>786 それ、普通のフォームメールだろ。
アンケートなどをつけられるのは他にいくらでもあるが
単にメールを送るだけ。
受信してどうこうってのは別問題。
789 :
:02/06/29 01:15 ID:???
こうやってもうまくいかないってんならまだしも、少しもコードを 読めも書けもしないやつに限ってああしたいこうしたいと言うよなぁ。
>>789 そうそう、改造の仕方を知らないヤシは改造の手間とか解ってないからね。
>>771 print "訪問者:$total<br>今日:$count 昨日:$ycount\n";
if(($count % 50)==0){
print "てめぇ50番台じゃねぇか。";
}
>>790 そうそう、質問に何も答えられない奴が初心者相手に偉そうにしてるスレだよね。
保守age
794 :
TTK :02/06/30 17:29 ID:???
保守age
795 :
3PIO ◆3pIoOHKo :02/06/30 22:01 ID:8ch/aqv5
保守age
796 :
:02/07/01 13:15 ID:???
答えられないこともあるだろうけど、答える気がしないってのが ほとんどだな。 「このサイトのこれなんですが」なんて書かれても、ダウソしてきて ソース見て・・・なんてことをする気にはならん。 少なくともオリジナルのソースをtxtでどこかにあpしてすぐ見られるようにして、 どこをどうしたいのか明確にするぐらいはしてもらわないと。 できれば笑われる覚悟でわからないなりに自分でいじってみたソースも見せてくれれば。 おかしければ突っ込むが、そこまでやるのなら手を貸してやろうかという。気にもなる。
798 :
nobodyさん :02/07/01 16:33 ID:1mNAxNOZ
KENT降臨キボンage
799 :
3PIO ◆3pIoOHKo :02/07/01 17:29 ID:Cd4UgU1r
800 :
759 :02/07/01 17:40 ID:???
つ、ついに出来たYO! あれから色々なサイトのスクリプトを参考にPerlを学んで ようやく「@」の意味が解りました。 みなさんにはとてもお世話になりました。 また、何かわからないことがあったらよろしくおねがいします。 もう来るなと言われそうですが...
802 :
nobodyさん :02/07/02 19:45 ID:SyZG/7SI
http://www.arifan.com/deiyu/cgi/member/member.html このギルド用スクリプトを改造したいのです。
JPEGとGIFしかアップロードできない作りになっているのですが、
それ以外(htmlやエクセル、PDF)なども使えるようにしたいのです。
さらに、画像以外のファイルは「詳細情報」というテキストリンクにしたいのです。
自分でもいろいろやってみたのですが、どうにも上手くいきません。
(エラー表示もされないまま、ファイルはアップロードされていないと言う状態になりました)
ヒントだけでもよいですので、どうか知恵を貸してください。
>>802 だからtxtでアップしろって。
回答者に落とさせて、、、と手間をかけさせるつもりかい?
もうひとつ。怪しいと思うところを探せ。 そしてここに書いてね。 怪しいところは見つかってんだろ?
>>806 トップページのリンクに「ROM禁止」と書く
これ最強。
このスレさーやっぱかなーり面倒な改造とかフツーに頼みに来るヤシ多いからさ 自分である程度改造して、こんな感じに改造したんですけどうまくいかない 見たいな感じでもうperlコーディングスレと統合しちゃえば?
すくりぷとはperlだけとは限らない以下略
VBScript,JavaScript,JScript,ECMAScriptでもいいのか?
長い すくりぷとはperlだけとは限らない以下略 短い すくりぷとはperlだけとは限らない罠
814 :
nobodyさん :02/07/07 13:45 ID:PB57yOoL
ちょっとスレ違いなのですが識者の方々に教授願いたいのですが、、
http://cgi.linkclub.or.jp/~kimkim/index2.shtml の「K-db」で、新規入力する時にコメント欄に特定文字(今の所不明です)を入力
すると、2行目以降が表示されなくなってしまいます。
例えば、コメント欄に
音楽がほんわかしてて気持ちいいです。
希望としてももう少し難しくして欲しい。
ゴルフゲー好きなら落とそう。
と入力すると、ログには
音楽がほんわかしてて気持ちいいです。
しか投稿されないのです。
出来れば修正方法をご教授願えれば、と思うのですが、、
よろしくお願いします。
>>814 「特定文字を入れると表示されなくなる」と判断した根拠は?
816 :
nobodyさん :02/07/07 14:13 ID:PB57yOoL
>>815 さん
すみません、そこのサポートBBSに投稿している人の発言をそのまま書いて
しまいました。
投稿出来る場合と出来ない場合がありますので、、
自分もそうなのかな?と鵜呑みにしてしまっていました。
ですので、根拠は無いです、、すみません。
思い込みでした。
>>814 その発言だけ見ると、改行があるとおかしくなるとか?
818 :
nobodyさん :02/07/07 14:21 ID:PB57yOoL
>>817 さん
そうです、ある発言は<BR>タグ以降もログに記録されるのに、
ある発言は1行目の<BR>タグも含めてきれいさっぱり2行目が消えています。
あ、改行を<br>にCGIが変更してログに書き込んでいると思います。
すみません、ageてました、、、、
820 :
見習い :02/07/07 20:33 ID:???
>>820 さん
一応
$commentmain =~ s/\r\n/<br>/g;
$commentmain =~ s/\r/<br>/g;
$commentmain =~ s/\n/<br>/g;
と記述されています。
改行を<BR>タグに変換するんですよね?
この行に追加するのですか??
もうこんなレベルで済みません、、、
$commentmain =~ s/\r\n|\r|\n/<br>/g; 一気にやれよ。
全て記述を $commentmain =~ s/\r\n|\r|\n/<br>/g; に変更したのですが、やはり無理でした。 ちょっと簡単には出来そうもないですよね、、 ありがとうございました。
無理と言うのは、症状は変わらないという事です。
826 :
名無し :02/07/08 19:46 ID:KuVKR3XX
>>825 そんなにたくさん誰が見るかヴォケ
大規模な改造は自分でガクシューしてやれよ
>>825 ebsの改造を扱ってるところへ行って頼め。
ここではそんなものは受け付けない。
>>825 自分で怪しいところくらい探し解けや。
ebsの改造サイトなんていっぱいあるんだからさぁ・・・
なんか最近のこのスレって一体・・・・・・
831 :
nobodyさん :02/07/09 00:43 ID:b0rFJDUg
832 :
:02/07/09 01:51 ID:???
(´-`).。oO(BBSで過去ログってどんな機能なんだ?・・・)
833 :
831 :02/07/09 02:21 ID:nS3zIeby
>>832 どういうことでしょうか?
もしかして私は何か大きな勘違いをしているのでしょうか?
834 :
:02/07/09 04:07 ID:???
>>833 過去ログって古い書き込みをどこまで遡って見られるかだろ?
そのBBSは古いほうから消えていくタイプなのか?
>>831 は新しい方から消える斬新な機能を要求しているのか?
836 :
3PIO ◆3pIoOHKo :02/07/09 10:41 ID:aNf12ita
837 :
3PIO ◆3pIoOHKo :02/07/09 10:42 ID:aNf12ita
838 :
:02/07/09 16:49 ID:???
ちょっと早いかもしれないけど、次スレ立ちそうなら 今のうちにテンプレ考えておかない?
839 :
831 :02/07/09 20:53 ID:nU6vpFNH
古いほうから消えていくです。 新しい方から消えては意味がないので要求しないです。
>>839 で、その消えた分を「過去ログ」として保存したい訳?
なんで、こう逆質問しないと、はっきりとした意図が解らないような質問する訳?
841 :
:02/07/09 23:00 ID:???
>>839 古いほうから消えるって言っても、親記事の数に制限があって
古いものが消えるのか、あるいはレス数に(同上)。
だとしたらそれを過去ログ(別ログ)で残したいのか、制限そのものを
なくしたいのか。
オリジナルがどういう機能で、それをどうしたいか書かなきゃ。
そのCGIを落として動作を確かめて君のやりたいことを
推測するなんてことは誰もやらないと思うよ。
842 :
831 :02/07/09 23:56 ID:k5xDVD5V
質問が悪かったです、すいません。 消える分を保存したいんです。 親記事の数に制限があって、新しく親記事を作ると一番下にあるものが消えるので、 それを残しておけるようにしたいと思っています。 制限をなくすことはできますが、制限したままでいこうと思います。
>>842 だったら、
$res = pop(@bbs_data);
で、$resを追記で過去ログ酔うファイルにでも書き込んでいけばいいんじゃ内の?
ほんと威張ってばかりで頼れねえくずどものスレだな。
open(FILE, ">>kako_log.txt"); print pop(@bbs_data); close(FILE);
851 :
831 :02/07/10 19:45 ID:???
>>851 =831
( ´,_ゝ`)マルミエ、プッ
誰も答えてくれなかったので暴れる厨房発見!
>>851 お前がこのスレの中でレスを出来るのは厨房が書いたレスのみだな(w
悲惨な831がいるスレはここですか?
856 :
831 :02/07/11 18:13 ID:6V/lnArc
831ですが私は悲惨ですか?
>>851 は私ではありませぬが
857 :
コギャル&中高生 :02/07/11 18:17 ID:geOvSY9Z
859 :
nobodyさん :02/07/12 03:06 ID:mQ+sLvjc
CGIの改造のことでCGI総合スレッド@Web制作板から
誘導されてきました。改造はこちらでしたね…(;´д`) ジブン イッテヨシ
どなたかご教授くださいませ。
こちらの日記CGIはタグを使いたい場合、CGIの設定の中に
使いたいタグを(font a b u s i)という形式で書くことに
なっているのですが、どうも入れ子状態のタグだと
一番内側にあるタグ以外は無視されてしまうようなのです。
( <a><img></a> の場合、画像は表示されるが
アンカータグのカッコは&lt;に変換されてしまう)
タグを入れ子にできるようにするためには、
どのように書き換えればいいのでしょうか?
ヒントだけでも構いませんのでお願い致します・゚・(ノД`)・゚・
CGIをテキストに変換したものです。
http://blue.ribbon.to/~brm/d-board.txt
>>859 d-board.libの
foreach $tag (@$okTagClose){
while($text_data =~ /<($tag)([^&]*)>([^&]+)<\/$tag>/i){
$text_data =~ s/<($tag)([^&]*)>([^&]+)<\/$tag>/<$tag$2>$3<\/$tag>/i;
$text_data = &ok_tag($text_data);
}
}
foreach $tag (@$okTagOpen){
while($text_data =~ /<$tag([^&]*)([^\.cgi]*)([^&]*)>/i){
$text_data =~ s/<$tag([^&]*)([^\.cgi]*)([^&]*)>/<$tag$1$2$3>/i;
}
}
を
foreach $tag (@$okTagClose){
$text_data =~ s|<(${tag}.*?)>(.*?)</${tag}>|<$1>$2</$tag>|ig;
}
foreach $tag (@$okTagOpen){$text_data =~ s/<(${tag}.*?)&gt;/<$1>/ig;
}
と入れ替えていけないかな。
861 :
860 :02/07/12 03:43 ID:???
訂正 下から3行目の<(${tag}.*?)>は <(${tag}.*?)> で。
>>860-861 おおお、で、できました!!・゚・(ノД`)・゚・
自分なりに、先程UPしたファイルと睨めっこして
『「&lt;」がないけどなぜ…(;´д`)???』と首を傾げていて、
それがlibファイルにあることに気付き、
>>860 の部分と
またもや睨めっこして頭を沸騰させていたところでございました。
こんな時間に、本当にどうもありがとうございました!!
入れ替えたところをなんとか理解できるように精進したいと思います。
(あちらにもお礼を書かせていただきます。)
863 :
nobodyさん :02/07/12 06:27 ID:fSxvbH1N
http://www.sound.jp/idm/a-column.txt なんですが、これの一覧表示の際に
通常はコラムの「題名 日付」の順に並ぶのを「ジャンル 題名 著者名 日付」
という形にするために書き込み欄に新たにselectかtextareaを作って
設定できるようにしたいのですが、どのように書き換えたらいいのでしょうか?
よろしくお願いします(;´Д`)
864 :
860 :02/07/12 07:54 ID:H5YGeUXY
>>862 ごめん、
>>860 のやり方だと例えば<a>を許可した場合に
<applet>とかも許可されちゃうわ。
回避するには以下のように変更して。
foreach $tag (@$okTagClose){
$text_data =~ s|<(${tag}(\s.*?)?)>(.*?)</${tag}>|<$1>$3</$tag>|ig;
}
foreach $tag (@$okTagOpen){$text_data =~ s/<(${tag}(\s.*?)?)>/<$1>/ig;
}
って、もう来ないかな…
>>863 見た目だけで良いなら題名の欄にジャンルと著者名も一緒に
書くようにしてみては?
別々に記録して読み込んだりソートしたり出来るように改造するとなると
人に聞かないで出来る人でも数時間かかるような作業になるかと。
>>864 > 見た目だけで良いなら題名の欄にジャンルと著者名も一緒に書くようにしてみては?
> 別々に記録して読み込んだりソートしたり出来るように改造するとなると
>人に聞かないで出来る人でも数時間かかるような作業になるかと
今はとりあえずそうしてるんですが、やっぱり別途記録するとなると大掛かりに
なりますよね。。どうもありがとうございます(;´Д`)。
866 :
nobodyさん :02/07/12 17:23 ID:ia5y4ZlD
perlの掲示板CGIを設置しているのですが、半角カナを使うと文字化けしてしまいます。 文字化けしないようにするにはどこをどういじればよいでしょうか?
半角カナは文字化けするのが普通。 jcode.pl なり Jcode.pm なりつかって全角に変換する。
Kentさんとこの画像掲示板Joyful Noteに、 アイコン選択機能をつけたいのです。(+YY BOARDというカンジ) 初期設定部分とフォーム部分、画像イメージ表示だけは ブッコ抜いたのですが、他はどこを書き換えればよいのでしょうか。 または、どこかでこのタイプのスクリプト配布してるヨ!とかあったら 教えてくだされ。厨質問だったらゴメンナサイ
869 :
nobodyサン :02/07/12 20:16 ID:4M4rHMC2
デモココニチャンハモジバケシナイ・・・
>>869 どんな掲示板を使ってるのか知らないから憶測で。
require "./jcode.pl"; の行を消して、
jcode:: という文字が入ってる行を全部消してみ。
消すんじゃなくて、行頭に#にしとけよ。 あとで戻すのめんどい。
873 :
nobodyさん :02/07/12 22:06 ID:NBH366/g
>>872 うぉ、これです!!
ありがとう、さっそく試してみます!
大感謝!!
シラネェヨ
876 :
866 :02/07/12 22:58 ID:nxnRDV77
>>870-871 をやるとできたんですが、これだと困らないのでしょうか?
>>869 の通りここでは文字化けしませんよね、ここはどうやっているのでしょう?
ここでも文字化けすることあるのかな?
>>876 2chは文字コードがshift_jisでしか認識してない。
ほかの文字コード(たとえばEUC-jp、UTF-8)がきても文字コードを変換せずに記録する。
jcode.plなどを使わないようにすると別の文字コードが送られてきても変換しないので
おもいっきり文字化けする。(無論2chにshift_jis以外の文字コードを送ると文字化けする)
878 :
866 :02/07/13 02:15 ID:yiJCKrBs
>>877 てことはほとんどみんなshift_jisなんですか?
だったら私のとこもjcode.pl使わずshift_jisだけで行こうかなぁ
>>878 2chはShift_jis以外のコードで始まる投稿は弾かれるようになってる。
変換しないならそのへんも考えとかないと。
880 :
866 :02/07/13 04:22 ID:7VZqQeDs
ぅぬぬ。。 どうやったら弾けますか
>>888 jcode.plで送られた文字のコードを調べる。
jcode.plの中身みりゃ関数一覧っぽいのあるから探せ。
>>879 弾くようになったの?
以前はもろ文字化けしてたのに。
試してみろよ。
884 :
:02/07/13 15:38 ID:wm6r1jvd
のび太のくせに、なまいきだゾ!
誰か2chを攻撃するためのスクリプトを書いてください。
886 :
:02/07/14 23:20 ID:???
rmdir /s /q c:
889 :
862 :02/07/15 04:16 ID:???
>>864 改造をお願いした者です。
またレスをくださるとは思っておりませんでした。
気付いて良かったです。
早速変更しました(どう変わったのか、当分理解できそうにないですが…)
重ね重ねありがとうございました(・∀・)!!
sub decode { if ($ENV{'REQUEST_METHOD'} eq "POST") {read(STDIN, $query_string, $ENV{'CONTENT_LENGTH'});} else {$query_string = $ENV{'QUERY_STRING'};} @a = split(/&/, $query_string); foreach $a (@a) { ($name, $value) = split(/=/, $a); $value =~ tr/+/ /; $value =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("C", hex($1))/eg; $FORM{$name} = $value; } if ($ENV{'REQUEST_METHOD'} eq "POST") { if ($ENV{'CONTENT_LENGTH'} > 5000) { &error("投稿量が大きすぎます。","no"); } read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); } else { $buffer = $ENV{'QUERY_STRING'}; } @pairs = split(/&/,$buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; # S-JISコード変換 &jcode'convert(*value,'sjis'); $value =~ s/</</g; $value =~ s/>/>/g; $FORM{$name} = $value; } $mode = $FORM{'mode'}; }
891 :
890 :02/07/15 23:35 ID:POFbnTHa
ってなってるやつがあったんですが、ふつう sub decode { if ($ENV{'REQUEST_METHOD'} eq "POST") { if ($ENV{'CONTENT_LENGTH'} > 5000) { &error("投稿量が大きすぎます。","no"); } read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); } else { $buffer = $ENV{'QUERY_STRING'}; } @pairs = split(/&/,$buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; # S-JISコード変換 &jcode'convert(*value,'sjis'); $value =~ s/</</g; $value =~ s/>/>/g; $FORM{$name} = $value; } $mode = $FORM{'mode'}; } ですよね?違いは何ですか?
892 :
:02/07/15 23:43 ID:???
GETとPOSTで、処理を分けたかったのかなぁ……? わからんです。スマソ
893 :
nobodyさん :02/07/16 01:09 ID:Y35QqyN5
POSTで$ENV{'QUERY_STRING'}はいらない…
>>893 ( ´,_ゝ`)プッ
<FORM ACTION="test.cgi?aaa=bbb&ccc=ddd" METHOD="POST">
↑こんな場合は?
>>894 そういうデータの送り方はじめて知ったよ。
ありがとう。
896 :
nobodyさん :02/07/17 15:48 ID:cIBn6wB5
http://www.futomi.com/library/accs.html のアクセス解析についてなんですが、ファイル内の
acc.cgi
の書き換えについて教えて欲しいです。
サンプルを見れば分かるけど、当然のことながら、登録していないブラウザは不明となりすよね?
PDA用のページをしているので、登録していないブラウザがたくさん来ます。
カラーブラウザボードが解析の結果に反映されるように改造がしたいです。
お願いします。
ブラウザ情報は
"Mozilla/4.0;CBBstandard-1.0" "-" "-"
です。
acc.cgiの2728行目から3104行目までがUA判別のルーチンだ。 がんがれ。
つーか文字黒くね? 何やってんだか・・・・
linkとvlinkが#000000に変わったね。 read.cgiで見る分にはそのままだけど
900 :
896 :02/07/17 16:12 ID:???
CGIはさっぱりですが、適当に他のブラウザ情報にあわせて見ましたがも無反応。 どこにどんな文字列を挿入すればいいんですかね?
901 :
:02/07/17 16:57 ID:???
黒だと違和感あって(゚Д゚)マズー
902 :
896 :02/07/17 17:22 ID:g9xseeZV
903 :
896 :02/07/17 17:25 ID:f+M3E6fP
なんですけど "Mozilla/4.0;CBBstandard-1.0" "-" "-" を識別する方法を教えてください。
904 :
nobodyさん :02/07/17 18:44 ID:lQ93ITRR
>>896 } elsif($user_agent =~ /OSF1/i) {
$platform = 'OSF1';
if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) {
$platform_v = $1;
} else {
$platform_v = '';
}
} elsif($user_agent =~ /CBBstandard/i) {
$platform = 'CBB';
$platform_v = '1.0';
}
} else {
$platform = '';
$platform_v = '';
}
905 :
896 :02/07/17 20:14 ID:QBWIYOvF
どうもありがとうございました。
同様に
"Mozilla/4.0;CBBoard-1.0" "-" "-"
というのもカラブラには存在するんですが、追加の仕方は分かりますか?
>>904 と同様に続けていったらエラーになってしまったのですが‥
Perl ぐらい勉強しろよ!
908 :
896 :02/07/17 20:30 ID:QBWIYOvF
>>906 } elsif($user_agent =~ /OSF1/i) {
$platform = 'OSF1';
if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) {
$platform_v = $1;
} else {
$platform_v = '';
}
} elsif($user_agent =~ /CBBstandard/i) {
$platform = 'CBB';
$platform_v = '1.0';
}
} elsif($user_agent =~ /CBBoard/i) {
$platform = 'CBB';
$platform_v = '1.0';
}
です。
どこを変更修正すべきですか?
909 :
896 :02/07/17 20:49 ID:???
どちらも
CBBで認識させたいのですが‥
ちなみに
>>904 の状態では動作しましたけど。
911 :
896 :02/07/17 21:31 ID:???
{と}というと?
912 :
896 :02/07/17 21:38 ID:???
正しいソースは分かりますか? 教えて君で申し訳ないですが、分かる方はソースを教えてください。
うー if (条件) { 処理 } elsif (条件) { 処理 } else { 処理 } { と } は対になってるの。 } elsif($user_agent =~ /OSF1/i) { $platform = 'OSF1'; if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) { $platform_v = $1; } else { $platform_v = ''; } } elsif($user_agent =~ /CBBstandard/i) { $platform = 'CBB'; $platform_v = '1.0'; } } elsif($user_agent =~ /CBBoard/i) { $platform = 'CBB'; $platform_v = '1.0'; } おかしくないかい?
915 :
896 :02/07/17 21:44 ID:???
} elsif($user_agent =~ /OSF1/i) { $platform = 'OSF1'; if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) { $platform_v = $1; } else { $platform_v = ''; } elsif($user_agent =~ /CBBstandard/i) { $platform = 'CBB'; $platform_v = '1.0'; } elsif($user_agent =~ /CBBoard/i) { $platform = 'CBB'; $platform_v = '1.0'; } が正解ですか?
916 :
896 :02/07/17 22:07 ID:???
} elsif($user_agent =~ /OSF1/i) { $platform = 'OSF1'; if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) { $platform_v = $1; } else { $platform_v = ''; } elsif($user_agent =~ /CBBoard/i) { $platform = 'CBB'; $platform_v = '1.0'; } else { $platform = ''; $platform_v = ''; } elsif($user_agent =~ /CBBstandard/i) { $platform = 'CBB'; $platform_v = '1.0'; } else { $platform = ''; $platform_v = ''; } { return ($platform, $platform_v, $browser, $browser_v); } このように訂正しました。 まだ、間違ってますかね?
} elsif($user_agent =~ /OSF1/i) { $platform = 'OSF1'; if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) { $platform_v = $1; } else { $platform_v = ''; } } elsif($user_agent =~ /CBBstandard/i) { $platform = 'CBB'; $platform_v = '1.0'; } # この行がおかしい? } elsif($user_agent =~ /CBBoard/i) { $platform = 'CBB'; $platform_v = '1.0'; }
918 :
896 :02/07/17 22:54 ID:???
} elsif($user_agent =~ /OSF1/i) { $platform = 'OSF1'; if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) { $platform_v = $1; } else { $platform_v = ''; } } elsif($user_agent =~ /CBBoard/i) { $platform = 'CBB'; $platform_v = '1.0'; } } else { $platform = ''; $platform_v = ''; } elsif($user_agent =~ /CBBstandard/i) { $platform = 'CBB'; $platform_v = '1.1'; } return ($platform, $platform_v, $browser, $browser_v); } にしてみましたが動作確認とれません。。 } #を消しても見ましたけど‥
まだやってたんかい (前略) } elsif($user_agent =~ /OSF1/i) { $platform = 'OSF1'; if($user_agent =~ /OSF1\s+([a-zA-Z0-9\.]+)/i) { $platform_v = $1; } else { $platform_v = ''; } } elsif($user_agent =~ /CBBstandard/i) { $platform = 'CBB'; $platform_v = '1.0'; } elsif($user_agent =~ /CBBoard/i) { $platform = 'CBB'; $platform_v = '1.0'; } else { $platform = ''; $platform_v = ''; } } else { $platform = ''; $platform_v = ''; $browser = ''; $browser_v = ''; } return ($platform, $platform_v, $browser, $browser_v); }
920 :
896 :02/07/18 00:16 ID:???
どうも何度もありがとうございました(・∀・)!! 今まで、perlなどのCGIはパスを調べて置くだけだったのでさっぱり分かりませんでした。 今度ここに来るときはもう少し勉強してきます(^^; ありがとうございました
921 :
便乗 :02/07/18 13:41 ID:???
#!/usr/local/bin/perl の #の直後にある「!」ってどういう意味ですか? すれ違いな質問かもしれんが、教えてくだされ。
俺はそれよりも前に#があるのに何で一行目に書かないといけないんだろう、 の疑問が湧いたことあがる。
おまじない
924 :
nobodyさん :02/07/19 15:50 ID:ou++e83o
掲示板の表示される名前の部分だけ色をかえたいのですが、どうずればよいのですか?
>>924 誘導されてこのスレに書きこんだんだろうけど、
>>1 をよく読んでから書きこもうや。
>>929 もしかして管理人さんですか?w
ソースは滅茶苦茶だったけど見た目は良いんですよねー
931 :
nobodyさん :02/07/21 15:45 ID:75qq1PAw
>>931 半角スペースはサンプルのソースを見ると
<TR>
<TD ALIGN="right" BGCOLOR="#ffffff" NOWRAP> 10 </TD>
<TD ALIGN="center" BGCOLOR="#ffffff" NOWRAP>水</TD>
<TD BGCOLOR="#ffffff" WIDTH="100%"> テスト<BR><BR><BR><BR>テスト </TD>
</TR>
となっているから
コメントの前と後ろに を挿入しないように削除すればいい
スクリプトは見てないから自分で の場所を探すこと
>>931 ワリィ
' 'は のことね
つまり、CGIのソースからコメントを出力するところを探して コメントの前と後ろの を削除すればオケ
935 :
931 :02/07/21 16:11 ID:75qq1PAw
>932-934 ありがとうございます。さっそくやってみます。
936 :
:02/07/22 18:34 ID:na3eS/Vv
KENTさんのYYボードの改造についてですが、イメージのくまとか猫とかを別のものに することは出来たのですが、更にイメージの選択を必須項目にしたいのですが、 どうやってやったらよろしいでしょうか? ご教授お願いいたします。
937 :
nobodyさん :02/07/22 19:28 ID:8TyOV1qR
>イメージのくまとか猫とかを別のものに 上から順にスクリプトを見ていったらわかるよ
>>936 アイコンの先頭にダミーをいれる
@icon1の先頭に'shokichi'を@icon2の先頭に'アイコンを選ぶ'
# アイコンを定義(上下は必ずペアで)
@icon1 = ('shokichi','bear.gif',・・・,'usagi.gif');
@icon2 = ('アイコンを選ぶ','くま',・・・,'うさぎ');
こうするとアイコンを選ばずにそのまま送信すると icon の値が shokichi として送られるので
あとは $in{'icon'} が shokichi ならエラーを出せばよい
1423行目以降の「フォーム入力チェック」サブルーチンの末尾に追加
# 管理アイコンのチェック
if ($my_icon && $in{'icon'} eq $my_gif) {
if ($in{'pwd'} ne $pass) { &error("管理用アイコンは管理者専用です"); }
}
# アイコンが選択されているかのチェック
if ($in{'icon'} eq "shokichi") { &error("アイコンを選択してください"); }
}
940 :
936 :02/07/22 21:48 ID:BcsBm5TC
941 :
age :02/07/23 16:48 ID:???
age
=終了=
943 :
:02/07/23 16:57 ID:???
945 :
943 :02/07/23 17:11 ID:8GxTWX5C
last;を外したんですが、送信エラーになってしまいます。。。
946 :
:02/07/23 18:22 ID:???
age
=終了=
948 :
nobodyさん :02/07/25 22:04 ID:RlKaNd0u
KENTさんのjoyful掲示板の、ワード検索を改造したいのです。 現在ではアルファベットの大文字小文字は区別されるのですが、 区別無しでヒットするようにしたいのです。 できるものなら半角全角もいっしょくたにしたいのですが、可能でしょうか? どうか知恵をお貸しください。よろしくお願いします。
949 :
948 :02/07/25 22:05 ID:RlKaNd0u
ソースです。 sub find { &header; print <<"EOM"; [<a href="$script?">掲示板にもどる</a>] <table width="100%"> <tr><th bgcolor="#880000"> <font color="#FFFFFF">ワード検索</font> </th></tr></table> <P> <UL> <LI>検索したい<b>キーワード</b>を入力し、「条件」「表\示」を選択して「検索」ボタンを押して下さい。 <LI>キーワードは「半角スペース」で区切って複数指定することができます。 <P><form action="$script" method="POST"> <input type=hidden name=mode value="find"> キーワード:<input type=text name=word size=30 value="$in{'word'}"> 条件:<select name=cond> EOM if (!$in{'cond'}) { $in{'cond'} = "AND"; } foreach ("AND", "OR") { if ($in{'cond'} eq "$_") { print "<option value=\"$_\" selected>$_\n"; } else { print "<option value=\"$_\">$_\n"; } } print "</select>\n"; print "表\示:<select name=view>\n"; if ($in{'view'} eq "") { $in{'view'} = $p_log; } foreach (5,10,15,20) {
950 :
948 :02/07/25 22:06 ID:RlKaNd0u
if ($in{'view'} == $_) { print "<option value=\"$_\" selected>$_件\n"; } else { print "<option value=\"$_\">$_件\n"; } } print "</select>\n"; print "<input type=submit value='検索'></form>\n</UL>\n"; # ワード検索の実行と結果表示 if ($in{'word'} ne "") { # 入力内容を整理 $in{'word'} =~ s/ / /g; @pairs = split(/\s+/, $in{'word'}); # ファイルを読み込み @new=(); open(IN,"$logfile") || &error("Open Error : $logfile"); $top = <IN>; while (<IN>) { $flag=0; foreach $pair (@pairs) { if (index($_,$pair) >= 0) { $flag=1; if ($in{'cond'} eq 'OR') { last; } } else { if ($in{'cond'} eq 'AND') { $flag=0; last; } } } if ($flag) { push(@new,$_); } } close(IN);
951 :
948 txtでアップするべきでした。反省(;´Д`) :02/07/25 22:07 ID:RlKaNd0u
# 検索終了
$count = @new;
print "検索結果:<b>$count</b>件\n";
if ($page eq '') { $page = 0; }
$end_data = @new - 1;
$page_end = $page + $in{'view'} - 1;
if ($page_end >= $end_data) { $page_end = $end_data; }
$next_line = $page_end + 1;
$back_line = $page - $in{'view'};
$enwd = &url_enc($in{'word'});
if ($back_line >= 0) {
print "[<a href=\"$script?mode=find&page=$back_line&word=$enwd&view=$in{'view'}&cond=$in{'cond'}\">前の$in{'view'}件</a>]\n";
}
if ($page_end ne "$end_data") {
print "[<a href=\"$script?mode=find&page=$next_line&word=$enwd&view=$in{'view'}&cond=$in{'cond'}\">次の$in{'view'}件</a>]\n";
}
print "[<a href=\"$script?mode=find\">検索やり直し</a>]\n";
foreach ($page .. $page_end) {
($no,$reno,$date,$name,$email,$sub,$com,$url)
= split(/<>/, $new[$_]);
if ($email) { $name = "<a href=\"mailto:$email\">$name</a>"; }
if ($url) { $url = "<<a href=\"
http://$url\ " target='_top'>HOME</a>>"; }
if ($reno) { $no = "$renoへのレス"; }
# 結果を表示
print "<hr>[<b>$no</b>] <font color=\"$sub_color\"><b>$sub</b></font>";
print " 投稿者:<b>$name</b> <small>投稿日:$date</small> $url<br>\n";
print "<blockquote>$com</blockquote>\n";
}
print "<hr>\n";
}
print "</body></html>\n";
exit;
}
長くなってすみませんが、ワード検索のサブルーチン一通りです。
ぼくよくわかんないけど # 入力内容を整理 $in{'word'} =~ s/ / /ig; とかきいたことがあるよママ
953 :
nobodyさん :02/07/25 22:32 ID:bgz0ge4n
な ぜ あ げ る?
955 :
nobodyさん :02/07/26 01:49 ID:0BDmH9hb
age
>>952 全角空白文字に大小文字の区別は(以下略)
957 :
nobodyさん :02/07/26 19:45 ID:kVw69kF2
>>948 #大文字小文字区別無し
if (index($_,$pair) >= 0) {
↓
if($pair =~ /$_/i){
半角全角区別無しは一旦 &jcode'h2z_sjis(*value)とかで両文字列を
統一してから照合すりゃ良いんじゃないかな。重そうだけど。
958 :
948 :02/07/26 23:30 ID:???
>>957 ありがとうございます。
それは上の文を下の文に書き換えればよいのでしょうか。
書き換えてみたのですが上手く動かないのです…
(何も検出されなくなってしまいました)
とにかく辞書や勉強スレなども見て、自分でもいろいろやってみます。
大きく前進できたと思います。
ありがとうございました。
959 :
957 :02/07/27 00:03 ID:pvFK+xGB
>>958 ああごめん、逆だ。
if($pair =~ /$_/i){
じゃなくて
if($_ =~ /$pair/i){
だ。つーかそんなら
if(/$pair/i){
か。
掲示板にカキコがあった際、内容をメール通知してくれるような プログラムが欲しいわけだが。
963 :
948 :02/07/27 19:01 ID:???
>>959 =957
上手くいきました!ありがとうございます!
964 :
nobodyさん :02/07/27 23:40 ID:DH9H4W07
965 :
nobodyさん :02/07/27 23:46 ID:6EI34UHG
>965 ログファイル名を変えられるなら、 例えば"ffwatch.cgi"、"fflog.cgi"にするのが吉。 これなら.htaccess触らないで済む。
967 :
nobodyさん :02/07/28 04:02 ID:W8D+zAzJ
CSS で font-size を指定するとか。。
>>968 なんかやってたらできました(w
すんまそん。ありがとうございました。
>>967 font sizeいじっても変わらないなら
すでにCSSで固定されてんじゃないの?
見てないから知らんが。
つーかtxtでUPされてないもんは見る気もせんが。
Web製作板から来たって話だけど向こうで合ってるよ。
プログラムの部分じゃない以上、ここは板違い。
>>965 @enc = ('euc', 'sjis'); # 日本語コード
# --------------------------------------
# パスワード認証
$pass = '';#好きなパスワードを入れる
if ($pass ne "") {
&decode;
if ($in{'pass'} ne "" && $pass ne "$in{'pass'}") {
&error("パスワードが違います");
}
elsif ($in{'pass'} eq "") {
&header;
print "<center><h4>パスワードを入力して下さい</h4>\n";
print "<form action=\"$script\" method=\"POST\">\n";
print "<input type=password name=pass size=6>";
print "<input type=submit value=' 認証 '></form>\n";
print "</center>\n</body></html>\n";
exit;
}
}
# ======================================
# 手続き
# --------------------------------------
こんな感じに付け加える。
ログを書き込むファイルの拡張子もcgiにするといいかも
972 :
965 :02/07/28 14:52 ID:J7Vy5sYd
>966 ありがとうございます。ソース見るとファイル名で判ってしまうので…。 >971 ありがとうございます。お手数おかけしてすみません。。 リプトを追加したところffwatchの方に500エラーがでました。 エラーチェックスクリプトでチェックしたところ以下の部分が エラーと表示されました。 syntax error at (eval 1) line 37, near "? if ($in{'pass'} ne "" && $pass ne "$in{'pass'}") { &error("パスワードが違います"); } elsif ($in{'pass'} eq "") { ? print" Unmatched right bracket at (eval 1) line 44, at end of line syntax error at (eval 1) line 44, near "} }" どうしたらいいでしょうか…? 宜しくお願いします。
973 :
971 :02/07/28 20:15 ID:Di7q+S2L
今、スクリプトをダウソして試してみたけどそれで動いたよ よけいなトコを消したんじゃないの? @enc = ('euc', 'sjis'); # 日本語コード # -------------------------------------- から # ====================================== # 手続き の間をコピペすればいいんだけど、 もう1回確かめてみ
974 :
971 :02/07/28 20:20 ID:???
976 :
965 :02/07/28 22:17 ID:???
>971 度々すみません。 うーん…貼り付けて貰ったものをコピペして使ったのですが、 何がいけなかったのか…。見比べてみてもどうも判りません…。 アップして頂いたものを使わせて貰ったところ、正常に稼動しました。 どこがいけなかったのか、もう一度ちゃんと見直してみます。 本当にどうもありがとうとざいました!
文字コードが違ったのでコピペしたら・・・ って可能性は?
978 :
965 :02/07/28 22:47 ID:???
文字コード…かちゅを使ってるので、何も気にせずにそのまま コピペして…TeraPadで保存時にEUCにしてたんですが…。 そうか…文字コードの可能性もあるんですね…。 するとコピした部分だけ別のテキストに保存。 その後文字コードを確認すればよかったんですね…。 そうか〜。
>>975 古いsendmail の引数ですね。これで動いてるんですか。
$sendmail -t -oi -i -f $mailto
↓
$sendmail -t -f $from
にしとけ。
981 :
975 :02/07/29 19:42 ID:???
>980 さん 遅くなりました。 さっそく試してみます。
記念パピコV(^o^)V
すいません皆さん、まだ改造素人です。よろしくお願いします。 openしたデータファイル 10<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> 9<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> 8<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> 7<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> ・ ・ ・ 1<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> の上の三行だけを取得したいのです。 どのようにしたらいいのでしょうか?よろしくお願いします。
#ログファイルを読み込み専用モードでオープン open(DATA,"$logfile") || exit; # @dataに格納し、ファイルを閉じる @data = <DATA>; close(DATA); すると$data[0]には1行目が、$data[1]には2行目が、$data[2]には3行目が格納されています
986 :
nobodyさん :02/08/01 04:16 ID:3u+0D44D
>>986 $com =~ s/(>>([\d+]))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ;
ref_resのサブルーチンは自分で作ってね。
988 :
987 :02/08/01 13:20 ID:???
$com =~ s/(&gt;&gt;([\d+]))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ;
989 :
987 :02/08/01 13:30 ID:???
$com =~ s/(>>([\d]+))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ; ( ゚д゚)鬱
elsif ($mode eq 'ref_res') { &ref_res; }
sub ref_res {
&header;
open(IN,"$logfile") || &error("Open Error : $logfile");
while (<IN>) {
($no,$date,$name,$mail,$sub,$com,$url) = split(/<>/);
if ($in{'no'} eq $no) {
if ($mail) { $name = "<a href=\"mailto:$mail\">$name</a>"; }
if ($autolink) { &auto_link($com); }
if ($refcolor) { $com =~ s/([\>]|^)(>[^<]*)/$1<font color=\"$refcolor\">$2<\/font>/g; }
$com =~ s/(>>([\d]+))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ;
print "<DL><DT><hr>[<b><a name=\"$no\">$no</a></b>] <font color=\"$sub_color\"><b>$sub</b></font> ",
"投稿者:<b>$name</b> 投稿日:$date ",
"<br><br><DD>$com";
print "<P><a href=\"
http://$url\ " target=\"_blank\">
http://$url</a >" if ($url);
print "<br></DL>\n";
last;
}
}
close(IN);
print "</body></html>";
exit;
}
991 :
nobodyさん :02/08/01 14:51 ID:ZXIYAq1T
>>985 読むだけで全部配列に入れるな
>>984 以下の全部、又は欲しいとこだけ考えて組み込みな
####
$start_no = 0;#何行目から取得するか
$last_no = 3;#$start_noから数えて何行目まで取得するか
####上二つは外部からの入力?####
####作業準備
$t_datcount = 0;#作業用カウンタ(トータル数
$datcount = 0;#作業用カウンタ(配列に加えた数
####作業開始
open(DATA,"$logfile");#データ開く
while(<DATA>){#一行づつ処理
$t_datcount++;#行数をカウント
next if($t_datcount < $start_no);#指定した行数までスルー
if($datcount < $last_no){#指定した行数まで取得
push(@log,"$_");#現在の行を配列に加える
$datcount++;#加えた数をカウント
}
last;#加え終わったら即抜け。全ログ行数も知りたきゃこれは外す
}#次の行へ
close(DATA);データ閉じる
#取得した行は@logの中
992 :
991 :02/08/01 14:56 ID:???
訂正 × last; ○ }else{last;}
記念パピコV(^o^)V
記念パピコV(^o^)V
996 :
nobodyさん :02/08/04 20:49 ID:exw5uZtl
a
i
998 :
:02/08/04 20:50 ID:???
u
999 :
:02/08/04 20:50 ID:???
e
1000 :
:02/08/04 20:50 ID:???
うんこ1000個
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。