トップページ⇒php
982コメント439KB

【 スクリプト改造工房 PART 7 】

■ このスレッドは過去ログ倉庫に格納されています
0001sage03/09/17 15:28ID:ZcvVdw5C
 
#================================
# スレッドの説明
#================================

「スクリプトを改造したいけどやりかたわかんないよー」という人がいましたら
ここで聞いてください。ひょっとしたらアドバイス出来るかもしれません。

質問するときは以下の点に注意して書いて下さい

(1) そのスクリプトの内容と置いてある場所を明記する (txtファイルでUPすればなお良い)
(2) どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
(3) 出来るだけ詳しく書くこと。少しは自分で考えること。できれば御礼も言ったほうが良い

※答えてくれないからといって逆ギレする厨はお断り

過去ログ>>2
069669504/01/21 07:27ID:???
>695
最終行、wwregi→yyregi、wwini→yyini に訂正。
069769304/01/21 12:31ID:KLRTDEd/
>>695
>>696

どうも。yyregiの405行目あたりに加えてみました。
ただ書き込もうとすると500のサーバーエラーが出て加えた文で何が原因かわからない状況です。
すいませんけどわかる方いましたらよろしくお願いします

http://page.freett.com/yataro/yyregi.txt
0698nobodyさん04/01/21 19:24ID:???
>>695
な? 仏心出したっていいことないって、こんな手合いにはさ。

>>697
いいところ教えるから、もう二度と他人の手を無用にわずらわせるなよ?
http://www.kawa.net/xp/index-j.html
KCatchだ。しっかり使えよ。
0699nobodyさん04/01/21 19:56ID:???
すまんが、クリスチャンなんだ
0700インド人プログラマ04/01/21 20:10ID:???
そうか。俺はヒンドゥーだ。
0701nobodyさん04/01/21 20:45ID:???
>>697
500エラーくらい対処できるスキルが無いと困るよ。

君のPCにPerl は入ってないの?
まさかローカルでテストせずに、共有サーバでテストしてるんじゃないだろうな。
それはいかんぞ。
Perl入れてりゃ、perl -cw yyregi.cgi って打ち込めば、エラーを表示してくれるだろうに…

また、3行目に
use CGI::Carp qw(fatalsToBrowser) ;
って入れてエラーをブラウザに表示汁って手もあるがな。

それとさ、エディタはどんなエディタ使ってる?
全角スペースが見えるエディタを使いなよ。
http://page.freett.com/yataro/yyregi.txt には変な所に全角スペースが入ってる。
スクリプトを詳細に見てないが(KENTは見る気が起こらない)
ま、そこが原因かな?
0702nobodyさん04/01/23 13:58ID:meUkJhrG
掲示板の半角かなの扱いについてなんですが、例えば[全角文字+半角かな]だと正常に表示されるのですが、半角かなだけを単独で書き込まれた場合文字化けしてしまいます。
2ちゃんねるのように半角かなだけの投稿にも文字化けを起こさずに対処させるにはどうすればいいでしょうか。

元々半角かなは一切使えない掲示板だったのですが、ゼロちゃんスクリプトを参考に自分なりに改造してみた結果以下のようなデコード処理に行き着きました。
ttp://www.geocities.co.jp//HeartLand-Cosmos/9800/de.txt


拙い文章で申し訳ありませんがご教授の程よろしくお願いします。
070370204/01/23 14:35ID:meUkJhrG
連投すみません・・・
おもっきり過去ログに出てました・・・_l ̄l○

http://pc2.2ch.net/php/kako/1047/10478/1047806915.html
の149さんからの流れを参考にjcodeg.plを取り入れてみたところPC閲覧においては解決しました。

ただ、携帯電話で見た場合にスクリプトエラーが発生してしまったので、携帯のコード処理部
jcode::z2h_sjis(\$message);
をコメントアウトしたところとりあえず大丈夫みたいです。

ただこの場合、メインのデコード部の
&jcode'convert(\$val,'sjis');
&jcode'convert(\$nam,'sjis');
を削っても表示自体はされるようなのですが、閲覧者さんの各環境を考慮する場合この処理は消さずに残しておいた方がいいんでしょうか・・・
質問ばっかりですみませんがよろしくお願いします。
0704nobodyさん04/01/23 18:33ID:???
動いているコードに手を触れるなという格言がある。
残しておいて問題はない。漏れなら残しておく。
日に数千の書き込みがあって、負荷が問題になってるとかなら話は別だけど。

