★三 【 スクリプト改造工房 PART 9 】 ★三

1nobodyさん2006/03/32(土) 04:52:20ID:WJnup8Dd
#================================
# スレッドの説明
#================================

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

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

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

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

662nobodyさん2011/07/30(土) 15:06:40.47ID:sJZknbjp
度々すいません 659です。

【.  CGI名  .】 アイコンTeaChatV2
【配布先URL】 http://blog.tirno.net/e212.html
【.動作サンプル .】 http://www.tirno.net/chat2/chat.cgi
【ヘルプ内容】発言ランキングをチャットに集う人々の表にしたいのですが、
順位、発言数を辞めてIPホスト名を表示したいのです。並びは日付の新しい順。

こんな改造は出来ますでしょうか・・・まる投げですいませんがお願いします。

663nobodyさん2011/07/30(土) 15:32:08.92ID:???
>>662
丸投げスレがなくなっちゃったってのはわかるんだけどさ、一応ここは>>1の通りのスレであって。
それをわかってて丸投げ目的で二度来るのはどうかと思うんだ。

どこまでできてる? まったくわからない? 時には諦めも肝心だよ?

664nobodyさん2011/07/30(土) 21:33:31.12ID:???
だれか丸投げスレたてれば?おれは無理だったけど。

665nobodyさん2011/07/31(日) 19:16:20.01ID:???
欲しいやつが立てりゃいい。無理なら依頼すればいい。

666nobodyさん2011/08/26(金) 13:44:38.24ID:???
ああ

667nobodyさん2011/08/28(日) 11:31:48.86ID:???
【.  CGI名  .】 ASKA BBS Ver: 5.3
【配布先URL】 ttp://www.kent-web.com/
【ヘルプ内容】 チェックボックスを用いて投稿内容の表示非表示を行いたい。

ifを使ってもチェックの有無に関わらず全て表示されてしまいます。
項目を増やしたりはできるのですが、どうしてもこの動作だけがうまくいきません。
どうぞ知恵をお貸しください。よろしくお願いします。

668nobodyさん2011/08/29(月) 17:53:51.24ID:???
if文になんて書いたのさ?

6696672011/08/30(火) 02:09:13.28ID:???
<input type="checkbox" name="secret" value="on">

if($secret eq "on"){print"";}
else{#元の表示内容
print "<dt><hr>[<b>$no</b>] <b style=\"color:$subcol\">$sub</b> ";
print "投稿者:<b>$nam</b> 投稿日:$dat  ";
print "<input type=\"submit\" name=\"res$no\" value=\"返信\"><br><br>\n";
print "<dd>$com<br><br>\n";
}

と書きました。元の表示と空欄を入れ替えても、
投稿記事全てが表示されないかされるかの違いだけでした。
あと、先に書いた「ASKA BBS」だとスキン仕様だったのを失念しておりました…。
あれやこれやと試していたのでごっちゃになっていました。申し訳ありません。
なので「ASKA BBS」ではなく同じくKENTさんのところの「LIGHT BOARD Ver: 7.1」でお願いいたします。

670nobodyさん2011/08/30(火) 02:36:14.14ID:???
>>667
追加したチェックボックスの表示非表示っていうのはログに保存してる?たとえばこんなかんじで。
print DAT "$no<>$date<>$in{name}<>$in{email}<>$in{sub}<>$in{comment}<>$in{url}<>$host<>$pwd<>$time<>$in{secret}<>\n";
で、bbs_listで記事を表示するときに
my ($no,$date,$name,$eml,$sub,$com,$url,$host,$pw,$tim,$secret) = split(/<>/);
のようにして、$secretが非表示だったらスルーしたらいいんじゃない?
もうやってたらごめんね。

6716672011/08/30(火) 14:48:15.07ID:???
>>670
指摘されたところに追加はしていたのですが、$in{secret}にはせず$secretとしていたところがあったので
念のため一からやり直してみたらできました!
初歩的なところで躓いていたのが恥ずかしい限りですが良かったです。
ありがとうございました!

672nobodyさん2011/09/07(水) 21:21:30.18ID:pw5mVziB
改造をお願い致します。どうしてもうまくいく改造方法が見つかりませんでした。
cgiの概要は、任意のフォルダに画像があり、それをサムネイル表示するというものです。
現在の症状は、image majickで生成したサムネイルフォルダにthumbs.dbファイルが存在しないとcgiエラーをはいてしまいます。
サムネイル保存用フォルダにthumbs.dbがあると、表示されるのですが、html上のサムネイル表示にもthumbs.dbが画像の1枚として表示されてしまいます。
アドバイス、または改造をお願いできないでしょうか。よろしくお願いいたします。

