1 名前:nobodyさん [2006/03/32(土) 04:52:20 ID:WJnup8Dd] #================================ # スレッドの説明 #================================ 「スクリプトを改造したいけどやりかたわかんないよー」という人がいましたら ここで聞いてください。ひょっとしたらアドバイス出来るかもしれません。 質問するときは以下の点に注意して書いて下さい (1) そのスクリプトの内容と置いてある場所を明記する (txtファイルでUPすればなお良い) (2) どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し) (3) 出来るだけ詳しく書くこと。少しは自分で考えること。できれば御礼も言ったほうが良い ※答えてくれないからといって逆ギレする厨はお断り
92 名前:nobodyさん mailto:sage [2006/07/28(金) 09:03:25 ID:???] 丸投げにて >lib.plの改行処理を >$val =~ s/\r\n|\r|\n/<br>/g; >にして >album.cgiのメモの<input type=text>を<textarea>にして(2箇所) >album.cgiの# 並び替え/編集/削除 >の所の<textarea>の$i_photographer[$_]はprintする前に<br>を\nにする。 とアドバイスもらいました。 「lib.pl」を開き # 改行処理 $val =~ s/\r//g; $val =~ s/\n//g; } $form{$key} = $val; } } を # 改行処理 $val =~ s/\r\n|\r|\n/<br>/g; } $form{$key} = $val; } } にしました。
93 名前:91,92 mailto:sage [2006/07/28(金) 09:11:16 ID:???] album.cgiをみて1箇所の「メモ」のinput部分を # メモ(投稿時) print "<tr>\n"; print "<td width=\"60\" class=\"item\">メ モ</td>\n"; print "<td><textarea cols=\"50\" rows=\"5\" type=text name=\"photographer\" size=\"50\" value=\"$b_photographer\" class=\"list\"></textarea></td>\n"; print "</tr>\n"; にかえました。 # 並び替え/編集/削除 の部分は # メモ print "<textarea cols=\"50\" rows=\"5\" type=text name=\"$n_photographer[$_]\" size=\"25\" value=\"photog\" class=\"list\">"; print "$i_photographer[$_]"; print "</textarea>\n"; print "</td></tr><tr><td>\n";
94 名前:91,92,93 mailto:sage [2006/07/28(金) 09:14:30 ID:???] 「>album.cgiの# 並び替え/編集/削除 >の所の<textarea>の$i_photographer[$_]はprintする前に<br>を\nにする。」 部分ができていないため、編集画面ではテキスト エリアに表示される文面に「<br>」が表示され、 さらにそのまま投稿しても<br>がタグとして処理 されず、そのまま文字として表示されてしまい編集 画面の意味をなしえません。 改行させるための命令だといろいろと調べてわかっ たのですが、挿入の仕方が悪く、反映されませんでした。 正しい改変の仕方をアドバイスいただきたく思います。 お願いいたします。
95 名前:nobodyさん mailto:sage [2006/07/28(金) 12:56:14 ID:???] >>94 長すぎ。スレ違い。
96 名前:nobodyさん mailto:sage [2006/07/28(金) 19:36:18 ID:???] >>94 $i_photographer[$_] =~ s/<br>/\n/g;
97 名前:94 mailto:sage [2006/07/28(金) 19:56:34 ID:???] >>96 大感謝です! きちんと表示されるようになりました。 スクリプトに目を通してくださってありがとうございました! >>95 簡潔な書き方ができず、すみませんでした。
98 名前:nobodyさん mailto:sage [2006/08/01(火) 19:59:20 ID:???] 【CGI名】 T-bookmarkPlus Final 【配布先】 www.de-bug.net/ (閉鎖?) 【置き場所】 www.uploda.org/uporg465634.txt 【ヘルプ内容】 検索画面の分野(カテゴリ)表示部分で、「分類」(ジャンルコードの頭に「_」がつくもの。見出し として扱われ、登録や検索の対象外になる)にあたる行(TD)だけデザインを変えて見やすく したいと思っています。 デザインの変更方法などはわかるのですが、cgiのどの部分がジャンルコードの頭に「_」が付く 場合の表示指定なのかわからず作業が進みません…。 改造の質問といえるかどうか分かりませんが、cgiファイルをtxtでUPしておきますので、該当 部分を教えていただけないでしょうか。よろしくお願いします。 (恐らく491行〜530行のあたりではないかと思うのですが…)
99 名前:98 mailto:sage [2006/08/01(火) 23:31:55 ID:???] 自己解決しましたm(_ _)m
100 名前:nobodyさん [2006/08/11(金) 22:46:30 ID:nR0tNgA6] 【CGI名】 CMCBoard 【配布先】 cgi-lounge.eek.jp/ 【置き場所】 cgi-lounge.eek.jp/cmcboard.php 【ヘルプ内容】 動画等をアップする際、 一緒に画像もアップさせるようにさせたいんですが。 サムネイムのように表示させたいので。
101 名前:nobodyさん mailto:sage [2006/09/27(水) 12:37:17 ID:???] 【. CGI名 .】 nicky.cgi 【配布先URL】 www.din.or.jp/~raelian/ReadMeNicky.html 【 ヘルプ内容 】 カレンダー部分を、今日の日付の背景色を変えるようにしたい。 また、カレンダーを横一列で表示させたい。 上記のようにしてるnicky!ユーザーはまだ見たことがないのですが… 可能であれば教えてくださいm(_ _)m
102 名前:nobodyさん [2006/09/27(水) 12:38:13 ID:KyNAJ/4/] age
103 名前:nobodyさん mailto:sage [2006/09/28(木) 08:31:41 ID:???] >101 >カレンダーを横一列で表示させたい。 この位の書き換えが解らないなら丸投げ向き。 再配布禁止。修正物も配布禁止になっているので回答は得られにくいよ。
104 名前:101 mailto:sage [2006/09/28(木) 12:05:02 ID:???] 両方ともレスしてくださりありがとうございました。 そして間違ってカキコした旨書けなくてすんません。 カレンダーの横一列、頑張ってなんとかしてみます。 今日の日付は保留で…とにかくありがとうございました。
105 名前:nobodyさん mailto:sage [2006/10/08(日) 14:26:54 ID:???] 【CGI名】 Webclap 【配布先】 guron.net/ 【置き場所】 guron.net/document/dl/cgi/webclap.php 【ヘルプ内容】 UTF-8化しようとして拍手は送れるがコメントが送れない状態になっています。 全ファイルの文字コードをUTF-8にしてwebclap.cgiに以下の変更を加えました。 002 use open ":utf8"; を追加 059 "sjis" を "utf8" に変更 578 charset=shift_jis を charset=utf-8 に変更 603 charset=shift_jis を charset=utf-8 に変更 恐らく間抜けなことをしているのだと思いますが、よろしければご指摘下さい。
106 名前:nobodyさん mailto:sage [2006/10/08(日) 16:56:48 ID:???] エラーメッセージは?
107 名前:nobodyさん mailto:sage [2006/10/08(日) 17:05:09 ID:???] >>105 その置き場所って本当にお前がこのCGIを置いた場所か?
108 名前:105 mailto:sage [2006/10/08(日) 21:25:50 ID:???] >106 KCatch.pmで [clap.cgi:226:warn] Wide character in print at E:\www\koiyami\uru\clap\clap.cgi line 226, <out> line 21. と出てくるので、とりあえず226行目に utf8::encode($tag); を追加してみました。 エラーは出なくなりましたがやはりコメントは送れないままでした。 >107 すみません【配布先URL】です。 コピペしてそのまま書き込んでしまいました。
109 名前:nobodyさん mailto:sage [2006/10/08(日) 21:42:36 ID:???] httpdのエラーログを出せハゲ。
110 名前:105 mailto:sage [2006/10/08(日) 21:59:29 ID:???] >>109 特にCGIのエラーらしきものは見えないのですが、以下になります。 errors.log Sun Oct 08 21:54:59 2006 Error Response 404 Thread 0(ID= 2892) to 127.0.0.1 for "/favicon.ico"
111 名前:nobodyさん mailto:sage [2006/10/09(月) 01:37:59 ID:???] ハゲワロタwww
112 名前:aoki [2006/10/21(土) 12:31:47 ID:Z1KRvl//] CGI名■KENT WEBさんのYY-CHAT 配布場所■www.kent-web.com/chat/index.html 改造内容■同じくKENT WEBさんのWindyのように、YY-CHATをノーフレーム式(アイコン有)で表示したいのです。 YY-CHATの機能をそのまま使いたいので、YY-CHATを改造して、フレーム形式をノーフレーム形式に変換希望。 Windy、YY-CHATのソースを見比べてみたのですが、フレーム式からノーフレーム式への転換がやはり分かりません。 どなたかご存知の方、ご指摘いただければ幸いです。
113 名前:nobodyさん mailto:sage [2006/10/21(土) 18:26:33 ID:???] リロードで書き込み中の下書きが消えちゃうけどいいのか?
114 名前:aoki [2006/10/21(土) 20:15:32 ID:Z1KRvl//] お返事ありがとうございます。リロードは初期設定を手動にして、リロード設定部分を削除しますので、大丈夫です。 すぐにお返事が頂け、嬉しいです。宜しければご指導お願い致します。
115 名前:aoki [2006/10/21(土) 20:18:20 ID:Z1KRvl//] ↑追記↑要するに、フレーム非対応の携帯でも使えるようにしたいのです。 よく、携帯用のチャットは手動ですので大丈夫です。
116 名前:nobodyさん [2006/10/23(月) 02:38:52 ID:oT4S3DMg] 【. CGI名 .】 PatiPati - Version 3.0 - 【配布先URL】 www.gnbnet.com/ 【. 置き場所 .】 www.gnbnet.com/cgi/?mode=mail 【ヘルプ内容】 ttp://www.gnbnet.com/bbs/index.cgi?mode=view&seq=391 ↑の人と同じことを思ったので質問させて下さい。 ________________________________________________ 拍手ボタンを押す→最初の画面が出る→後の画面はランダムに表示 という表示は可能でしょうか? 一番最初の画面だけ固定して、その後の画面をランダムにしたいのですが… 宜しくお願いします。 ________________________________________________ の書き込みに、制作者は ________________________________________________ 申し訳ありませんが、こういった要望に対応しているとキリがなくなりますので、 ご自分で改造などして対処してくださるようお願いします。 ________________________________________________ と言っているのですが、どう改造すれば良いのかわかりません。 どうぞ宜しくお願いします。
117 名前:nobodyさん mailto:sage [2006/10/23(月) 08:51:22 ID:???] >>116 自分で改造する気が無いのなら丸投げへ
118 名前:nobodyさん mailto:sage [2006/10/24(火) 04:33:25 ID:???] <?php echo "Hello World"; ?> これをWeb2.0風に改造してください。
119 名前:nobodyさん mailto:sage [2006/10/24(火) 07:03:03 ID:???] 一個前のレスも読めない君の亀田級の脳味噌には佐賀県庁の職員一同も心底がっかりだ。
120 名前:nobodyさん mailto:sage [2006/10/24(火) 14:21:29 ID:???] 私の力量では改造ができませんでした。ご助言 よろしくお願いします。 【. CGI名 .】 Revision 1.80 (perlのBBS) 【配布先URL】 ttp://revision.s22.xrea.com/ 【. 置き場所 .】 ttp://revision.s22.xrea.com/dlpage.htm 【ヘルプ内容】 一定数以上の投稿があると、古いログから削除されていくところを、 別のファイルに書き出して保存できるようにしたい。(過去ログ機能の実装) 以上、よろしくお願いします。
121 名前:nobodyさん mailto:sage [2006/10/24(火) 14:56:57 ID:???] 何をどうやったらどう駄目だったのかを書いてアドバイスをもらうのがこのスレ。 それも理解できない丸投げ野郎はもう死んでいいよ。スレ違いを指摘するのもかったるい。
122 名前:aoki [2006/10/24(火) 17:44:33 ID:QIrlktk5] >>121 さん、本当に申し訳ございませんでした。ご指摘頂き、ありがとうございます。 >>112 の追記です。 自分なりにWindyより、見よう見まねでYY-CHATと引っ付けた、という感じとなってしまいました。このままでは無理だとは思いますが、どのように変更して良いかがわかりません。 基本設定以降が ttp://www.geocities.jp/aokiaoki_332/yychat.html です。 YY-CHATをWindyのように、ノーフレーム版(アイコン有り)で表示したいのです。 「Script Error」と表示されてしまいますので、宜しければご存知の方、ご指摘の程、お願いいたします。
123 名前:nobodyさん mailto:sage [2006/10/24(火) 20:07:51 ID:???] エラーメッセージは?
124 名前:aoki [2006/10/24(火) 23:35:55 ID:QIrlktk5] 早速のお返事ありがとうございます。今転送しなおしてみた所、著作権部分の「KENT」と出てくるだけとなっておりました。 ttp://www.geocities.jp/aokiaoki_332/chat.html この状態です。本体や入り口が表示されずに、著作権部分だけ表示されました。
125 名前:nobodyさん mailto:sage [2006/10/24(火) 23:44:49 ID:???] >>124 つかWindyにアイコン表示つけたほうが速くないか? yychatをノンフレームに改造するのは相当大変だぞ
126 名前:nobodyさん mailto:sage [2006/10/24(火) 23:53:42 ID:???] >>124 それは分かったからとっととエラーメッセージの詳細を出せやコラ。 まさかろくに動きもしない駄目スクリプトをローカルでチェックもせずにアップしてるのか?
127 名前:aoki [2006/10/25(水) 00:23:46 ID:SpiYIrSU] >>125 さん>>126 さん 早速のお返事ありがとうございました。 メイン処理部分の部分を一部変更して転送し直したところ、エラーメッセージは出ずに著作権部分しか表示されなくなっていました。 やはりWindyの方につけた方が良いのですね。助言ありがとうございました。 自分の知識不足ですので、また出直してまいります。 レス下さった方、本当にありがとうございました。
128 名前:118 mailto:sage [2006/10/25(水) 00:26:03 ID:???] すいませんでした。向こうで聞いてきます。
129 名前:nobodyさん mailto:sage [2006/11/03(金) 18:19:09 ID:???] 【CGI】URL Geter 【配布先】ttp://www.cp-2icro.com/dlpage/info_coll/urlget/ 【内容】 このCGIが気に入っているのでアクセス解析として使いたいのですが リンク元に「その他・ブックマークなど」の項目を追加することはできないでしょうか?
130 名前:nobodyさん mailto:sage [2006/11/03(金) 18:31:35 ID:???] てきるできないで言うならそりゃできる。
131 名前:nobodyさん mailto:sage [2006/11/03(金) 21:29:16 ID:???] 【. CGI名 .】 cmcboard.zip v0.23 【配布先URL】 cgi-lounge.eek.jp/ 【ヘルプ内容】 先月未明からi-パラダイス(www.i-paradise.nu/ )に設置してある、 サイト内コンテンツの一つであるアップローダーの記事投稿が不可能な状態です PostModeでの記事投稿前の認証を試みますが、 パスワードを入力し認証ボタンを押した次の瞬間空白のページに(ソースを見たところ無記述)移動してしまい、 ファイルのアップロード自体が出来ず、 PostMode以外での投稿はファイルがアップロードされる直前に先述したページが表示され、 ファイルのアップロードが無効になってしまうという状態です Check Modeでのcgiの動作確認も試しましたが、各種パーミッション設定・各種パス等には異常は見受けられませんでした また、この事象と併発するかのように、以前は見られなかった携帯閲覧時の502エラーも見受けられます 試しに他のレンタルサーバーのアカウントを取得し、上記cgiの設置・動作確認を試みてみたところ、 特に問題なくPostModeでのログイン・ファイルのアップロード、通常のファイルアップロードが出来ました
132 名前:131 mailto:sage [2006/11/03(金) 21:30:51 ID:???] 続きです 管理元にその旨問い合わせを行ったところ、 >おそらく記事投稿前の認証時の不都合は広告挿入が邪魔をしていると >思われますので、その処理の部分に<!--banner-->を挿入して >広告の位置を変更してください。 ><!--banner-->はHTMLの部分に記述しなければ有効になりませんので、 >CGIの処理の流れを見て頂く必要が御座います。 >目安として該当の認証を押した後の<BODY>が記述される直後か、 >更にいくつか下に設定されると良いと思います。 とのことでした >その処理の部分に<!--banner-->を挿入 の部分の処理の手順が分からなく、今回質問を書き込んだ次第です お願いします
133 名前:nobodyさん mailto:sage [2006/11/04(土) 01:02:40 ID:???] まずサポートBBSで聞くべきではないかね?
134 名前:nobodyさん mailto:age [2006/11/07(火) 16:18:05 ID:???] 【. CGI名 .】Multiple Enquete 投票式アンケート 【配布先URL】popup.tok2.com/home/skry/labo/multiq/ 【ヘルプ内容】コメント欄の書き込みへの禁止ワードを設定したい。 配布先の更新がなく、公式のサポート掲示板 popup.tok2.com/home/skry/labo/support/nabla.cgi が死んでしまっているようなので、よろしくお願いいたします。
135 名前:nobodyさん [2006/11/07(火) 17:15:31 ID:5wPSAWJ0] 【. CGI名 .】 Web Patio 【配布先URL】 ttp://www.kent-web.com/index.html 【. 置き場所 .】 ttp://www.kent-web.com/bbs/patio.html 【ヘルプ内容】 アイコン機能を付けたい。 わがままを言えば昇進機能も付けたい。 どうか宜しくお願いします<(_ _)>
136 名前:po ◆iwvS1vwsFQ mailto:sage [2006/11/07(火) 23:34:29 ID:???] >>134 バージョンがいくつかあるんだけどどれ? >>135 無理
137 名前:po ◆iwvS1vwsFQ mailto:sage [2006/11/07(火) 23:36:48 ID:???] >>134 つーかそもそも落とせなかったよ。古いし、他の探したほうがいいかも。
138 名前:nobodyさん mailto:sage [2006/11/08(水) 13:01:27 ID:???] >>136 無理では無い気もするが まぁとりあえず俺にはできない
139 名前:nobodyさん [2006/11/10(金) 03:57:38 ID:l5C4yy5g] 【CGI名】 LQアクセス制限ライブラリー 【配布先URL】 ttp://www2s.biglobe.ne.jp/~cru/library/lq/ 【設置サーバ】 独自ドメイン 【 質問内容 】 ググったら丸投げや>>451 を見つけました。 だが、書かれてるやり方ではCGIごとではなくサイト丸々全部を管理は出来るが、 自分のログを除外出来ないようです。 自分を除外するにはどこをいじればいいのでしょうか?
140 名前:nobodyさん [2006/11/10(金) 04:11:11 ID:+7tgrk2T] age
141 名前:nobodyさん mailto:age [2006/11/13(月) 20:51:31 ID:???] age
142 名前:nobodyさん [2006/11/14(火) 20:12:31 ID:Zhg0+JNh] 【. CGI名 .】 切って出し日記 【配布先URL】 ttp://wws.cside.com/cgi-plant/ 【. 置き場所 .】 ttp://wws.cside.com/cgi-plant/diary/ 【ヘルプ内容】 最新の2件を切って出してJSファイルにするとき、 JSファイルの中身を以下のように出力できるようにしたい。 ---JS中身--- document.write('11/13 日記開始<br>'); document.write('11/14 更新<br>'); --ここまで 今は上の行と下の行が逆に出力されている。
143 名前:nobodyさん mailto:sage [2006/11/14(火) 20:16:50 ID:???] 最初は、日記のログに書き込む時に、頭に追記じゃなくて尻に追記する ように考えてみたのだが・・・ログがぐちゃぐちゃになった。 次にJSへ出力する時に順を変えてみようとしたのだが・・・ 「JSファイルに書き込みを〜回まで繰り返す」という処理になっていたので 出力する段階の配列をソートってわけに行かなかった。
144 名前:142 mailto:sage [2006/11/14(火) 20:17:46 ID:???] >>143 =>>142 です。sageたらIDも消えるんだった(・・・)
145 名前:nobodyさん mailto:sage [2006/11/14(火) 20:40:37 ID:???] >>142 置き場所つーのは『お前が』置いた場所だと何度言えばもうね。 …で、あんまちゃんと見てないけど、 外部JavaScriptへの出力ってkd_diary.cgiの800行目くらいからある部分のことかな。 だとしたら852行目の print JS "document.write(\'$w_line\');\n"; で直接書き出す代わりに適当な配列に格納して、855行目の close(JS); の手前でまとめて吐き出せば良いんじゃないかな。 配列に格納する時に先頭にねじ込めば順番は逆になると思うが。
146 名前:nobodyさん mailto:sage [2006/11/14(火) 23:12:23 ID:???] >>145 半分わかったような気がする。がんがってみる。ありがとん。
147 名前:nobodyさん mailto:sage [2006/11/14(火) 23:17:33 ID:???] おう頑張りな。
148 名前:142 mailto:sage [2006/11/15(水) 00:31:18 ID:???] できました。ありがとうございました(><)
149 名前:nobodyさん [2006/11/25(土) 22:53:31 ID:ocCKf8uF] 【 CGI名 】 簡易データベース 【配布先URL】 ttp://www.rescue.ne.jp/cgi/database/ 【ヘルプ内容】 検索ワードのログを保存したいです(例:log.txt) どのようにすればよいのかアドバイスお願いします。
150 名前:nobodyさん [2006/11/26(日) 12:42:51 ID:Y4Eo2nyo] 【. CGI名 .】 I-BOARD/2001 v2.4 (必須) 【配布先URL】 www.cj-c.com/ (必須) 【. 置き場所 .】 www.cj-c.com/cgi_s/ibbs2001.htm (任意) 【ヘルプ内容】 ・連続投稿規制をつけたいのですが どのようにすればいいかわかりません。アドバイスお願いします。 ・トピック表示のときにレスしたあとに飛ぶページが掲示板のトップページなので レスしたあと飛ぶページをレスしたスレッドのページに飛ぶようにしたいのです。 アドバイスお願いします。
151 名前:nobodyさん mailto:sage [2006/11/26(日) 18:47:16 ID:???] >>150 ひとつめ 投稿のたびにIPを記録して同じIPなら規制すればいい ふたつめ Location
152 名前:150 [2006/11/26(日) 19:19:57 ID:tkb0DDKs] >>150 ですが 説明不足でした。>>151 さんすいません。 秒数で連続投稿規制をつけたいのです。 一回投稿したら、10秒は投稿できないようなものです。 よろしくお願いします。
153 名前:nobodyさん mailto:sage [2006/11/26(日) 21:17:21 ID:???] KENTのBBSからその部分パクればええやん
154 名前:150 [2006/11/26(日) 21:53:46 ID:tkb0DDKs] >>153 それってなにか違反になったりしませんよね?
155 名前:nobodyさん mailto:sage [2006/11/27(月) 08:02:30 ID:???] 再配布とかしない限りはな
156 名前:150 [2006/11/27(月) 16:00:15 ID:kaXmljFh] 連続投稿規制をつけるほうほうがのってるサイトがあったら教えてください
157 名前:nobodyさん mailto:sage [2006/11/27(月) 16:14:05 ID:???] そんなピンポイントな方法は需要から考えてもそのものずばりが見つかるとは思えんし 大人しく自分で処理を考えるべきだと思うよ。死ぬほど簡単だし。 実際に動作するサンプルだってそこら中にあるでしょ。
158 名前:150 [2006/11/27(月) 16:19:00 ID:kaXmljFh] わかりました。 どうもありがとうございます。
159 名前:nobodyさん mailto:sage [2006/11/28(火) 16:35:21 ID:???] 連投規制の処理がKENTの著作だとは知らなかったwww
160 名前:1/2 mailto:sage [2006/11/29(水) 22:10:10 ID:???] PatiPati ttp://www.gnbnet.com/patipati/ メッセージを送るためのフォームです。 これによって出力されるHTMLを改造したいのですが、 どのようにいじればよいものかと悩んでいます。 メッセージの送信ページでは2つの項目を用意していて、 <input type="text" name="com"> このようなinputで名前を送信し、 <textarea name="sub1"> このようなtextareaでメッセージを送信するしくみにしています。 デフォルトの設定では"com"の内容のみ送信され、 "sub1"はユーザがオプションで設置するようにマニュアルで書かれています。 メッセージを送信すると、 送信された内容が以下のように出力されるようになってほしいのですが、 <dl> <dt>(ここに、<input type="text" name="com">で送ったメッセージが入る)</dt> <dd>(ここに、<textarea name="sub1">で送ったメッセージが入る)</dd> </dl>
161 名前:2/2 mailto:sage [2006/11/29(水) 22:10:46 ID:???] 現状では以下のように出力されてしまいます。 <dl> <dt>(ここに、<input type="text" name="com">で送ったメッセージが入る) <dd>(ここに、<textarea name="sub1">で送ったメッセージが入る)</dd></dt> </dl> index.cgiを改造すれば解決できそうだということは予想がついていて、 70〜80行目あたりの「$QUERY{'com'}」や、 「$msg」あたりをいじれば解決できるだろうと思うのですが…。 なお、現在はそのへんを以下のように書いています。 $QUERY{'com'} .= "\n<dd>$QUERY{$wk}<\/dd>"; $msg = "<dl>\n<dt>$QUERY{'com'}<\/dt>\n<\/dl>"; CGIの知識はまったくないので、このへんをどのようにすればよいのかわかりません。 あと一歩でなんとかなりそうなので、 どなたかお力を貸していただけるとうれしいです。
162 名前:nobodyさん mailto:sage [2006/11/29(水) 22:23:36 ID:???] バージョンを書き忘れました。すみません。 2006/11/18 Ver3.2 です。 ついでに書いておきますと、 メッセージの送信ページのフォームは以下のように書いています。 <dl> <dt>名前</dt> <dd><input type="text" name="com" value="名前" size="40"></dd> <dt>メッセージ</dt> <dd><textarea name="sub2" cols="20" rows="4">メッセージ</textarea></dd> <dt>返信不要ならばチェックしてください。</dt> <dd><input type="checkbox" name="sub1" value="返信不要">返信不要</dd> <dt>送信ボタン</dt> <dd><input type="submit" name="submit" value="送る"></dd> </dl>
163 名前:nobodyさん mailto:sage [2006/11/29(水) 22:57:56 ID:???] そこまで分かればもう一歩だったのにな。 $QUERY{'com'} .= "\n<dd>$QUERY{$wk}<\/dd>"; $msg = "<dl>\n<dt>$QUERY{'com'}<\/dt>\n<\/dl>"; を $QUERY{'com'} .= "<\/dt>\n<dd>$QUERY{$wk}<\/dd>"; $msg = "<dl>\n<dt>$QUERY{'com'}\n<\/dl>"; にしてみそ。
164 名前:160 mailto:sage [2006/11/29(水) 23:43:59 ID:???] >163 どうもありがとうございます。 最初に謝らなければなりません。 >161でname="com"とname="sub1"についてのことを書きましたが、 >162で書いた通り、「返信不要」のオプション(name="sub2")をつけております。 $QUERY{'com'} .= と $msg = を>161のように設定しているときは name="sub1"とname="sub2"の送信内容に問題がなかったので、 以下のように例文を端折って書いたのですが…。 <dl> <dt>(ここに、<input type="text" name="com">で送ったメッセージが入る)</dt> <dd>(ここに、<textarea name="sub1">で送ったメッセージが入る)</dd> </dl> >163さんの設定だと <dl> <dt>(ここに、<input type="text" name="com">で送ったメッセージが入る)</dt> <dd>(「返信不要」にチェックを入れた場合のみこの行が入る)</dd></dt> <dd>(ここに、<textarea name="sub1">で送ったメッセージが入る)</dd> </dl> このように「</dt>」が余計になってしまいました。 なお、name="sub2"にチェックしなかったときは希望通りになりました。 せっかく考えていただいてたいへん申し訳ないのですが、 必要な情報をすべて書かなかった私の失敗です。申し訳ございません。
165 名前:160 mailto:sage [2006/11/29(水) 23:53:49 ID:???] 「返信不要」の項目とメッセージを同時に送信しても 「</dt>」が入らなければよいのですが、そのような方法はありますか? name="com"の内容を「○○」、name="sub1"の内容を「○○」などと、 各nameごとにHTMLのタグを書ければ都合がよいのですが、 元のソースがそういう仕様ではないようなので惜しいです。 もし不可能であれば、「返信不要」のチェックを使用することはあきらめて、 >163さんが書いてくださったものをそのまま使用したいと思います。 あと、>164で『、「返信不要」のオプション(name="sub2")』と書いてしまいましたが、 正しくは、「返信不要」がname="sub1"で、メッセージがname="sub2"でした。 CGIの仕様で、もともとはメッセージをname="com"として送信するしくみになっているので、 そのへんの順番をいじったため、まぎらわしい文章になってしまいました。
166 名前:nobodyさん mailto:sage [2006/11/30(木) 00:38:52 ID:???] ループの前に $QUERY{'com'} .= "<dt>$QUERY{'com'}<\/dt>\n"; でループの中に $QUERY{'com'} .= "<dd>$QUERY{$wk}<\/dd>\n"; でループの後に $msg = "<dl>\n$QUERY{'com'}\n<\/dl>"; でどうよ。
167 名前:160 mailto:sage [2006/11/30(木) 01:25:36 ID:???] オリジナルのソースと照らし合わせてみたところ、 現在のソースもオリジナルと行番号が同じになっているので、 オリジナル版のソースの行番号を合わせて書きます。 >166 どうもありがとうございます。 「ループの前」というのは、 if($QUERY{$wk} ne ""){}(line69〜)の外側という意味ですよね? 「while($i <= $sub_su){」(line67)と「if($QUERY{$wk} ne ""){」の間に $QUERY{'com'} .= "<dt>$QUERY{'com'}<\/dt>\n";(>166)を書いてみましたが、 <dt>〜</dt>が何度も出力されてしまいます。 $QUERY{'com'} .= "<dd>$QUERY{$wk}<\/dd>\n";(>166)はline73のそれに置き換え、 $msg = "<dl>\n$QUERY{'com'}\n<\/dl>";(>166)もline79のそれに置き換えてみましたが、 <dd>も同様に、何度も出力されてしまいました。
168 名前:nobodyさん mailto:sage [2006/11/30(木) 01:48:17 ID:???] 何でifがループなんだよ。 ループはそこのwhileだっての。
169 名前:160 mailto:sage [2006/12/01(金) 13:53:05 ID:???] >168 どうもありがとうございます。助かりました。 Proxomitronでグローバル変数の使い方を習っていたので、 それを応用することでとりあえず解決しました。 if($bk_ck == 0){(line65)の中に $QUERY{'total'} .= "<dt>$QUERY{'com'}<\/dt>"; を挿入し、 その後の$QUERY{'com'}をすべて$QUERY{'total'}に書き換えることで解決しました。 これで問題なければよいのですが…。
170 名前:150 [2006/12/03(日) 14:24:33 ID:MG/kBdop] 【. CGI名 .】 I-BOARD/2001 v2.4 (必須) 【配布先URL】 www.cj-c.com/ (必須) 【. 置き場所 .】 www.cj-c.com/cgi_s/ibbs2001.htm (任意) 【ヘルプ内容】 連続投稿15秒規制機能をつけたいのですが if(現在の時間 - 最終投稿時間 < 10秒)er{エラー10秒待ってください} if ($date - $Date{$_} < 15){&er_("<br>連続投稿は禁止です。");} このようにしたのですが 無理のようです。 わかるかたいたらアドバイスお願いします。
171 名前:nobodyさん mailto:sage [2006/12/03(日) 15:16:25 ID:???] それそもそも動いてるのか? あとエラー出てるならエラー文書けや
172 名前:170 [2006/12/03(日) 18:22:28 ID:Ga649VF2] >>170 それはぼくにいってるんですかね? 10秒規制を付けたいんですが いつ投稿しても「連続投稿は禁止です。」とでます。
173 名前:nobodyさん mailto:sage [2006/12/03(日) 18:33:18 ID:???] >>170 そんな部分的な変更点(しかも文法がおかしい)だけ見せられてもな おまえ自身よくわかってなさそうだし、現時点でのソースどこかにupして晒せ
174 名前:170 [2006/12/03(日) 19:23:11 ID:Ga649VF2] sakuratan.ddo.jp/uploader/source/date27912.txt こんな感じです。
175 名前:nobodyさん mailto:sage [2006/12/03(日) 19:54:33 ID:???] 最近のガキは計算の順序も知らんのか?
176 名前:170 [2006/12/03(日) 20:20:18 ID:Ga649VF2] KENTを参考にしてみたんだが
177 名前:nobodyさん mailto:sage [2006/12/03(日) 21:31:55 ID:???] ヘタレだな。
178 名前:nobodyさん mailto:sage [2006/12/09(土) 20:08:53 ID:???] 【. CGI名 .】 切って出し日記 Ver2.5 【. 置き場所 .】 wws.cside.com/cgi-plant/ 【ヘルプ内容】 改造するのはkd_diary.cgiです。 1ページの表示と過去ログへの移行を、設定した件数ごとではなく 月ごとにしたい。 しかし・・・私の改造では、翌月の投稿をしても動作しませんでした。 ※ちょうど年も変わりますしね。 やってみたのは、このCGI内の ########################################## # ログデータ書きこみ ########################################## の部分。
179 名前:178 mailto:sage [2006/12/09(土) 20:10:20 ID:???] 以下の部分を・・・ if($LOGDATA >= $pagemax) { $log_data = pop(@LOGDATA); if($logmax >= 0) { ($l_date,$l_comment,$l_face,$l_weather,$l_color_1,$l_color_2,$l_title,$l_time,$l_min) = split(/<>/,$log_data); $log_name = $logdir .'/'. substr($l_date,0,4) . substr($l_date,4,2) . '.log'; open(OLD,"$log_name"); @oldLOG = <OLD>; close(OLD); unshift(@oldLOG,"$log_data\n"); sort sorter1 @oldLOG; open(OLD,">> $log_name")|| &error('過去ログファイル/ディレクトリ異常'); print OLD @oldLOG; close(OLD); } } if($logmax > 0) { opendir(DIR,"$logdir") || &error('過去ログ格納ディレクトリがありません'); @dirent = grep(/[0-9]+\.log/,readdir(DIR)); @dirent_s = sort(@dirent); @dirent = reverse(@dirent_s); closedir(DIR) ; if($dirent >= $logmax) { unlink ("$logdir\/$dirent[$dirent]")|| &error("過去ログ($logdir\/$dirent[$dirent])が削除できませんでした"); } }
180 名前:178 mailto:sage [2006/12/09(土) 20:45:46 ID:???] $log_data = pop(@LOGDATA); ($l_date,$l_comment,$l_face,$l_weather,$l_color_1,$l_color_2,$l_title,$l_time,$l_min) = split(/<>/,$log_data); #新規投稿データ↓ ($n_date,$n_comment,$n_face,$n_weather,$n_color_1,$n_color_2,$n_title,$n_time,$n_min) = split(/<>/,$line); #現在のログの月を取得 $olddate = substr($l_date,4,2); #新規投稿データから月を取得 $newdate = substr($n_date,4,2); #現在の月より、ログの方が大きかったら・・・。 if($olddate < $newdate){ $log_name = $logdir .'/'. substr($l_date,0,4) . substr($l_date,4,2) . '.log'; open(OLD,"$log_name"); @oldLOG = <OLD>; close(OLD); unshift(@oldLOG,"$log_data\n"); sort sorter1 @oldLOG; open(OLD,">> $log_name")|| &error('過去ログファイル/ディレクトリ異常'); print OLD @oldLOG; close(OLD); }elsif($olddate eq '12' && $newdate eq '1'){
181 名前:178 mailto:sage [2006/12/09(土) 20:46:16 ID:???] #もし投稿されたのが1月で、直前の月が1月なら。 $log_name = $logdir .'/'. substr($l_date,0,4) . substr($l_date,4,2) . '.log'; open(OLD,"$log_name"); @oldLOG = <OLD>; close(OLD); unshift(@oldLOG,"$log_data\n"); sort sorter1 @oldLOG; open(OLD,">> $log_name")|| &error('過去ログファイル/ディレクトリ異常'); print OLD @oldLOG; close(OLD); } #ここまで
182 名前:178 mailto:sage [2006/12/09(土) 20:49:38 ID:???] あ・・・ミスったorz >>180 +>>181 に変えた、ということです。 エラーなどはないのですが、 月が変わったことによる現行ページの更新ができないまま それまでのログにそのまま追加されてる感じです。
183 名前:nobodyさん [2006/12/24(日) 04:13:24 ID:9TMcOB7X] 【. CGI名 .】 レス付き画像掲示板 imgboard 【. 置き場所 .】 www.big.or.jp/~talk/t-club/soft/mini_r6/index.cgi 【ヘルプ内容】 掲示板への投稿が一定数以上なければ、閲覧することが できない制限をつけたいのですが、わかりません。 (来訪者の割りに投稿者が少なく、DOMを減らしたいため) Perlコーディング初心者質問スレ Part 53 ⇒改造スレへ誘導されました。
184 名前:183 [2006/12/24(日) 04:14:08 ID:9TMcOB7X] ↓こんなのを考えてみましたが、どのあたりに置いたら良いのかわかりません。 (書込みルーチンが長すぎて) ##### 投稿数をcookieに保存する ##### &read_cookie# cookie読込(imgboardルーチン) $post_count = $COOKIE{'imgboard_post'} $new_post_count = $post_count++;#投稿数を1つ加算する # 有効期限を30日間に指定 ($sec, $min, $hour, $mday, $mon, $year, $wday) = gmtime(time + 60*60*24*30); @mons = ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'); $date = sprintf("%s, %02d\-%s\-%04d %02d:%02d:%02d GMT", $week[$wday], $mday, $mons[$mon], $year+1900, $hour, $min, $sec); print "Content-type: text/html\n"; print "Set-Cookie: imgboard_post =$new_post_count; expires=$date; \n"; ----------------------------------------------------------- ##### 2回以上投稿があれば、掲示板の中身を表示する ##### &read_cookie# cookie読込(imgboardルーチン) $post_count = $COOKIE{'imgboard_post'} if ($post_count > 1) {# 2回以上投稿あるとき、 &top_html;# ヘッダ表示(imgboardルーチン) &output_form_html;# 投稿画面を表示(imgboardルーチン) &output_html("$file");# 掲示板を表示(imgboardルーチン) } else { &top_html;# ヘッダ表示(imgboardルーチン) &output_form_html;# 投稿画面のみ表示(imgboardルーチン) }
185 名前:183 [2006/12/26(火) 15:44:50 ID:p3+/o574] 自己解決、完成しました。
186 名前:nobodyさん [2006/12/28(木) 17:03:53 ID:6RqsItPR] 【. CGI名 .】 Web Board Professional www.web-liberty.net/download/boardpro/index.html (ただし、Ver.2.27です。最新はVer.3.15) 【ヘルプ内容】 転送アドレスを利用した上でクッキーを有効にしたい。 無料の転送アドレスを取得し、本来のアドレスを隠していますが、 そうするとクッキーが利かなくなってしまいます。 クッキーがリファラを記憶し、照合しているため、転送アドと不一致となり、無効となっているようです。 以下がクッキー関連の処理部分です。 どうかお知恵をお貸しください。 sub get_cookie { local($cookie_id) = @_; local %all_cookies = (); foreach (split(/; /, $ENV{'HTTP_COOKIE'})) { local($key, $value) = split(/=/); $all_cookies{"$key"} = $value; } foreach (split(/&/, $all_cookies{"$cookie_id"})) { local ($key, $value) = split(/:/); $value =~ s/&/&/g; $value =~ s/</</g; $value =~ s/>/>/g; $value =~ s/"/"/g; $cookie{&unescape($key)} = &unescape($value); } return %cookie; }
187 名前:186 [2006/12/28(木) 17:05:58 ID:6RqsItPR] 続きです sub set_cookie { local(*cookie, $cookie_id, $hold_days) = @_; if (time() > $cookie{'refresh'} + 60 * 60 * 24 * 30) { $cookie{'refresh'} = time(); } local @pairs = (); foreach (sort keys %cookie) { push(@pairs, &escape($_) . ':' . &escape($cookie{"$_"})); } local $new_cookie = join('&', @pairs); local $date = &gmt_date(time + 60 * 60 * 24 * $hold_days); if ($new_cookie ne $all_cookies{"$cookie_id"}) { print "Set-Cookie: $cookie_id=$new_cookie; expires=$date\n"; } return; }
188 名前:nobodyさん mailto:sage [2006/12/29(金) 13:59:16 ID:???] >>186 クッキーは異なるドメインは参照できない。 それに本来のアドレスを隠すといっているが、ばればれ。 とくにフレーム転送とか。
189 名前:186 mailto:sage [2006/12/29(金) 17:41:09 ID:???] >>188 根本的にダメなんですね。ありがとうございました。
190 名前:nobodyさん [2007/01/03(水) 10:54:46 ID:O8K3holw] :
191 名前:nobodyさん mailto:sage [2007/01/05(金) 12:33:37 ID:???] 【. CGI名 .】 Ans.Q Customize Version(クッキー対応版) 【配布先URL】 www.non-policy.com/customize-box/ansq/#question 元々の配布先 www7.big.or.jp/~jawa/ 【ヘルプ内容】 Ans.Qの1.40をつかっていたのですが、 書き込みの時間を入れたくて、上記改造版を設置してみたのですが、 コメントがついてもその記事が一番上に移動しません。 どこをどうすればわからなくてこちらに来てしまいました。 元のサイトで配布されていたいた1.4バージョンは自動で移動していました。 よろしくお願いします。
192 名前:nobodyさん [2007/01/06(土) 02:34:41 ID:5JmlMvQ+] 【. CGI名 .】 MSUBoard v0.15[PHP] 【配布先URL】 cgi-lounge.eek.jp/msuboard.php 【ヘルプ内容】 このスクリプト自体がauだけにしか対応していないので、3キャリア もしくはDoCoMoだけには対応してほしいです。よろしくお願いします。