削ると、極めて昔(Windows3.1とかの時代)のMac/Unix環境で化けるかもしれない。
気にしたいなら構わないけど、そこまで行くと趣味の領域になってくると思う。
070570204/01/24 00:21ID:???
>>704さん
返事が遅れて申し訳ありませんでした。

>動いているコードに手を触れるなという格言がある。
これ、すごく胸に響くものがありました。

正直、レスがないままだったらたぶん消してたと思うのですがそのまま残しておくことにします。
御助言ありがとうございました。
0706nobodyさん04/01/24 02:13ID:E5Iw/RSh
レッツPHP+zut.jpの写メールBBSなんですけど
携帯用ページで、投稿された写真に返信があったとき
返信ありのリンクの横に何件レスがあるか数字を表示させたいです。
scriptをどう改造すればいいかお知恵貸してくださいm(_ _)m

http://goa.k1.xrea.com/j.php?id=2&page=

↓返信ありの表示部分?
$rescom = "";
$path=dirname("http://".$SERVER_NAME.$PHP_SELF);
$fd2=fopen($res,"r");
while (!feof($fd2)) {
$buffer = fgets($fd2, 4096);
$data = explode("<>", $buffer);
if($data[0]==$id) $rescom = "<br>>> <a href=\"$path/chtml.php?res=$id&page=$page\">返信あり</a>";
}
fclose($fd2);

↓res.logの中身

1<>1074872857<>てすと<>てすと<>pc<>211.6.49.226<>Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; (R1 1.3))
1<>1074873090<>あいうえ<>あかさた<>pc<>211.6.49.226<>Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; (R1 1.3))
1<>1074875789<>どうですか?<>そうですか<>pc<>211.6.49.226<>Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; (R1 1.3))
2<>1074876582<>?<>ぉぉぉテスト<br><>pc<>211.6.49.226<>Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; (R1 1.3))
2<>1074877568<>いごっそ<>いごっそ<>pc<>211.6.49.226<>Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; (R1 1.3))
2<>1074877795<>くるぶし<>ぺやんぐ<>pc<>211.6.49.226<>Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; (R1 1.3))

宜しくお願いしますm(_ _)m
0707nobodyさん04/01/24 18:51ID:yESrv3M6
ネットサーフレスキューweb裏技で配布してる
シンプルなBBSの改造をしたいんだけど
改造初心者なので誰か助けてくらさい

http://www.rescue.ne.jp/cgi/bbs/

1 題名をなくしたい(「題名」フォームの部分を消したら「題名を入力してください」とエラー)
2 削除キーをなくしたい
3 記事が入力通りに改行されるようにしたい
4 出力文字サイズを変えたい

最近配布を始めたCGIらしいのでサポートとか少なくて、
改造されたものもあんま配布されてないみたいだったんで…
誰か助けて
設置は無事出来ました
0708nobodyさん04/01/24 19:09ID:???
>>707
ところで>>1はご覧になりました?
「少しは自分で考えること。」
0709nobodyさん04/01/24 19:13ID:???
小一時間は
0710nobodyさん04/01/24 19:14ID:???
>>708
敷居が高いようで、出直します。
お邪魔しました。
0711nobodyさん04/01/24 19:53ID:???
高いのは敷居じゃなくて、あんたの要求。
0712nobodyさん04/01/24 21:17ID:???
> 敷居が高いようで

どこがだろ?
0713nobodyさん04/01/25 01:44ID:???
>>710
敷居が高いんじゃなくて、あんたのいる位置が低い。
0714nobodyさん04/01/25 01:46ID:???
>>706
これだけデータ構造とかがわかってて、どうしてできないのかむしろそっちが不思議。
関係のある書き込みの数をカウントすればいいだけの話だろう?
071570604/01/25 02:14ID:9zQH+F4M
>>714 返事どうもです。

なんとなーくココかな?って部分は予想できるんですけど、
スクリプトの記述はまったくわからないです…

流れは、参照したres.logの先頭の1とか2のid番号をカウントして、
それを表示させるんですよね。

投稿されたログに連番を付ける箇所にすごいヒントがあるような…
でもどう書いてやればいいのか(; ;)?

