★三 【 スクリプト改造工房 PART 9 】 ★三
■ このスレッドは過去ログ倉庫に格納されています
#================================
# スレッドの説明
#================================
「スクリプトを改造したいけどやりかたわかんないよー」という人がいましたら
ここで聞いてください。ひょっとしたらアドバイス出来るかもしれません。
質問するときは以下の点に注意して書いて下さい
(1) そのスクリプトの内容と置いてある場所を明記する (txtファイルでUPすればなお良い)
(2) どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
(3) 出来るだけ詳しく書くこと。少しは自分で考えること。できれば御礼も言ったほうが良い
※答えてくれないからといって逆ギレする厨はお断り <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」でお願いいたします。 >>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が非表示だったらスルーしたらいいんじゃない?
もうやってたらごめんね。 >>670
指摘されたところに追加はしていたのですが、$in{secret}にはせず$secretとしていたところがあったので
念のため一からやり直してみたらできました!
初歩的なところで躓いていたのが恥ずかしい限りですが良かったです。
ありがとうございました! 改造をお願い致します。どうしてもうまくいく改造方法が見つかりませんでした。
cgiの概要は、任意のフォルダに画像があり、それをサムネイル表示するというものです。
現在の症状は、image majickで生成したサムネイルフォルダにthumbs.dbファイルが存在しないとcgiエラーをはいてしまいます。
サムネイル保存用フォルダにthumbs.dbがあると、表示されるのですが、html上のサムネイル表示にもthumbs.dbが画像の1枚として表示されてしまいます。
アドバイス、または改造をお願いできないでしょうか。よろしくお願いいたします。
http://science-lab.ddo.jp/uploader/files/0403.txt >>672
いまいち話が見えんが、「サムネイルフォルダにthumbs.dbファイルが存在しないとcgiエラー」で
出てくるエラーは具体的に何さ? >>673
色々試してみたのですが、階層を変えただけで表示されるようになりました。
なぜ、URLの階層を1つ深くして設置しただけでcgiの挙動が変化したのか分かりませんが、とりあえずおkなので、質問は解決しました。ありがとうございました。 【. 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; #$res{com} = "> $res{com}";
#$res{com} =~ s/<br>/\n> /ig;
でいいはずだけど。変更するところ間違ってない?
つか昔のverのバージョン番号くらいおくれ。 >>675
KENTスレにあるように
$res{com} = "";
を加えてもだめだったの? >>676>>677
昔のは3.2です
でも今、変更するところ変えてみたら出来ました
thxでした
それと、もう一つお願いしますorz
削除キーを入力して書き込んだ後に掲示板に戻っても削除キーが入力されてる状態にしたいのですが
クッキー情報保存にチェック入ってるのに書き込む度に空欄になってしまいます
これは分りますでしょうか? >>678
削除キーはクッキーに保存してないみたいだね。
だから$in{pwd}もset_cookieに追加して保存するようにしたらいいんじゃない?
そうしたらtmpl内のbbs.htmlのクッキー情報保存の近くにある削除キーの
valueに!pass!とか何でもいいから適当に書いて、aska.cgiのbbs_listの
文字置換のところで削除キーは$cook[3]に入っていると思うからほかと同じように
置換したらいいと思う。
これでわからなかったら丸投げに行ってね。 >>680
分りやすい説明ありがとうございます。
90%くらい出来た感じなんですけど、例えば、削除キーを3文字にして書き込んでも、掲示板に戻るとなぜか4文字の●が出来てます。 >>681
>文字置換のところで削除キーは$cook[3]に入っていると思うから〜〜〜
というのはregistで
&set_cookie($in{name},$in{email},$in{url},$in{pwd});
のような順番で保存することを想定していたのですが、
違う順番で保存してたらこの順番で保存するようにしてください。
いちおう自分で試してみたところうまくいってます。 お手数かけます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; 682が言いたいのは、4文字になった削除キーは意図した文字列になってるか?
ということだと思うんだが・・・。 >>684
だからそこに一行付け加えるんでしょ
s/!pass!/$cook[3]/;
レスが遅れてすみませんorz
>>685
例えば、削除キーを123と入力して、送信する→掲示板に戻るをクリックしても、
削除キーのところを見ると●が勝手に4つ出来てるということなんです。
>>686
そのキーを付け加えるとまた空欄になるんですよね・・・
それで、s/!pwd!/$cook[3]/;にしてみるとまた4つの●に。。。 >>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}/;
【. 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を指定してみてもできなかったです。
ついでに日時順(取得したの全部ごちゃまぜで)に並べる方法も教えて下さい。よろしくお願いいたします。
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状、といった感じです。
以上、よろしくお願いします。 【. 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; }
}
} >>692
まだいる?
なんとな〜く考えてみたんだけど。
>>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; }
# 検索終了処理
>>697
今、帰宅しました。
>>694さんのコードを試した処サーバーがResponseエラーになったのですが
myを外して見たところ上手くいきました。(もしかしてこのコードがperl4だったりするんでしょうか?)
無事出力成功しました。ありがとうございます 「さよなら原発10万人集会」を新聞はどう報道したのか?検証してみた
★政府が隠蔽したいこと
↓
@「坂本龍一 パブコメで声あげよう」
A広瀬隆が原発の再稼働を止めるために電力会社と取引を計画
http://b●log.goo.ne.jp/yqmcps
歌&作曲&演奏:坂本龍一
http://www.youtube.com/watch?v=w22IhMuwhLw
http://www.youtube.com/watch?v=iVTFeozHWcA 【. CGI名 .】 簡易データベース
【配布先URL】 ttp://www.rescue.ne.jp/cgi/database/
横から申し訳ないのですが
>>692
>>697
のものをAND検索にするには何をどうすれば良いのでしょうか 自己解決
unless 使用 myflagの値変更 【. 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";
よろしくお願いいたします。 var flag01=1;
function taisitsu() {
var flag01="";
}
スコープ違うし 【. 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
どなたがお助け下さい。お願いいたします。 【. 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);
} 以下をまるごとコメントにせい
=comment
if ($host =~ /(.*)\.(\d+)$/) { ; }
elsif ($host =~ /(.*)\.(.*)\.(.*)\.(.*)$/) { $host = "\*\.$2\.$3\.$4"; }
elsif ($host =~ /(.*)\.(.*)\.(.*)$/) { $host = "\*\.$2\.$3"; }
=cut >>707
動作確認できました!
ありがとうございます。 【 CGI&PHP名 】 Tackynote3
【 配布先URL 】 http://tackysroom.com/cgi/cgi_tackynote3.htm
【 依頼期限 】 なし
【 依頼内容 】 このCGI説明(http://tackysroom.com/page_cgi.htm)に、
『フレーム式日記帳Tackynote2にレス機能+ 画像アップロード機能』
と記載されているけど、Tackynote2の機能にある記念日設定が入っていない
のでTackynote3に記念日設定を追加したいです。
作者にメールしましたが、忙しいのか受け付けてもらえず、悩んでます。
お願いします。 chromeってバージョンアップあった?
今まで効かなかったフォントファミリーが効いてる気がするのは俺だけ?? 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
E4HWAW502D プログラミングを誰でも習得できる方法は、「前場アキドルのプログラミングマスター方法」というブログで見られるらしいよ。ネットで調べると見られるらしいです。
T8B86 ■ このスレッドは過去ログ倉庫に格納されています