【 スクリプト改造工房 PART 7 】
■ このスレッドは過去ログ倉庫に格納されています
0001sage
03/09/17 15:28ID:ZcvVdw5C#================================
# スレッドの説明
#================================
「スクリプトを改造したいけどやりかたわかんないよー」という人がいましたら
ここで聞いてください。ひょっとしたらアドバイス出来るかもしれません。
質問するときは以下の点に注意して書いて下さい
(1) そのスクリプトの内容と置いてある場所を明記する (txtファイルでUPすればなお良い)
(2) どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
(3) 出来るだけ詳しく書くこと。少しは自分で考えること。できれば御礼も言ったほうが良い
※答えてくれないからといって逆ギレする厨はお断り
過去ログ>>2
0673nobodyさん
04/01/17 21:03ID:???1413:
($num,$key,$nam,$mal,$url,$ico,$tit,$mes,$adm,$tim,$ipa,$rmh)
($num,$key,$nam,$mal,$url,$ico,$tit,$mes,$adm,$tim,$ipa,$rmh,$ua)
0674未承諾広告※ ◆aiY4htt2.2
04/01/17 22:41ID:???0675667
04/01/18 01:03ID:???ありがとうございます。さっそく作業に取り掛かります。
AUのUAはUP.Browserを含んでいると思います。
関係ないですが、AUのUAって回文みたいですね。
0676nobodyさん
04/01/18 05:27ID:???2371:
$rmh = (split(/,/,$log))[11];
$rmh = (split(/,/,$log))[11];$ua = (split(/,/,$log))[12];
2379:
$log[11] = $rmh;
$log[11] = $rmh;$log[12] = $ua;
2391:
$log[11] = $rmh;
$log[11] = $rmh;$log[12] = $ua;
インフルエンザかな?
0677nobodyさん
04/01/18 05:34ID:???> 最近のAUはmobile browserなので、振り分けをi-mode用にしたいんです。
俺携帯に疎いから、よくわかんないけど
未承諾広告※タソ紹介の技術情報を見ると、
> au C3001H であれば、
> 「HTTP_USER_AGENT=KDDI-HI21 UP. Browser/6.0.2.254(GUI) MMP/1.1」と表示されます。
と書いてある。
これだと、2080行目の
elsif ($mob{car} eq 'UP.Browser') {
に引っかからないのがまずいのかな?
elsif ($mob{car} =~ /UP.Browser/) {
これでどうだろうか?
0678667
04/01/18 09:08ID:???ありがとうございます!完璧です。
あとはソースいじくって4.01strictにすれば完成します。ありがとう御座いました。
どうしようもなくて途方にくれてたので心底助かりました。
0679nobodyさん
04/01/18 11:44ID:???喜んでいる所で申し訳ないが・・・
修正 その3 (^^;;;
1413:
($num,$key,$nam,$mal,$url,$ico,$tit,$mes,$adm,$tim,$ipa,$rmh)
($num,$key,$nam,$mal,$url,$ico,$tit,$mes,$adm,$tim,$ipa,$rmh,$ua)
(ま、ここのブロックでは使わないからどうでもいいが・・・)
完全にインフルエンザだな。
病院に逝ったほうがいいな。
0680nobodyさん
04/01/18 11:55ID:???0681nobodyさん
04/01/18 18:07ID:???「○ sec たたないと書けません。(○回目、○ sec しかたっていない。)○」
と言うのを表示させたいのですが、○回目の所を1回表示ごとに1増加することがどうやるか分かりません。
規制に入れるのは考えなくても良いです。
お願いします。
0683681
04/01/18 18:32ID:???(1) どの掲示板スクリプトにも対応
(2) 2chの様に「○ sec たたないと書けません。(○回目、○ sec しかたっていない。)○」と表示させる。
(3) 詳しく考えて、、○回目の所を1回表示ごとに1増加することがどうやるかだけ、分からなかった
これで宜しいでしょうか?
0684nobodyさん
04/01/18 18:43ID:???(1)の条件を満たすためには、スクリプトのかけらそのものではなく考え方を提示するしかない。
なので、そのものずばりを求めているならとっとと帰れ。
やりたいことはなんとなくわかったが、そのためには、アクセスしてきたマシンを一意に特定する必要がある。
この辺は、IPアドレスや、それにユーザーエージェントを併用するのが普通だろう。
これによってユーザーを特定した後、それぞれのユーザー毎に、
「最終書き込み時刻」と「その時刻以降のアクセス回数」を保存するようにすればよい。
アクセスがあった時に、以前のデータを見て表示用テキストをいじり、
現在のデータを新しい数値に変えて保存すると、上記実装が完成するだろう。
データの保存は、ファイルをflockするなり、データベースを使うなり様々な方法があり、
それらの選択はスクリプト作成者の知識と技量に左右される。
オマエの提示した条件ではこれ以上詳しくは無理だ。
さあ、教えてやったんだからとっとと帰れ。
0685681
04/01/18 19:09ID:???おかげでできました
0686nobodyさん
04/01/18 21:09ID:???このCGIなんですが、携帯電話からでも遅れるようにしたいんです。
http://www5a.biglobe.ne.jp/~fnao/cgi_nao/chukyu3.htm
ここにスプリクトがあります。
自分でも試みてみたんですが、
http://members8.tsukaeru.net/tatsuya7bom/cgi-bin/mail.htm
http://members8.tsukaeru.net/tatsuya7bom/cgi-bin/mail.cgi
エラーで設置すらできませんでした。
無知な自分ですが、アドバイスなどよろしくおねがいします。
0687nobodyさん
04/01/18 22:33ID:???設置すらできないものが改造とか抜かすな。
設置できないものの大半は設定ミスだ。
自分の使ってる鯖のPerlのパスとかsendmailのパスとかをよく調べろ。
0688686
04/01/18 23:08ID:???設置しました。しかし携帯から送信しようとすると、
cgi-lib.pl:Unknown Content-type:application/x-www-form-urlencoded;charset=shift_jis
となります。ezwebなのですが、対処法はありますか?
0689nobodyさん
04/01/18 23:32ID:???cgi-lib.pl が文句たれてるんだろ?
携帯の仕様を変更するのは事実上不可能だから、
1.cgi-lib.pl を改造するか
2.cgi-lib.pl を使わないで、他のものを使うように改造するか
だろ?
推測できるお前の実力からして、どっちもオススメはできないが、
しかしこれしかないな。
1.はライブラリの意味がなくなるのでそもそもスマートな方法ではない。
2.が妥当だろうし、代替手段としてCGI.pmもある。しかし、
http://perldoc.jp/docs/modules/CGI.pm-2.89/CGI.pod
これ読もうとする意思があるかどうかが問題になる。
言っておくが、「誰かが解答のスクリプトを提示してくれる」みたいな甘いことは考えるなよ。
0690nobodyさん
04/01/19 00:01ID:???嘘つきのマルチは氏ね
http://pc2.2ch.net/test/read.cgi/php/1011174442/80-
0692667
04/01/19 02:09ID:???ありがとうございます。>>673と同じ内容ですよね?
うまくいきました。
> 完全にインフルエンザだな。
危険ですので早めにいかれた方がいいですよ。ご自愛を。
0693nobodyさん
04/01/19 23:43ID:ueJIFoYfhttp://cuo.press.ne.jp/cgi/b05_1.html
ここで紹介されているユーザー専用アイコンを設定するのを加えたいんですけど
v4.1をベースに改造ポイントが指摘されてるため上手く出来ない状況です
”2.処理を加える”という所で似てるポイントだと思いyyini.cgiの298行目に加えたらエラーが出たりして
この処理をどこに加えたらいいのかわからず困ってます。
ソースですがKENTさんのとこのそのままですが
http://page.freett.com/yataro/yyini.txt
http://page.freett.com/yataro/yybbs.txt
アドバイスよろしくおねがいします。
0694nobodyさん
04/01/20 21:03ID:???……アドバイスったってなあ。
なんでレスつかないか自分で理由わかってる?
まあいいか。
v4.1を手に入れて改造するのはどうかね。一番キミ自身の労力が少ないと思うのだが。
0695nobodyさん
04/01/21 07:26ID:???書き込み処理を行なっているのはyyregi.cgiなので、こっちを改造するのが正解。
sub formCheck内、L.405付近の管理用アイコン直前かね。
多分そのままコピペでいけると思うが、確認はしてない。
wwini.cgiを改造したいならL.375付近だろうけど、wwregiをいじる方をお勧めする。
0696695
04/01/21 07:27ID:???最終行、wwregi→yyregi、wwini→yyini に訂正。
0697693
04/01/21 12:31ID:KLRTDEd/>>696
どうも。yyregiの405行目あたりに加えてみました。
ただ書き込もうとすると500のサーバーエラーが出て加えた文で何が原因かわからない状況です。
すいませんけどわかる方いましたらよろしくお願いします
http://page.freett.com/yataro/yyregi.txt
0698nobodyさん
04/01/21 19:24ID:???な? 仏心出したっていいことないって、こんな手合いにはさ。
>>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:???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:meUkJhrG2ちゃんねるのように半角かなだけの投稿にも文字化けを起こさずに対処させるにはどうすればいいでしょうか。
元々半角かなは一切使えない掲示板だったのですが、ゼロちゃんスクリプトを参考に自分なりに改造してみた結果以下のようなデコード処理に行き着きました。
ttp://www.geocities.co.jp//HeartLand-Cosmos/9800/de.txt
拙い文章で申し訳ありませんがご教授の程よろしくお願いします。
0703702
04/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環境で化けるかもしれない。
気にしたいなら構わないけど、そこまで行くと趣味の領域になってくると思う。
0705702
04/01/24 00:21ID:???返事が遅れて申し訳ありませんでした。
>動いているコードに手を触れるなという格言がある。
これ、すごく胸に響くものがありました。
正直、レスがないままだったらたぶん消してたと思うのですがそのまま残しておくことにします。
御助言ありがとうございました。
0706nobodyさん
04/01/24 02:13ID:E5Iw/RSh携帯用ページで、投稿された写真に返信があったとき
返信ありのリンクの横に何件レスがあるか数字を表示させたいです。
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シンプルなBBSの改造をしたいんだけど
改造初心者なので誰か助けてくらさい
http://www.rescue.ne.jp/cgi/bbs/
1 題名をなくしたい(「題名」フォームの部分を消したら「題名を入力してください」とエラー)
2 削除キーをなくしたい
3 記事が入力通りに改行されるようにしたい
4 出力文字サイズを変えたい
最近配布を始めたCGIらしいのでサポートとか少なくて、
改造されたものもあんま配布されてないみたいだったんで…
誰か助けて
設置は無事出来ました
0709nobodyさん
04/01/24 19:13ID:???0711nobodyさん
04/01/24 19:53ID:???0712nobodyさん
04/01/24 21:17ID:???どこがだろ?
0714nobodyさん
04/01/25 01:46ID:???これだけデータ構造とかがわかってて、どうしてできないのかむしろそっちが不思議。
関係のある書き込みの数をカウントすればいいだけの話だろう?
0715706
04/01/25 02:14ID:9zQH+F4Mなんとなーくココかな?って部分は予想できるんですけど、
スクリプトの記述はまったくわからないです…
流れは、参照した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:A2CJsmcEPerlでユーザーを追加するスクリプトをコーディングしているんですが、
パスワードの作成で躓いています。
シェルの内容は以下の通りです。
#!/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:???0718nobodyさん
04/01/25 13:00ID:A2CJsmcEてゆうか、分からないだけでしょ。
0719nobodyさん
04/01/25 15:29ID:???passwdの使い方について調べましょ
だって、useraddしたあと"passwd パスワード文字列"実行したって、
追加したユーザーのパスワードの設定にはならないでしょ
0720nobodyさん
04/01/25 15:30ID:???"passwd パスワード文字列"って書式はあったっけ?
記憶あいまいスマソ
OSにもよるんだろうけど。
0721nobodyさん
04/01/25 16:17ID:???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コメント文中で#から始まる行を記事背景と同じ色にして
―つまり見えないようにしました。
$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:???0725723
04/01/25 20:05ID:???0727nobodyさん
04/01/25 20:10ID:???CGIとPerlとPHPと区別がつくようになってから出直しなさい。
言語の知識がない人間に改造なんかできるわけないだろう?
0728nobodyさん
04/01/25 20:12ID:???マジレスしてやろう。
マルチをすると回答がよくつくと思ってたら間違いだ。
実際はその逆。
マルチは回答者の感情を逆撫でして、回答しようと言う気を無くさせる行為だ。
本当に回答が欲しいなら、
1.全てのマルチしたスレでマルチしたことを謝り、質問を撤回し、
2.一つのスレに絞ること。
それをやって初めて回答者のお前に対する感情はニュートラルに戻る。
ま、ニュートラルに戻るだけで、有効な回答が得らるかどうかはまた別問題だが、
確実なことは現状では絶対に回答は得られないと言うことだ。
本当に回答が欲しいなら、その辺よく考えろ。
0730723
04/01/25 23:59ID:???0731nobodyさん
04/01/26 00:09ID:???ああだりい。
どう言う仕様かもっとはっきりさせろ。
スレッドを10日に一度しか作れないのか、
それとも、10日たつと一番古いスレッドが落ちて新しいスレッドが立てられるようになるのか。
ま、そんな程度のこと、一番古いスレッドと、最後にスレッドが立った日時をどっかに保存しておけば、
何ほどもなくできることだから、みんなだるくて答えてないんだよ。
「掛け算九九のやり方教えてください」なんて言われてもだるいだけだよ。
0733nobodyさん
04/01/26 00:36ID:???オレはてっきり一人の人に対して10日たたないと別スレを建てられないって話かと思ってた。
あいまいな仕様ってのは怖いよなぁ
0734nobodyさん
04/01/26 06:38ID:???0737nobodyさん
04/01/26 10:51ID:???改造するのは難しいでしょうか。
下の掲示板みたいな感じです。
http://www.fuchu.or.jp/~kagu/joyful/joyful.cgi
0742740
04/01/26 16:58ID:???0743706
04/01/26 17:15ID:???どうすればいいですか?
count($id)にするとその列でしか数えてくれないので1としかでませんでした。
0744nobodyさん
04/01/26 21:48ID:KP+mPnoDapeboard+を使ってます。
掲示板に書き込んで、そのページのソースを見ると、
<!--res-->
とあるんですが、それを出ないようにできませんか?
ちなみにcgi本体もスキンも弄ってません。
0746nobodyさん
04/01/26 22:41ID:???どうも、レス表示部のスキン関係の処理に使用してる様子。
print文で書き出す直前にいじればいけると思うけど、恐らく現状でかなり重いであろう処理がさらに重くなる。
というか、個人的にはコメント文を消す意義が見つからない。
わざわざ2chで質問して、他人の手を煩わせてまで消す理由は?
0749nobodyさん
04/01/27 00:34ID:???count()って、普通配列の要素数数えるものだぞ。
配列以外に使ってもいいが、その場合は1しか返さん(NULLを除く)。
文字列を数えるときはsubstr_count()。
0750nobodyさん
04/01/27 01:18ID:???0751706
04/01/27 01:22ID:+V74HcR4始めいろいろ調べてるうちにそれを試してみたんですがエラーが返ってきました。
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)";
0752706
04/01/27 01:25ID:???<br>以降は&gt;&gt;です
0753nobodyさん
04/01/27 01:35ID:???うるせえだまれエラーメッセージの内容くらい自分で調べろ。
>Wrong parameter count for substr_count()
「substr_count()に与えたcountが、悪い(正しくない)パラメータだ」
なんだから、substr_count()に何を与えればいいのか見直せよ、馬鹿。
0754nobodyさん
04/01/27 01:38ID:???・おまえにとって良品が他の全員に対して良品だとは限らない。
・改造したいと思った時点で、そいつにとってそれは最良の品ではない。
・サポートが悪いのは誰のせいだろうか。もしかしたら、糞つまらない質問だったらサポートも悪くなるかも。
・自分でいじれるようになろうとしないやつは成長できない屑。よって教える価値なし。
0755saeko☆
04/01/27 03:35ID:???0757nobodyさん
04/01/27 04:33ID:???「substr_count()のパラメータの数(count)が正しくない」
>>755
有名&ガイシュツなのかも知れんが、リンクぐらい書いてくれ。一行ですむのだし。
アイコン登録は、画像をアップロードし、メインスクリプト(mkakikomitai.cgi)を書き換えればよい。
$icon_gif[X] = ...
$icon_gif_w[X] = ...
に追加するだけ。
あと、画像をアップするには、enctypeが変わるので、
フォームデータを受け取る部分(sub decode)も修正。
ただ、スクリプト自身に書き込み権限が必要なので、suExecのない共用サーバでは危険。
設定を外部ファイルに持たせればよいが、それが出来れば、こんなところで質問しないか。
ランダムカラーは、どの時点でランダムなのか分からんが、
$FORM{'color(_f)'}か$color(_f)をランダムに変えるだけだろう。
0758757
04/01/27 04:54ID:???もし仕事なら、2,3万は要求する。
(かつてカウンター1個10万で受注した。
バイトだったので、大半は会社にもってかれたが。)
0759nobodyさん
04/01/27 05:03ID:???0760706
04/01/27 08:13ID:8T/PgOL1これだと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あ、PHPか・・・勘違いスマソ
0762nobodyさん
04/01/27 15:27ID:???素直に掲示板のログオープン処理を参考にしたら?
0763nobodyさん
04/01/27 16:19ID:???よく読んでみると、$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:???あんまし人来てないが、、
0766?&&fr&ur&&siranasr&&a&nr
04/01/27 22:19ID:???0767706
04/01/28 00:36ID:???さっそく>>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))
0768763
04/01/28 00:59ID:???なるほど、メインの書き込みと、レスが違うファイルに保存されているのね。
それなら、$ct = preg_match_all(……) のあとの"-1"はいらない。
それから、そのParse errorは、括弧かダブルクウォートの対応が間違っている可能性が高い。
もしレス数を登録するとしたら、メインのログに書き込むべし。
0769706
04/01/28 01:51ID:VL5E7sReParse errorは直りました。
Warning : preg_match_all() expects at least 3 parameters, 2 given in ***** line 88で
一つパラメーターが足りないってことだと思うんですけど、
array matchesはどのように書けばいいですか?
何回もすみません。
0770706
04/01/28 02:23ID:???array matchesは $ct でいいんですね。
http://goa.k1.xrea.com/j.php
いやぁ、ほんと助かりました。
これをきっかけに自分で掲示板組めるよにphp勉強してみようかなぁ。
何も知らない自分にここまで付き合って下さってほんとありがとうございますm(_ _)m
0771763
04/01/28 03:30ID:???すまん。preg_match_allは引数3つ必要だった。
3つ目は使わないので何でも良いが、$ctだと紛らわしいので、別の方が良い。
0772nobodyさん
04/01/30 20:48ID:O0NkkeT3snow*materiaのtwin.cgiというアイコンチャットを
設置してちょびちょび改造しているのですが、
このチャットに「魔法の呪文」という設定があって
その中に「予備ログを全部時刻昇順で表示」というものがあり、
ログをアイコン、背景、タグ効果などが反映された状態で上から読めるように表示されます。
これをHTMLとして書き出したいのですが、それは可能でしょうか?
また可能な場合どういった改造を行えば宜しいでしょうか
あと入室中にアイコンを代えるセレクトボックスを追加したいのですが、
デフォルトで「一定の条件下で可能」に作られているのですがこれを情動的にしたいのです。
一応サイトにサポートBBSがあったので質問したら10日まっても一つのレスも付きませんでしたので
削除してこっちに描いてみたり。
どなたかお教えくださいませ。
ttp://useyan.pupu.jp/s/cgis/twin.html
■ このスレッドは過去ログ倉庫に格納されています