$lines = file($log);
$st = (!$_GET['page']) ? 0 : $_GET['page'];

for ($i=$st; $i<$st+$page_def; $i++) {
if ($lines[$i] == "") break;
$imgsrc = $body = $subject = "";
list($id, $ptime, $subject, $from, $body, $att,) = explode("<>", $lines[$i]);

助言くださいm(_ _)m
0716nobodyさん04/01/25 04:01ID:A2CJsmcE
かなり悩んでます。
Perlでユーザーを追加するスクリプトをコーディングしているんですが、
パスワードの作成で躓いています。

シェルの内容は以下の通りです。
#!/usr/bin/perl
open(IN, "userlist.txt");
while($user=<IN>){
@user=split(/,/,$user);
`useradd $user[0]`;
`passwd $user[1]`;
}
でuserkist.txtの内容は、
user,pass
user1,pass2
です。
パスワードの設定がどうしてもうまくいきません。
どなたかご教授お願いします。
0717nobodyさん04/01/25 04:38ID:???
716はマルチにつき放置で
0718nobodyさん04/01/25 13:00ID:A2CJsmcE
>>717
てゆうか、分からないだけでしょ。
0719nobodyさん04/01/25 15:29ID:???
>>716
passwdの使い方について調べましょ
だって、useraddしたあと"passwd パスワード文字列"実行したって、
追加したユーザーのパスワードの設定にはならないでしょ
0720nobodyさん04/01/25 15:30ID:???
そもそも
"passwd パスワード文字列"って書式はあったっけ?
記憶あいまいスマソ

OSにもよるんだろうけど。
0721nobodyさん04/01/25 16:17ID:???
>>716
http://pc.2ch.net/test/read.cgi/linux/1074773471/221
http://pc.2ch.net/test/read.cgi/linux/1074773471/235
http://pc.2ch.net/test/read.cgi/linux/1071233442/951
http://pc.2ch.net/test/read.cgi/linux/1071233442/964
http://pc2.2ch.net/test/read.cgi/php/1073460282/241
http://pc2.2ch.net/test/read.cgi/php/1072896288/698
改造ネタじゃないし放置でいいよ。
>>719-720の話も上のスレのどっかで出てた。
0722nobodyさん04/01/25 19:47ID:9nTeNh78
kent氏のyybbsを改造中なんですが
コメント文中で#から始まる行を記事背景と同じ色にして
―つまり見えないようにしました。

$com =~ s#(^|br>)(#)(.*?)($|<)#$1$2<font color=\"$tblCol\">$3</font>$4#g;

合ってますよね?(^^;
それで本当は#じゃなく、半角の#にしたいんですが
どう書き換えればいいでしょうか?
ただ#→#だと、当然のようにスクリプトエラーになるんですが…。
ご教授おねがいします。
0723nobodyさん04/01/25 19:58ID:???
ここの掲示板で連続スレッドを防止する機能は作れないでしょうか?
できたらスレッド立ててから10日間モウ一つのスレ立てれないようにしたいんですが

Mini Thread
http://www.flashcgi.net/download.html
0724nobodyさん04/01/25 20:01ID:???
で、少しは自分で考えたわけ?
072572304/01/25 20:05ID:???
すみません、CGI初心者なんです
0726nobodyさん04/01/25 20:07ID:???
>>722
全角シャープを、\#に変えてみれ。
どうなった?
0727nobodyさん04/01/25 20:10ID:???
>>725
CGIとPerlとPHPと区別がつくようになってから出直しなさい。
言語の知識がない人間に改造なんかできるわけないだろう?
0728nobodyさん04/01/25 20:12ID:???
>>716
マジレスしてやろう。
マルチをすると回答がよくつくと思ってたら間違いだ。
実際はその逆。
マルチは回答者の感情を逆撫でして、回答しようと言う気を無くさせる行為だ。
本当に回答が欲しいなら、
1.全てのマルチしたスレでマルチしたことを謝り、質問を撤回し、
2.一つのスレに絞ること。
それをやって初めて回答者のお前に対する感情はニュートラルに戻る。
ま、ニュートラルに戻るだけで、有効な回答が得らるかどうかはまた別問題だが、
確実なことは現状では絶対に回答は得られないと言うことだ。

本当に回答が欲しいなら、その辺よく考えろ。
0729nobodyさん04/01/25 20:40ID:???
>>726
できました。ありがとうございます。
さっきやってみたんだけどなぁ、俺の勘違いか(;´Д⊂)
073072304/01/25 23:59ID:???
HELP
0731nobodyさん04/01/26 00:09ID:???
>>730
ああだりい。
どう言う仕様かもっとはっきりさせろ。
スレッドを10日に一度しか作れないのか、
それとも、10日たつと一番古いスレッドが落ちて新しいスレッドが立てられるようになるのか。

ま、そんな程度のこと、一番古いスレッドと、最後にスレッドが立った日時をどっかに保存しておけば、
何ほどもなくできることだから、みんなだるくて答えてないんだよ。
「掛け算九九のやり方教えてください」なんて言われてもだるいだけだよ。
0732nobodyさん04/01/26 00:18ID:???
>>730
なんで配布先のサポート板で聞かないの?
0733nobodyさん04/01/26 00:36ID:???
ああ、掲示板全体のスレッドが10日に最大1個しか増えないってことなのか。
オレはてっきり一人の人に対して10日たたないと別スレを建てられないって話かと思ってた。
あいまいな仕様ってのは怖いよなぁ
0734nobodyさん04/01/26 06:38ID:???
苦労して答えても「ちょっとやりたいことと違うんです」ってさらっと言われたらかなわんからなぁ。
0735nobodyさん04/01/26 06:43ID:???
>>734
その前に仕様の穴に気付くべきですよ。SEごっこもいいですがやるからにはちゃんとやらんと。
0736nobodyさん04/01/26 09:53ID:???
>>732
えらい。それが一番正しい。
0737nobodyさん04/01/26 10:51ID:???
joyful noteで、アップした画像をクリックしたらホームページに飛ぶように
改造するのは難しいでしょうか。

下の掲示板みたいな感じです。
http://www.fuchu.or.jp/~kagu/joyful/joyful.cgi
0738nobodyさん04/01/26 11:06ID:???
>>737
HTMLの問題だろ?
それに、そんな風に改造している奴がいるんなら、そいつに聞くのが一番早いだろ。
0739nobodyさん04/01/26 12:18ID:???
>>735
穴のない仕様書を提示するのが先。
面倒なことは下の立場(質問者)が負うべき。
074073004/01/26 16:06ID:???
>>731
スレ立てたら立てた人はそれから10日間立てられないようにキボンヌ

>>732
サポートが悪いです

>>735
肛門デスカ?
0741nobodyさん04/01/26 16:14ID:???
>>740
自分でいじれもしないやつがそんなサポートが悪いものを使って
改造したいと言うのが一番悪い
074274004/01/26 16:58ID:???
サポート悪いかもしれんが良品
074370604/01/26 17:15ID:???
特定の文字が、改行された複数行にあるときにそれをカウントするには
どうすればいいですか?
count($id)にするとその列でしか数えてくれないので1としかでませんでした。
0744nobodyさん04/01/26 21:48ID:KP+mPnoD
スレ違いだったらすいません。

apeboard+を使ってます。
掲示板に書き込んで、そのページのソースを見ると、

<!--res-->

とあるんですが、それを出ないようにできませんか?
ちなみにcgi本体もスキンも弄ってません。
0745nobodyさん04/01/26 22:11ID:???
>>744
あのさぁ、必要もなくてそうなってると思う?
出なくしてどうなってもいいんだね?
0746nobodyさん04/01/26 22:41ID:???
>745の言う通り、伊達や酔狂で表示してるわけではなさそうだな。
どうも、レス表示部のスキン関係の処理に使用してる様子。
print文で書き出す直前にいじればいけると思うけど、恐らく現状でかなり重いであろう処理がさらに重くなる。

というか、個人的にはコメント文を消す意義が見つからない。
わざわざ2chで質問して、他人の手を煩わせてまで消す理由は?
0747nobodyさん04/01/26 22:44ID:???
>>746
imgboardのソースのコメントは消したくなるがな……。
0748nobodyさん04/01/27 00:03ID:???
>>747
気持ちは分からなくもないけど、
あれを使ってる時点でおかしい。
自分で作ったら2〜30KB程度で済むものを。
0749nobodyさん04/01/27 00:34ID:???
>>706
count()って、普通配列の要素数数えるものだぞ。
配列以外に使ってもいいが、その場合は1しか返さん(NULLを除く)。
文字列を数えるときはsubstr_count()。
0750nobodyさん04/01/27 01:18ID:???
このスレ見てると、diffの使い方教えてあげたくなってくる。
075170604/01/27 01:22ID:+V74HcR4
>>749さん 返事ありがとう。

始めいろいろ調べてるうちにそれを試してみたんですがエラーが返ってきました。

Warning: Wrong parameter count for substr_count() in /virtual/goa/public_html/j.php on line 86

下のように書いたんですけど使い方間違ってますか?

$ct = substr_count($id);
if($data[0]==$id) $rescom = "<br>>> <a href=\"$path/chtml.php?res=$id&page=$page\">返信あり</a>($ct)";
075270604/01/27 01:25ID:???
あれ・・
<br>以降は&gt;&gt;です
0753nobodyさん04/01/27 01:35ID:???
>>751
うるせえだまれエラーメッセージの内容くらい自分で調べろ。
>Wrong parameter count for substr_count()
「substr_count()に与えたcountが、悪い(正しくない)パラメータだ」
なんだから、substr_count()に何を与えればいいのか見直せよ、馬鹿。
0754nobodyさん04/01/27 01:38ID:???
>>742
・おまえにとって良品が他の全員に対して良品だとは限らない。
・改造したいと思った時点で、そいつにとってそれは最良の品ではない。
・サポートが悪いのは誰のせいだろうか。もしかしたら、糞つまらない質問だったらサポートも悪くなるかも。
・自分でいじれるようになろうとしないやつは成長できない屑。よって教える価値なし。
0755saeko☆04/01/27 03:35ID:???
もっと書込み隊にアイコン登録とランダムカラー付け足したいんですがどうすればよいでしょうか?
0756nobodyさん04/01/27 04:19ID:???
>>755
出せる金額とメールアドレスを晒してひたすら待つ。
0757nobodyさん04/01/27 04:33ID:???
>>751
「substr_count()のパラメータの数(count)が正しくない」

>>755
有名&ガイシュツなのかも知れんが、リンクぐらい書いてくれ。一行ですむのだし。

アイコン登録は、画像をアップロードし、メインスクリプト(mkakikomitai.cgi)を書き換えればよい。
$icon_gif[X] = ...
$icon_gif_w[X] = ...
に追加するだけ。
あと、画像をアップするには、enctypeが変わるので、
フォームデータを受け取る部分(sub decode)も修正。

ただ、スクリプト自身に書き込み権限が必要なので、suExecのない共用サーバでは危険。
設定を外部ファイルに持たせればよいが、それが出来れば、こんなところで質問しないか。

ランダムカラーは、どの時点でランダムなのか分からんが、
$FORM{'color(_f)'}か$color(_f)をランダムに変えるだけだろう。
075875704/01/27 04:54ID:???
ある意味756は正しい。
もし仕事なら、2,3万は要求する。
(かつてカウンター1個10万で受注した。
 バイトだったので、大半は会社にもってかれたが。)
0759nobodyさん04/01/27 05:03ID:???
ここも質問用のテンプレを用意するべきかもなぁ
076070604/01/27 08:13ID:8T/PgOL1
fgetsは参照したlogの1行だけ読むってことが分かったんですけど、
これだとlogに書き込まれた全$idはカウントできないですよね。
しかも文字配列が"<>"でexplodeされてるし。

log全体を参照するには file_get_contents か file を使うのかと試してみたんですが
エラーどころかしばらく"ページが表示できません"状態になりました…。

log全体を参照させるのはどうすればいいですか?

$path=dirname("http://".$SERVER_NAME.$PHP_SELF);
$fd2=fopen($res,"r");
while (!feof($fd2)) {<br>
$buffer =fgets($fd2 , 4096);
$data = explode("<>", $buffer);
$ct = substr_count($data[0] , "$id");
if($data[0]==$id) $rescom = "<br>>> <a href=\"$path/chtml.php?res=$id&page=$page\">返信あり</a>($ct)";
}
fclose($fd2);
0761nobodyさん04/01/27 09:27ID:ChIQ2Q6b
Perlだったら while(<FH>) みたいな制御に入れるよな。
あ、PHPか・・・勘違いスマソ
0762nobodyさん04/01/27 15:27ID:???
手元にPHPの処理系を用意してしまった方がいいかもな。
素直に掲示板のログオープン処理を参考にしたら?
0763nobodyさん04/01/27 16:19ID:???
>>706
よく読んでみると、$idには何が入っているのだ?

logがあまり大きくないなら、
$path = dirname("http://".$SERVER_NAME.$PHP_SELF);
$log = file_get_contents($res);
$fd2 = fopen($res, "r");
while (!feof($fd2)) {
 $buffer = fgets($fd2, 4096);
 $data = explode("<>", $buffer);
 if($data[0]==$id) {
  $ct = preg_match_all("/^$id<>/m", $log) - 1;
  $rescom = "<br>&gt;&gt; <a href=\"$path/chtml.php?res=$id&page=$page\">返信あり</a>($ct)";
 }
}
fclose($fd2);
で良いかな。

それより、レス数をlogに書き込んでおくのが良いかと思われる。
0764燦獄詩藍金山椅渉夫04/01/27 16:54ID:???
0765nobodyさん04/01/27 22:13ID:???
http://tsuwa.s41.xrea.com/script.html
あんまし人来てないが、、
0766?&&fr&ur&&siranasr&&a&nr04/01/27 22:19ID:???
a
076770604/01/28 00:36ID:???
>>763さん ありがとうございます!

さっそく>>763さんの試してみたんですがParse error : line 111がでたんですけど、
111はlineの一番最後で </body></html>で終わってるんですよね。
試しにタグを削ってみたら今度はline 110にParse errorがでました。
line 110は ?> です。
処理が終わってないってことですか?
あとlogにレス数を書き込むっていうのは各レスに連番を振ればいいんですか?

$idには親記事の投稿番号が入ってます。
その親記事にレスした子記事のlogの頭に親の番号が付く形です。
下のように記録されてます。

↓$id<>time<>$name<>$comment<>$ua<>$ip<>$_SERVER['HTTP_USER_AGENT']の順
1<>1074872857<>てすと<>てすと<>pc<>211.6.49.226<>Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; (R1 1.3))
076876304/01/28 00:59ID:???
>>706
なるほど、メインの書き込みと、レスが違うファイルに保存されているのね。
それなら、$ct = preg_match_all(……) のあとの"-1"はいらない。

それから、そのParse errorは、括弧かダブルクウォートの対応が間違っている可能性が高い。

もしレス数を登録するとしたら、メインのログに書き込むべし。
076970604/01/28 01:51ID:VL5E7sRe
>>763さん ごめんなさい、1箇所 } で閉じるの忘れてました…

