トップページphp
477コメント133KB

【Perl】掲示板を使ろう!

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2001/05/03(木) 20:56ID:lB9ErFH.
-前スレッド http://tako.2ch.net/test/read.cgi?bbs=perl&key=959378033&ls=50
-PHP版  http://corn.2ch.net/test/read.cgi?bbs=php&key=982779383&ls=50

今のところのまとめ。
■ほういち氏
  ▽サンプル掲示板
    http://www13.big.or.jp/~bell/nanashi/perl/
  ▽ソースコード
    http://www13.big.or.jp/~bell/cgi-bin/files/
    http://xbbs21.virtualave.net/xbbs/up/src/up010.lzh
■347氏
  ▽サンプル掲示板
    http://takotubo.virtualave.net/bin/board.cgi
  ▽ソースコード
    http://xbbs21.virtualave.net/xbbs/up/src/up022.lzh
■570氏
  ▽サンプル掲示板
    http://maasa.antique.to/2ch/sample/index.html
■panton氏
  ▽ソースコード
   http://www.panton.f2s.com/bbs/lib/IndexedFile.html
   http://www.panton.f2s.com/bbs/lib/IndexedFile.pm.txt
0119名無しさん@お腹いっぱい。2001/07/27(金) 21:48ID:???
JAPUさん、負けないで。
0120名無しさん@お腹いっぱい。2001/07/27(金) 22:43ID:???
>>118
ただの夏房だから放置が吉。
0121panton2001/08/19(日) 03:50ID:Mz6GQnDY
沈みすぎなのでアゲ。