http://science-lab.ddo.jp/uploader/files/0403.txt

673nobodyさん2011/09/09(金) 00:16:46.50ID:???
>>672
いまいち話が見えんが、「サムネイルフォルダにthumbs.dbファイルが存在しないとcgiエラー」で
出てくるエラーは具体的に何さ?

6746722011/09/11(日) 21:23:05.41ID:Pif199R3
>>673
色々試してみたのですが、階層を変えただけで表示されるようになりました。
なぜ、URLの階層を1つ深くして設置しただけでcgiの挙動が変化したのか分かりませんが、とりあえずおkなので、質問は解決しました。ありがとうございました。

675nobodyさん2011/10/08(土) 13:43:38.17ID:lEe/ThVo
【.  CGI名  .】 ASKA BBS Ver: 5.5
【配布先URL】 ttp://www.kent-web.com/
【ヘルプ内容】 レスの返信機能を保持したまま、引用機能(メッセージ内容)を非表示にしたい。

昔のバージョンは以下のように#を付けるだけで出来ましたが、最新バージョンでは同じように#を付けるだけでは出来ないようです。
どういう風に変更すれば出来るのかよろしくお願いしますorz

昔のバージョン
■変更前
$sub =~ s/^Re://g;
$r_sub = "Re:[$no] $sub";
$r_com = "> $com";
$r_com =~ s/<br>/\r> /ig;

■変更後
$sub =~ s/^Re://g;
$r_sub = "Re:[$no] $sub";
#$r_com = "> $com";
#$r_com =~ s/<br>/\r> /ig;

最新のバージョン
■変更前
$res{sub} =~ s/^Re://g;
$res{sub} =~ s/\[\d+\]\s?//g;
$res{sub} = "Re:[$in{res}] $res{sub}";
$res{com} = "> $res{com}";
$res{com} =~ s/<br>/\n> /ig;

676nobodyさん2011/10/08(土) 14:49:51.74ID:???
#$res{com} = "> $res{com}";
#$res{com} =~ s/<br>/\n> /ig;

でいいはずだけど。変更するところ間違ってない?
つか昔のverのバージョン番号くらいおくれ。

677nobodyさん2011/10/09(日) 03:48:10.37ID:???
>>675
KENTスレにあるように
$res{com} = "";
を加えてもだめだったの?

6786752011/10/09(日) 18:54:28.30ID:8B/jE2+d
>>676>>677
昔のは3.2です
でも今、変更するところ変えてみたら出来ました
thxでした

それと、もう一つお願いしますorz
削除キーを入力して書き込んだ後に掲示板に戻っても削除キーが入力されてる状態にしたいのですが
クッキー情報保存にチェック入ってるのに書き込む度に空欄になってしまいます
これは分りますでしょうか?

679nobodyさん2011/10/09(日) 19:04:53.47ID:???
そりゃ単にブラウザの設定じゃねーの?

680nobodyさん2011/10/09(日) 23:49:12.92ID:???
>>678
削除キーはクッキーに保存してないみたいだね。
だから$in{pwd}もset_cookieに追加して保存するようにしたらいいんじゃない?
そうしたらtmpl内のbbs.htmlのクッキー情報保存の近くにある削除キーの
valueに!pass!とか何でもいいから適当に書いて、aska.cgiのbbs_listの
文字置換のところで削除キーは$cook[3]に入っていると思うからほかと同じように
置換したらいいと思う。
これでわからなかったら丸投げに行ってね。

6816752011/10/11(火) 18:55:33.47ID:KMpzzZKw
>>680
分りやすい説明ありがとうございます。
90%くらい出来た感じなんですけど、例えば、削除キーを3文字にして書き込んでも、掲示板に戻るとなぜか4文字の●が出来てます。

682nobodyさん2011/10/11(火) 19:59:23.16ID:???
で、その削除キーは合ってるの?

683KENT厨2011/10/12(水) 01:40:25.61ID:???
>>681
>文字置換のところで削除キーは$cook[3]に入っていると思うから〜〜〜
というのはregistで
&set_cookie($in{name},$in{email},$in{url},$in{pwd});
のような順番で保存することを想定していたのですが、
違う順番で保存してたらこの順番で保存するようにしてください。
いちおう自分で試してみたところうまくいってます。