Parse errorは直りました。
Warning : preg_match_all() expects at least 3 parameters, 2 given in ***** line 88で
一つパラメーターが足りないってことだと思うんですけど、
array matchesはどのように書けばいいですか?

何回もすみません。
077070604/01/28 02:23ID:???
>>763さん 出来ました!!
array matchesは $ct でいいんですね。

http://goa.k1.xrea.com/j.php

いやぁ、ほんと助かりました。
これをきっかけに自分で掲示板組めるよにphp勉強してみようかなぁ。

何も知らない自分にここまで付き合って下さってほんとありがとうございますm(_ _)m
077176304/01/28 03:30ID:???
>>706
すまん。preg_match_allは引数3つ必要だった。
3つ目は使わないので何でも良いが、$ctだと紛らわしいので、別の方が良い。
0772nobodyさん04/01/30 20:48ID:O0NkkeT3
はじめまして
snow*materiaのtwin.cgiというアイコンチャットを
設置してちょびちょび改造しているのですが、
このチャットに「魔法の呪文」という設定があって
その中に「予備ログを全部時刻昇順で表示」というものがあり、
ログをアイコン、背景、タグ効果などが反映された状態で上から読めるように表示されます。
これをHTMLとして書き出したいのですが、それは可能でしょうか?
また可能な場合どういった改造を行えば宜しいでしょうか