IndexFile.pm改め、IxFile.pmを作りました。
ハッシュだけでなく配列やスカラなどにも対応。
データ構造が変わったので、IndexedFile.pm とはデータ互換性なしです。
詳しくは、
http://www.panton.f2s.com/bbs/lib/IxFile.html
http://www.panton.f2s.com/bbs/IxFile.tar.gz (ブツ)
http://www.panton.f2s.com/bbs/sbbs.cgi (テスト用掲示板)
0122名無しさん@お腹いっぱい。2001/08/24(金) 05:23ID:DAq2T8i2
何気にVerアプ期待してまっせ
0123名無しさん@お腹いっぱい。2001/08/24(金) 17:32ID:???
http://script.lovely.to/bbs/infolng.cgi?print+200108/01080035.txt
ほういち氏発見!連行せよ。
0124xx2001/08/24(金) 17:38ID:???
xxx
0125名無しさん@お腹いっぱい。 2001/08/24(金) 18:02ID:???
あ、ホントだ (^^
開発に疲れちゃったんだろーなー
0126名無しさん@お腹いっぱい。2001/08/24(金) 19:48ID:???
>>ほういち氏
八月半ばに他のQ&A-BBSでも見かけたよ。
でも2chにはこない…。
0127名無しさん@お腹いっぱい。01/09/07 18:48ID:bc3oxQQc
定期age
0128名無しさん@お腹いっぱい。01/09/08 02:44ID:???
タイトルのtypo発見した、ちょっとトクした気分だ。。。
0129名無しさん@お腹いっぱい。01/09/10 19:41ID:72uN3czc
use base 'IxFile';で継承すると
殆どのフィールドを継承できない(フィールド名が_で始まっている為)のですが、
それは仕様ですか?
0130panton01/09/10 20:07ID:???
お、意外にも使おうとしている方が・・・
仕様と言えば仕様ですね。
お好みで適当に変えちゃってください。
ただ、今全面的に仕様変更考えてるので微妙です。
特に、インデックスの内部保持方法とその保存形式、
ハッシュや配列へのTieインターフェイスとかいろいろ。
仕事忙しいのでいつになるかわからないけど・・・
なんか意見あったら言ってください。
0131名無しさん@お腹いっぱい。01/09/10 21:52ID:???
ナルホド。
弄り始めたばかりですし、特に今のところ意見は無いです。
応援してますんで頑張ってください。
0132名無しさん@お腹いっぱい。01/09/12 16:10ID:Hityt.0Q
age
0133名無しさん@お腹いっぱい。01/10/13 06:53ID:WnJyL/5M
あげとく。もう捨てられたスレなのか?
0134名無しさん@お腹いっぱい。01/10/13 15:25ID:???
「〜を作ろう」っていうスレで何かが完成した験しは全然無いな。
0135名無しさん@お腹いっぱい。01/10/13 15:29ID:???
# IxFile拡張
# IxFIle::clear - IxFileデータベースをクリアする
# $status = clear $ixf;
sub IxFile::clear{
my IxFile $self = shift;

$self->_initialize(2);

$self->{_pointer} = 0;
$self->{_stat} = 0;
$self->{_idxlist} = [];
$self->{_idxhash} = {};

my $idx_ok = truncate $self->_idxhandle, 0;
my $dat_ok = truncate $self->_dathandle, 0;
return $idx_ok && $dat_ok;
}
0136panton01/10/13 20:32ID:WnJyL/5M
>>135さん
ありがとうございます。clear メソッドはあったほうが良いですね。
マージさせていただいて良いですか?

関係ない話ですけど、
Apache::AntiSpam::HTMLEncodeを見てて、
メールアドレスの一部分だけでもHTML Entitiesに変換すれば、
ロボットのアドレス収集対策にかなり有効なんじゃないかと思いました。
たとえば、?anton@f2s.com とかみたいに。
もっとも、HTML Entitiesを解釈するロボットがあると元も子も無いけど。
0137panton01/10/13 20:36ID:???
あれ、panton って書いたつもりだったのに・・
bbs.cgiの仕様変わったのかな?
てすと: & > <
013813501/10/13 20:51ID:???
> マージ
そのつもりで書いたので遠慮なくどーぞ。

> アドレス収集ロボ対策
JAPUさんが会社でやってますね。
ってあまり宣伝しすぎると効果が無くなるんでしょうけど。
0139panton01/10/13 21:05ID:???
s/&#[\d;]*/?/g って感じかな。

>>138
ありがとうございます。
ロボット対策> あら、ほんとですね。さすが。<- JAPUさん
0140名無しさん@お腹いっぱい。01/10/31 23:12ID:???
このスレ終わっちゃったのカー (゚д゚lll)
テキストに飽きてきたから、使ってみるう
0141名無しさん@お腹いっぱい。01/11/22 15:56ID:GCw1giJk
終わっちゃったんですか?
0142panton01/11/22 17:15ID:???
おれはいますよ。すんません。
仕事に殺されています。<-言い訳。
0143名無しさん@お腹いっぱい。01/11/22 22:31ID:???
IxFileの配列版File::Arrayを構想中。
0144名無しさん@お腹いっぱい。01/11/30 03:03ID:???
>>45
> * IO::File
> IO::Fileはかなり大きいので使わずに済ませてもいいのでは?

根拠は?たかだか3889バイトですが?
# と、Google検索でここにきたのでついでに書き込むテスト
0145名無しさん@お腹いっぱい。01/11/30 03:04ID:???
しかもコメントを除くともっと少ないし :)
0146panton01/11/30 22:49ID:???
>>144
IO::Fileは
Carp、Symbol、SelectSaver、IO::Seekable、File::Spec
といろんなモジュールを呼んでますし、呼ばれたモジュールも
色々モジュールを呼んでるので全部あわせると結構な量です。
0147名無しさん@お腹いっぱい。01/12/06 20:53ID:u8ht0k3R
slashdot型掲示板作られた方は
いませんか?
0148名無しさん@お腹いっぱい。01/12/07 00:21ID:???
slashdotってひたすら流れがつかみにくいと感じるのは俺だけ?
0149名無しさん@お腹いっぱい。01/12/07 00:39ID:ChN9PGvZ
YaBBで似たようなことできるね。
ニュース系サイトなら更新するのに
わざわざ、エディタ&FTP使わなくても
ブラウザだけで更新できるから便利だと思うんです。
0150名無しさん@お腹いっぱい。01/12/27 03:02ID:3egvuP0s
あげ
0151名無しさん@お腹いっぱい。01/12/27 03:28ID:???
>>147
slashdotならslashcode持ってくればいいのでは?
0152名無しさん@お腹いっぱい。01/12/31 00:47ID:???
ふと思いついて>>143をFileIxって名前で作ってみました。
速度は(Perlということを踏まえた上で)まずまず高速です。
ビルトイン配列とほぼ同じインターフェイスで扱えるのが楽です。
アップしましょうか?
0153名無しさん@お腹いっぱい。02/01/16 17:51ID:???
私がたまたまこのスレを見たのも何かの縁でしょうからよろしければアプしてください。
ttp://isweb36.infoseek.co.jp/computer/perldev/cgi-bin/upload/upload.cgi
0154 ◆wfMSpsRY 02/01/16 18:00ID:???
>■570氏
>  ▽サンプル掲示板
>    http://maasa.antique.to/2ch/sample/index.html