6846752011/10/14(金) 18:03:28.98ID:V+jiaLjd
お手数かけますorz
>>682
そこは間違えないでしょうw
>>683
aska.cgiのクッキー格納の所ですよね。
何度確かめてもその順番になってるんですけどね・・・
出来てると言うことは自分のやり方が悪いのでどこかが間違ってると思いますが。

それと、文字置換のところを見ると削除キーはない?みたいです
v5.5は以下のようになってました

# 文字置換
foreach ($head,$foot) {
s/!([a-z]+_cgi)!/$cf{$1}/g;
s/!homepage!/$cf{homepage}/g;
s/!page_btn!/$page_btn/g;
s/!name!/$cook[0]/;
s/!email!/$cook[1]/;
s/!url!/$cook[2]/;
s/!sub!/$res{sub}/;
s/!comment!/$res{com}/;
s/!bbs_title!/$cf{bbs_title}/g;
s/!str_crypt!/$str_crypt/g;

685nobodyさん2011/10/14(金) 18:21:22.41ID:???
682が言いたいのは、4文字になった削除キーは意図した文字列になってるか?
ということだと思うんだが・・・。

686nobodyさん2011/10/14(金) 22:17:45.01ID:???
>>684
だからそこに一行付け加えるんでしょ

s/!pass!/$cook[3]/;

6876752011/10/20(木) 18:20:35.44ID:VqBvUrqI
レスが遅れてすみませんorz
>>685
例えば、削除キーを123と入力して、送信する→掲示板に戻るをクリックしても、
削除キーのところを見ると●が勝手に4つ出来てるということなんです。
>>686
そのキーを付け加えるとまた空欄になるんですよね・・・
それで、s/!pwd!/$cook[3]/;にしてみるとまた4つの●に。。。

688KENT厨2011/10/20(木) 23:43:21.15ID:???
>>687
ここまでいくと丸投げの範疇のような気もするけど・・・
おれがやったこと

aska.cgiの257行目($in{pwd}を追加)
&set_cookie($in{name},$in{email},$in{url},$in{pwd});

tmpl内のbbs.htmlの67行目(!pass!を追加)
<input type="password" name="pwd" size="8" maxlength="8" value="!pass!">

aska.cgiの110-111行目(s/!pass!/$cook[3]/;を追加)
s/!url!/$cook[2]/;
s/!pass!/$cook[3]/;#追加
s/!sub!/$res{sub}/;

689nobodyさん2011/10/21(金) 23:37:10.75ID:M1w9tWcp
【.  CGI名  .】?
【配布先URL】http://www.kent-web.com/pubc/book/test/uploader/uploader.cgi
【. 置き場所 .】http://www.kent-web.com/pubc/book/test/uploader/uploader.cgi?mode=pwdwin&no=4770 パス:p
【ヘルプ内容】
http://q.hatena.ne.jp/1287372348を参考にwebサイト上に、あるサイトのxmlをsimplexml_load_fileで読み込み、表示しています。
今のところ、一つしかサイトを取得できてないんですけど、2つ以上のサイトのxmlを読み込むにはどうすればいいでしょうか。$rssにarrayを指定してみてもできなかったです。
ついでに日時順(取得したの全部ごちゃまぜで)に並べる方法も教えて下さい。よろしくお願いいたします。


690nobodyさん2012/05/25(金) 15:23:38.33ID:+SbZ3p6J
javascript(jQuery)なんですが・・・

http://workshop.rs/projects/jqfancytransitions/
のサンプル2段目の「weve」を選択した時のエフェクトを
画面の背景画像として採用したいと考えてます。

http://code.google.com/p/jqfancytransitions/downloads/list
からスクリプトをダウンロードし、使ってみたのですが
画像がリピートされる、また画面サイズが固定になってしまうため上手くいきません。
(リピートされるのに関してはスクリプト内の指定箇所でno-repeat指定すれば修正できそうです)

背景画像のイメージは
http://srobbin.com/jquery-plugins/backstretch/
の中段にてUsing Backstretch in a slideshow
を選んだときの挙動+切り替わる時のエフェクトがwave状、といった感じです。

以上、よろしくお願いします。

691nobodyさん2012/05/25(金) 15:46:03.49ID:+SbZ3p6J
すいません、板違いでしたね。無視してください

692nobodyさん2012/06/29(金) 20:01:31.80ID:???
【.  CGI名  .】 簡易データベース
【配布先URL】 ttp://www.rescue.ne.jp/cgi/database/
【ヘルプ内容】 ↑の名前検索をスペースを置いて複数人同時に検索したいのですがうまくいきません

$word = $FORM{'HANDLE'};
$word =~ s/ / /g;
@word2 = split(/ /,$word);

if ($FORM{'HANDLE'} ne '') {


foreach $word2(@word2){
if ($HANDLE =~ /^([\x00-\x7F]|[\x8E\xA1-\xFE][\xA1-\xFE]|\x8F[\xA1-\xFE]{2})*$word2/i)
{ ; }else { next; }
}
}

693nobodyさん2012/06/29(金) 20:10:54.47ID:6XDyiqMK
↑お時間ありましたらよろしくお願いします。

694nobodyさん2012/07/04(水) 23:36:35.57ID:???
>>692
まだいる?
なんとな〜く考えてみたんだけど。

695nobodyさん2012/07/05(木) 17:51:25.85ID:???
>>694
今帰宅しました。
まだいます

696nobodyさん2012/07/05(木) 18:47:40.44ID:???
エラーの内容なりどう上手く行かないのか書かないと

6976942012/07/05(木) 21:35:22.58ID:???
>>692,695
なんとな〜くだからうまくいかなかったらごめんね。


# ニックネーム(マッチ)

my $word = $FORM{'HANDLE'};
$word =~ s/\xA1\xA1/ /g;
my @word2 = split(/\s+/,$word);
my $myflag = 0;

if ($FORM{'HANDLE'} ne '') {
foreach my $word3 (@word2) {
if ($HANDLE =~ /^([\x00-\x7F]|[\x8E\xA1-\xFE][\xA1-\xFE]|\x8F[\xA1-\xFE]{2})*$word3/i) { $myflag = 1; last; } else { ; }
}
}

if ($FORM{'HANDLE'} ne '' && $myflag == 0) { next; }

# 検索終了処理

698nobodyさん2012/07/06(金) 17:12:03.61ID:???
>>697
今、帰宅しました。
>>694さんのコードを試した処サーバーがResponseエラーになったのですが
myを外して見たところ上手くいきました。(もしかしてこのコードがperl4だったりするんでしょうか?)
無事出力成功しました。ありがとうございます

699nobodyさん2012/07/18(水) 19:32:38.99ID:???
「さよなら原発10万人集会」を新聞はどう報道したのか?検証してみた

★政府が隠蔽したいこと

@「坂本龍一 パブコメで声あげよう」
A広瀬隆が原発の再稼働を止めるために電力会社と取引を計画
http://b●log.goo.ne.jp/yqmcps

歌&作曲&演奏:坂本龍一
http://www.youtube.com/watch?v=w22IhMuwhLw
http://www.youtube.com/watch?v=iVTFeozHWcA

700nobodyさん2012/12/22(土) 11:11:07.37ID:???
【.  CGI名  .】 簡易データベース
【配布先URL】 ttp://www.rescue.ne.jp/cgi/database/

横から申し訳ないのですが
>>692
>>697
のものをAND検索にするには何をどうすれば良いのでしょうか

701nobodyさん2012/12/22(土) 12:17:32.61ID:???
自己解決
unless 使用 myflagの値変更

702nobodyさん2013/02/09(土) 00:51:21.52ID:???
【.  CGI名  .】 COMCHAT
【配布先URL】 http://www.kent-web.com/
【ヘルプ内容】
チャットに入室中に間違えてウインドウを閉じてしまったり、ページ全体を更新してしまって入室前の画面に戻ってしまう等を防止したいと思い、
発言フォーム(入室後の上フレームに表示する画面)のソースに、ページ移動時に確認ダイアログを表示するようにJavascliptを追加したのですが、
退室ボタンを押してチャットから退室しようとした時にも上記のダイアログが表示されてしまいます。

そこで、下記のように退室ボタンを押したときにフラグを立て、そのフラグが立っていない時のみページ移動orウインドウを閉じるとダイアログを
表示するようにしようと試みたのですが、退室ボタンを押しても同様にダイアログは表示され上手くいきませんでした。

##発言フォームに追加したJavascript部分
<script type="text/javascript"><!--
var flag01=1;
function taisitsu() {
var flag01="";
}
if (flag01 == 1) {
if(navigator.userAgent.indexOf("Safari") != -1){
window.onbeforeunload = function(event) {
event = event || window.event;
event.returnValue = "このページから移動しますか?";
}}}
--></script>

##退室ボタンの記述部分
print "<input type=submit value='退室する' class=\"pochi\" onsubmit=\"taisitsu()\">\n";

よろしくお願いいたします。

703nobodyさん2013/02/09(土) 01:06:48.43ID:???
var flag01=1;
function taisitsu() {
var flag01="";
}
スコープ違うし

704nobodyさん2013/07/16(火) NY:AN:NY.ANID:KwcfwcVZ!
【.  CGI名  .】 Comchat ver 5.1(最新)
【配布先URL】 http://www.kent-web.com/chat/comchat.html
【. 置き場所 .】 http://www.kent-web.com/cgi/downld/downld.cgi?id=comchat
【ヘルプ内容】 ロム人数を表示できるようにしたい

以下のサイトを参考に何とか頑張ってみたのですが、
バージョンが違うためにまったくうまく行かず。
http://galle.jp.net/script_perl_01_01_06.html

どなたがお助け下さい。お願いいたします。

705nobodyさん2014/05/03(土) 04:04:23.61ID:???
浮上します

706nobodyさん2014/07/07(月) 11:24:47.37ID:6SCF+68T
【.  CGI名  .】 ACCESS REPORT
【配布先URL】 http://www.kent-web.com/data/report.html
【. 置き場所 .】 http://www.kent-web.com/cgi/downld/downld.cgi?id=report
【ヘルプ内容】 
アクセス解析なのですが、ホスト名が*.ocn.ne.jpみたいに本当にプロバイダ情報だけで
地域までは解析データにとってくれないのでアク禁したい時に困っています。
report.cgiの↓の部分が該当個所だと思うのですが、お助け下さい。

sub get_host {
# ホスト名取得
my $host = $ENV{REMOTE_HOST};
my $addr = $ENV{REMOTE_ADDR};
if ($host eq "" || $host eq $addr) {
$host = gethostbyaddr(pack("C4",split(/\./,$addr)),2) || $addr;
}

if ($cf{deny_host}) {
my $flg;
foreach ( split(/\s+/, $cf{deny_host}) ) {
if (index("$host $addr",$_) >= 0) { $flg++; last; }
}
if ($flg) { &load_img; }
}

if ($host =~ /(.*)\.(\d+)$/) { ; }
elsif ($host =~ /(.*)\.(.*)\.(.*)\.(.*)$/) { $host = "\*\.$2\.$3\.$4"; }
elsif ($host =~ /(.*)\.(.*)\.(.*)$/) { $host = "\*\.$2\.$3"; }

# 結果
return ($addr,$host);
}

707nobodyさん2014/07/12(土) 14:04:00.64ID:???
以下をまるごとコメントにせい

=comment
if ($host =~ /(.*)\.(\d+)$/) { ; }
elsif ($host =~ /(.*)\.(.*)\.(.*)\.(.*)$/) { $host = "\*\.$2\.$3\.$4"; }
elsif ($host =~ /(.*)\.(.*)\.(.*)$/) { $host = "\*\.$2\.$3"; }
=cut

708nobodyさん2014/07/14(月) 11:01:49.79ID:???
>>707
動作確認できました!
ありがとうございます。

709Guest2017/07/01(土) 09:21:38.71ID:oWThd2iX
【 CGI&PHP名 】 Tackynote3
【 配布先URL 】 http://tackysroom.com/cgi/cgi_tackynote3.htm
【 依頼期限 】 なし
【 依頼内容 】 このCGI説明(http://tackysroom.com/page_cgi.htm)に、
『フレーム式日記帳Tackynote2にレス機能+ 画像アップロード機能』
と記載されているけど、Tackynote2の機能にある記念日設定が入っていない
のでTackynote3に記念日設定を追加したいです。

作者にメールしましたが、忙しいのか受け付けてもらえず、悩んでます。
お願いします。

710nobodyさん2017/07/01(土) 17:35:44.13ID:???
chromeってバージョンアップあった?
今まで効かなかったフォントファミリーが効いてる気がするのは俺だけ??

711nobodyさん2017/12/30(土) 12:43:38.29ID:YhlYw6jg
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。

グーグル検索⇒『半藤のブブイウイウレレ』

E4HWAW502D

712nobodyさん2018/06/21(木) 10:37:15.54ID:VtSVJLaY
プログラミングを誰でも習得できる方法は、「前場アキドルのプログラミングマスター方法」というブログで見られるらしいよ。ネットで調べると見られるらしいです。

T8B86

新着レスの表示
レスを投稿する