あと入室中にアイコンを代えるセレクトボックスを追加したいのですが、
デフォルトで「一定の条件下で可能」に作られているのですがこれを情動的にしたいのです。

一応サイトにサポートBBSがあったので質問したら10日まっても一つのレスも付きませんでしたので
削除してこっちに描いてみたり。

どなたかお教えくださいませ。
ttp://useyan.pupu.jp/s/cgis/twin.html
0773nobodyさん04/01/30 23:12ID:???
>>772
HTMLとして書き出すっていう意味がよくわからない。
表示順を常時上下逆にしたいのか?
0774nobodyさん04/01/30 23:53ID:O0NkkeT3
いえ、その「魔法の呪文」入力で「表示を時刻の若い順から」で全て下のフレームに
表示されるのですが、それをそのままHTMLとして保存したいのです。
CGIなのでそのまま「名前を付けて保存」などでは保存できませんでした。
ミーティングや歓談などのログとして参加者に配布できればと思いまして。
077577204/01/30 23:54ID:O0NkkeT3
>>774
の発言は
>>773 さんへの返答です。
0776nobodyさん04/01/31 00:10ID:???
うわ、CGIにHTML書き出し機能追加しようとしてた俺が阿呆みたいだ('A`)
IEならログ表示部で右クリックしてソースを表示、そのソースを保存。
あるいはIEなんて糞ブラウザを捨て、OperaやMozillaを使えばログ表示部のフレームを右クリックから直接保存できる。
で、保存後に拡張子をhtmlに変えてアップロード。
iniの$icondirが絶対パスなら何処においても何の問題も無いはず。


情動的ってのが「常にアイコンを選択できるようにする」って意味なら、すべき事は以下のとおり。
投稿用フォームにアイコン選択欄を追加。455行目のhiddenをチェックボックスに書き換え。
次にアイコン=状態($cond)を決めてる1070行目あたり。書き換え方は自動アイコン変更処理をどうしたいかによる。
いらんなら1072-1091行目をバサッと削除orコメント化。
残しておけば自動処理がユーザの選択に優越する。逆をしたい場合は知らん。
077777604/01/31 00:13ID:???
>776
すまん動揺した。後半、チェックボックスなわけないな_| ̄|○
ドロップダウンメニューかラジオボタンか。
077877604/01/31 00:25ID:???
…ごめん、全然嘘だ。776後半全部と777忘れてくれ。
USBケーブルで吊って来る∧||∧
0779nobodyさん04/01/31 00:26ID:???
>>774
$writehtm = 1; # 1:HTMLに書き出して表示, 0;全部CGIで実行.

1ならtwin.htmに希望と上下は逆だけど常時書き込まれるが
どうしても逆がいいのか?
0780nobodyさん04/01/31 00:37ID:???
>778
い�`。チャットのスクリプトなんて見通しの悪いもんだ。

twin.plの149行目が「一定の条件下」の判断場所。
丸ごと削除すればtwin.cgiの頭のほうの設定だけに従うはず。
他に影響する事は無い                    と思う。
078177404/01/31 00:42ID:???
えぇと776さんの方法なのですが、拡張子がCGIまでなので、「呪文を入力した状態」での表示がよくわかりません
そしてcgiのソースが表示されてしまいログは表示されません。
ちなみにノンフレーム状態で「過去ログ表示の魔法」を入力したところ
エラーになってしまいました。(配布元のオリジナル設置でもなったので恐らく不可)

>>779 さん
設置しているスペースが弱い鯖なのでさいしょから設定は1にでHTMLに書き出しているのですが
それですと「表示可能数」の行数しか表示されません。
ので簡単な話ならそれでも可能なのですが数時間、10人近くとかの膨大なログをまさか全部表示にしているわけにも行きませんし。
ログファイルを除いてみたところ、どうもログへの書き出しはそのまま時刻昇順で書き込まれておりましたので
それならログを直接CGI部の画像アドレスなどを参照して直接HTMLで出力などはできないのかなぁ、と思いまして。
078277404/01/31 00:55ID:???
>>778さん
なりました!有難う御座います。
これは今の段階ですとアイコンの選択ではなく直接適すとボックスに画像名を入力する形になっておりますが。
セレクトボックスにした場合、内容の読込先はどうしたらよいのでしょうか?

また、名前「管理人」で入ると専用アイコン等、特定の名前の際には強制的にそのアイコンと文字色に変わる、という機能が
この場合入室後に変更で書き直すと変化しません。
これは機能可能でしょうか?
0783nobodyさん04/01/31 02:20ID:???
質問させていただきます。
先日Arseno ver2.1.4を使って辞書を作り、とりあえず一通りの設置はうまくいきました。
で、以前、投稿された内容が上昇していくのではなく、下降していく様に変更されている辞書を見かけたことがあり、
できればそういう設定にしたいと思っているのですが、どこをどう変更したらいいのでしょうか?
readmeどおりに設置する程度の知識しかないため、スクリプトのどの部分を抜粋して書き込めばいいかも分かりません。
申し訳ありません。
0784nobodyさん04/01/31 02:35ID:???
>>1ぐらい読んでください。
0785nobodyさん04/01/31 02:57ID:???
>>783そのArseno ver2.1.4のソースのありかぐらい教えてくれ……
0786nobodyさん04/01/31 03:22ID:???
>>785
失礼しました。辞書といえば大抵これなので有名なものかと思ってしまいました。
現在、制作者さんのHPが閉鎖されてしまっているため、下記ページで再配布されています。
ttp://www.geocities.co.jp/SiliconValley/1781/arseno/
再配布については、作者さんの許可はあるようです。
0787nobodyさん04/01/31 04:08ID:???
>>786
dr.cgiのsub show_def内の、print "Content-Type: text/html\n\n";の直前か直後に、
@defs = reverse @defs;
これで良いと思う。
078878304/01/31 04:38ID:???
>>787
直後につけることで変更させることができました。
乏しい情報の中でわざわざすいませんでした。
本当にありがとうございました。
0789nobodyさん04/01/31 13:04ID:???
最近パッチワークCGIが多いな。
0790nobodyさん04/01/31 22:58ID:???
こんなCGI探してますスレッドより誘導されてきました。

現在某画像UP掲示板を運営しており、利用者の増加に伴うCGIの入替を検討しています。
現在はimgboad.cgiを利用しておりますが、評判が良くない事とまれに正常に動作しない場合があるのが理由です。

新しいCGIには、「Child Treeマルチファイルアップ掲示板」
ttp://www.cj-c.com/cgi_s/cbbs.htmを検討しておりますが、どうしても必須な機能が1つ足りません。

連続投稿規制に関する機能なのですが、「1つ投稿したら*分は投稿できない」ではなく、「*分以内には*回まで投稿可能」
という制限機能が必須なのです。(本機能はimgboad.cgiには実装されていますが、Child Treeにはありませんでした…)

「Child Treeマルチファイルアップ掲示板」のインターフェイスは気に入っており、是非利用したいのですが、何とか上記の機能を実装できませんでしょうか?
テンブレの指示通り http://homepage3.nifty.com/qvga/ftp/cbbs.txt にCGIをテキストでUPしておきました。
丸投げでの依頼をする所でない事は重々承知ですが、自分の力ではどうにもならない為、藁にもすがる気持ちで書き込みさせて頂きます。
長文となってしまいましたが、知識のある方のご協力をお願い致します。
0791nobodyさん04/01/31 23:55ID:???
>>790
>丸投げでの依頼をする所でない事は重々承知ですが。

分かっているなら(略

俺?知識があるなんて恐れ多くて言えないから協力せんけど。
0792nobodyさん04/02/01 08:07ID:???
>>791
それじゃなんで来たんだ?屑
分からないならだまっとけよ塵
0793未承諾広告※ ◆aiY4htt2.2 04/02/01 10:07ID:???
>>790
ご予算は如何ほどに?( ̄ー ̄)ニヤリ
変数の扱いが無茶苦茶なので割高になるかと思いますけれども。。。(哀)
取り敢えず、 BBQ が落ち着いてから。
079479104/02/01 11:53ID:???
>>793
なるほど。
納期を長く頂ければ格安でご提供することも可能ですが、いかが致しますか?

よく考えると人件費含めて他人の資産を使おうとしてるんだから、対価が発生するのがデフォルトだよな。
死にかけてる奴とかなら情で無償の奉仕が発生してもそれは人間として正しいわけだが。
それなりの生活水準の奴を無償で助ける義理ってのは無いよな。

まぁ、やな世の中だってこった。
0795nobodyさん04/02/01 16:55ID:???
>>793
禿同。
ただでさえ他人が書いたものはいじる気にならんのに
これだけ汚いスクリプトは読むまえにリタイアだよw
まぁ、知識がないおれには読む書く以前の問題だけどね。
■ このスレッドは過去ログ倉庫に格納されています