過去の遺物が晒されとる(w
0155名無しさん@お腹いっぱい。02/01/20 15:46ID:???
>>154 1.5ちゃんねるも遺物になったりして。。(笑
0156名無しさん@お腹いっぱい。02/01/28 00:58ID:aMapBeA5
使ろう!
0157あぼーんNGNG
あぼーん
0158 ◆wfMSpsRY 02/01/28 09:31ID:???
>>155

禁句です (w
0159nobodyさん02/03/10 00:28ID:IS9JbIjK
age
0160掲示板初心者02/03/16 20:48ID:???
Perl超初心者なんですけど、
ログの処理を一気に配列化して読み込むと負荷が高いと聞いたので、
1件1件処理するようにしたいのですが、
それはどうやればできるのですか?
0161nobodyさん02/03/16 21:28ID:???
>>160

foreach関数
0162nobodyさん02/03/16 21:35ID:???
それじゃダメでしょ
while関数
0163掲示板初心者02/03/16 21:38ID:???
kentさんはforeach関数で重いらしいんですけど、やっぱりwhileなんですかね?
0164nobodyさん02/03/16 21:50ID:2F4VnaKu
>>163
while使えるところだったらみんな使った方がいいよ。
0165掲示板初心者02/03/16 21:53ID:???
>>164
ごめんなさい。なぜですか?
0166nobodyさん02/03/16 21:59ID:???
foreachだとファイルの中身を全部配列に展開するからメモリを食う。
0167掲示板初心者02/03/16 22:06ID:???
遭難ですか!!
ありがとうございました。
0168nobodyさん02/03/16 22:14ID:???
これ日本語かできないよ〜。

read(STDIN, $str, $ENV{"CONTENT_LENGTH"});

@parts = split('&',$str);
foreach(@parts) {
($variable, $value) = split("=");
$value =~ tr/+/ /;
$value =~ s/%([0-9a-fA-F][0-0a-fA-F])/pack("C",hex($1))/eg;
&jcode'convert(*value, 'euc');
$cgi{$variable} = $value;
0169nobodyさん02/03/16 22:27ID:???
>>168
ハァ?
無理だと思うなら素直にCGI/CGI::Lite/CGI:Minimal/cgi-lib.pl使えよヴォケ
0170nobodyさん02/03/16 22:33ID:???
CGI::Liteだって(プ
0171nobodyさん02/03/16 22:34ID:???
>>168
それは日本語化するルーチンじゃなくてハッシュ化するルーチンなわけだが。
それは置いといて間違ってるところは
5:split(/=/, $_);#splitの使い方間違ってます
7:$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
#[0-0a-fA-F]←0-0では1-9だった場合に変換されません。
9:$CGI{variable} = $value;
ハッシュは大文字にしたほうがわかりやすいです。強制はしませんが。以上。
0172nobodyさん02/03/16 22:45ID:???
ハッシュ化じゃなくよーするにデコードだろ。
単純ミスでギャーギャーわめくよりはモジュール使った方がよほどいいと思うがね。

ついでに、splitの第一引数は単なる文字列でも問題なく動くぞ。
まぁ/pattern/の形のほうが良いとは思うが。
0173nobodyさん02/03/16 22:48ID:???
>>172
たかがデコードするのにモジュールなんて使っちゃダメだよ。
どうしてもめんどいor出来ないときだけモジュールを使う。
これ処理を早くするための鉄則。
0174nobodyさん02/03/17 10:26ID:???
>>173
デコードルーチンが頭に入ってるなら、もちろんそれでも構わないが。
(まぁそこまで解ってるなら普通は自作モジュールだろうが)

だが「ミスを犯すくらいなら」処理を隠してくれるモジュールが得策だと思わないか?
0175 02/03/19 16:21ID:???
掲示板で、KENT-WEB(http://www.kent-web.com/)の掲示板は書き込んだあとに
ブラウザの更新ボタンを押すと、エラーで帰ってくるのですが、
tacky(http://tackysroom.com/)の掲示板だと、書き込み後リロードボタンを押しても、
エラーにならず二重登録もされていません。どの辺が違うのでしょうか?教えてください。

Locationですか?
0176nobodyさん02/03/19 16:38ID:???
&errorでエラーサブルーチンの飛ばすんじゃなくて。
Locationにして掲示板に飛ばしてるんじゃないかな?
0177nobodyさん02/03/19 16:50ID:???
あっごめん
>>175に書いた。
あと
エラーサブルーチンの×
エラーサブルーチンに○
間違えた。
でPetitの場合は&html_logでそのまま掲示板に飛ばしてましたよ。
動作確認しました。
017817602/03/19 16:51ID:???
さらにスマソ
177=176です。
0179nobodyさん02/03/19 17:05ID:???
http://www.imjnews.com/bcp/cgireqbbs2/wwwforum.cgi?id=14&az=thread&number=575
つーかマルチポストうざい。

2/23からの間お前何やってた?少しは努力したか?少しは調べようとしたか?
ひょっとして他の掲示板にマルチポストして回ってたのか?

全然変わってねーじゃねーか。

ふざけんなボケ。
0180 02/03/19 18:44ID:???
>>176-178
ありがとうございました。

>>179
マルチポストは別に悪いことじゃないと思うよ(藁)。
0181!=17902/03/19 19:01ID:???
>マルチポストは別に悪いことじゃないと思うよ(藁)。

何が(藁)だよ。氏ねカス。
0182 02/03/19 19:18ID:???
>>180
ハァ?、氏ねよ
0183nobodyさん02/03/19 21:52ID:???
モノを教えてもらうのにこんな態度をでかくしていられるのか、人として不思議に思う。
0184かつやん02/03/19 23:54ID:???
よくわからんが怖くてやさしい人なのね。
マルチポストがいけないのではなく、
恩返しがないことがいけないことなのかも。
サポート受けたらあなたのリンクをクリック必須とかどう?(藁)。
0185かつやん02/03/19 23:57ID:???
それともいいあんあります?
0186nobodyさん02/03/21 09:08ID:???
perlで出来た掲示板の表示を早くする方法ってないですか?
ほとんどの掲示板はtableタグでレイアウトを整えてるじゃないですか。
でも、tableタグは<table>から</table>までが読み込まれたときに、画面に表示されるようなことを聞きました。

どうやったら、早くなりますか。
0187nobodyさん02/03/21 09:15ID:???
>186
テーブル使わなければいいって話でわ?
0188nobodyさん02/03/21 09:36ID:R99pPt9b
掲示板の検索機能ってありますよね?
あれをトップページから検索できるようにしたいのですが
どのようにすればいいのでしょうか?(スレ違いなら違うところで質問します
0189nobodyさん02/03/21 09:44ID:???
>186
テーブルを外してみるのがてっとりばやいね。
最近のデザイン主義のBBSじゃ難しいだろうけど。

>188
トップページからCGIを起動すればできるよ。
トップページのフォームから掲示板の検索機能へ直接値を渡してやるの。
CGI側がRefererを規制してるならそのURLだけは加えてやるのことも必要。
0190nobodyさん02/03/21 10:04ID:R99pPt9b
>>189
その詳しいやり方が今一わからなくて..。
どこかに参考になるサイトってありますか?
0191nobodyさん02/03/21 11:00ID:???
使ってるのはKENTWEB?
0192nobodyさん02/03/21 11:03ID:???
HTMLタグとか分かる?
分かるんだったらBBSの過去ログ検索ページのソースを貼り付けるだけでいけるよ。
0193nobodyさん02/03/21 12:06ID:Evst2w+i
>>192
それやっても無理でした。エラーが出ました。
0194nobodyさん02/03/21 12:45ID:???
何使ってんねん。KENT-WEB?
0195nobodyさん02/03/21 12:49ID:Evst2w+i
KENTWEBじゃないけど、まぁ同じ様なもんです。
なんしか、トップページに掲示板と同じ(掲示板のログを検索できる)
検索窓をつけたいのですが、うまくできませんです。。
0196nobodyさん02/03/21 12:52ID:???
>195
だから教えてくれないと何行目をいじるとか教えられへん。

エラーってどんなエラー?
「refererリファラが違います」とか「いたづらはやめてください」とかだろ?
0197nobodyさん02/03/21 13:00ID:Evst2w+i
>>196
一度、KENT WEBでやってみたのでその時の話を。
(ちなみにシンプル掲示板です。)

ワード検索のソースを見て
トップページに貼り付けたのですが、検索結果は出なかったんです。
検索のボタンを教えてもトップページに変わるだけで。
0198nobodyさん02/03/21 13:01ID:Evst2w+i
教えても→押しても
0199nobodyさん02/03/21 13:26ID:hXbohRxd
だから何をつかってるのよ
0200nobodyさん02/03/21 13:28ID:???
>197
トップページに戻る?
<FORM>が間違ってんだろ。
0201nobodyさん02/03/21 14:43ID:???
cgiがeucで表示してるhtmlがS-JISなんておちじゃないだろうね? まさか。
0202nobodyさん02/03/21 15:26ID:???
勉強になるCGIのソースありませんか?
0203nobodyさん02/03/21 16:27ID:C2kHFgXI
>>202
俺はkentのaskaで勉強中
020419702/03/21 19:25ID:mdQuv0X2
>>199-201

201さんのようなオチではないっす。
<FORM>も丸ごとコピペしたんですが、無理でした。
なんか参考になる、又はこの件に関した技が載っている
サイトってないですかね?何か単純なミスをしてるっぽいです。。
(あと、使っている掲示板はKENTのシンプル掲示板で話を
 進めていただけたら。。それでもできないので)
0205nobodyさん02/03/21 19:36ID:???
action="../bbs.cgi"
相対パスがちがうとか
つーかお前なんかに誰も興味ないから
素直に使ってる掲示板かけや
0206nobodyさん02/03/21 19:41ID:???
第三者だがいくらなんでも

>つーかお前なんかに誰も興味ないから
>素直に使ってる掲示板かけや

は酷すぎると思うが..。興味なかったら放置しろよ。
久々にマジで酷い煽りを見た。
0207nobodyさん02/03/21 19:42ID:???
>>204
それと、君もシンプル掲示板のソースをもっと見た方がよい。
たぶん、そんなに難しくない。
0208nobodyさん02/03/21 19:43ID:???
>>206
まぁまぁ。これが2ちゃん。
確かに同じ教えるにしても、煽るにしても、言い方ひとつ。
0209nobodyさん02/03/21 19:51ID:???
>>206
たまにもの凄い酷い煽りがあるからね。
単に氏ねとか馬鹿とか逝ってよしとかよりも
なんか”本心”で言われているような煽りって
はたから見てても気分が悪い。
0210nobodyさん02/03/21 19:51ID:???
>>206=204 分かり易すぎ。
204が要領得ん書き方だから煽られるんだろ。
何使ってるのかって数回聞かれてるのに無視してるし。アホか。
0211nobodyさん02/03/21 19:52ID:???
>>209=206 自作自演ウザイ
0212nobodyさん02/03/21 19:53ID:???
>>210
凄いですね〜それなら206-209まで全部自作自演ですね〜
2重カキコに引っ掛かるのにね(w
2ちゃんでも保護レスする人いますよ。ていうか、悪い奴ばかりじゃないし。
0213nobodyさん02/03/21 19:55ID:???
つーか、206だけど保護レスというか
205の書き方があまりにも酷いと思わないか?
0214nobodyさん02/03/21 19:55ID:???
>>212
>凄いですね〜それなら206-209まで全部自作自演ですね〜
ハァ?アホか
0215nobodyさん02/03/21 19:55ID:30xImx7U
おっと、ID出しておくよ。ジサクジエンになるからね(w
021620902/03/21 19:55ID:LLq+jz44
ほら、煽られた(w
0217nobodyさん02/03/21 19:56ID:???
>205の書き方があまりにも酷いと思わないか?
何使ってるっていう再三の情報提供要望を無視して
要領得ないアホな質問を繰り返すよりはマシ。
0218nobodyさん02/03/21 19:57ID:???
>>217
シンプル掲示板使っているって書いてあるよ。

あ、漏れもジサクジエンになりますか?(w
0219nobodyさん02/03/21 19:58ID:xgoHF4xW
情報を出さない質問者程性質の悪いヤツは居ない。
■ このスレッドは過去ログ倉庫に格納されています