【 スクリプト改造工房 PART 7 】
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001sage
03/09/17 15:28ID:ZcvVdw5C#================================
# スレッドの説明
#================================
「スクリプトを改造したいけどやりかたわかんないよー」という人がいましたら
ここで聞いてください。ひょっとしたらアドバイス出来るかもしれません。
質問するときは以下の点に注意して書いて下さい
(1) そのスクリプトの内容と置いてある場所を明記する (txtファイルでUPすればなお良い)
(2) どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
(3) 出来るだけ詳しく書くこと。少しは自分で考えること。できれば御礼も言ったほうが良い
※答えてくれないからといって逆ギレする厨はお断り
過去ログ>>2
0810797
04/02/03 20:00ID:???一応出来た。
imgboardのようにクッキーを使おうかと思ったが、それだとcbbsを弄る必要がある。
それは超マンドクセーので、追加記述で出来る別ログに記録しる方式にしてみた。
IPで個人を識別しているので、一旦接続を切ってIPを変えたり、プロクシを刺したりしたら制限が効かない事もある。
クッキーにしたってクライアントがクッキーを破棄すれば制限が効かない事もあるで、個人的にはこれでOKかなと。。。
どうしてもクッキーでやりたいのなら、俺はパスだ。
つづく。
0811nobodyさん
04/02/03 20:03ID:???cbbs.cgi と同じディレクトリに、空ファイル hiroyuki.txt を600か606でUPしる。
cbbs.cgi の1227行目が空行になっているが、そこに
&fusianasan;
と記述しる。
つづく
0812nobodyさん
04/02/03 20:07ID:???sub fusianasan{
$limit_log = 'hiroyuki.txt' ; # エポック秒とIPアドレスを記録しるファイル
$limit_type = '600' ; # 連続投稿回数制限 サンプリング期間 (秒数)
$limit_time = '3' ; # 連続投稿回数制限 回数 (この回数までOK)
$count = '' ;
open(LOG,"$limit_log") || &er_("Can't open $limit_log");
@line= <LOG>;
close(LOG);
foreach (@line){
chomp;
@_ = split /\t/,$_ ;
time - $limit_type < $_[0] or next;
$count++ if $ENV{REMOTE_ADDR} eq $_[1];
push @line2,$_ . "\n" ;
}
&er_("overtimes 掲示板管理者が設定した連続投稿回数をオーバーしました。<BR>しばらく投稿できません","1") if $count >= $limit_time ;
open(LOG,">$limit_log") || &er_("Can't write $limit_log","1");
print LOG @line2;
print LOG time . "\t" . $ENV{REMOTE_ADDR} . "\n";
close(LOG);
}
0813nobodyさん
04/02/03 20:13ID:???元スクがuse strict してなかったから、俺も適当に書いた。
対価は前にも言ったがいらねー。
どうしても払いたいと言うのなら、>>798の名前で日本赤十字社に寄付してくれ。
金額はお前に任せる。
俺はそれでいい。
0814nobodyさん
04/02/03 21:36ID:TrK4Nuwe実際のカウント数よりワザと大幅にカウントを多く表示する
「水増しカウンタ」というスクリプトなんですが
http://dekachin.at.infoseek.co.jp/counter.txt
これを日付けが変わると同時にカウンタ数値を000にリセットするようにしたいのですが
どこをどうイジったらいいのかサッパリ…
海外サーバで使用する場合にも追加加工が必要なんでしょうか?
要領を得ない質問のしかたで申し訳ありませんが
どうかアドバイスよろしくお願いいたします。
0816nobodyさん
04/02/03 22:49ID:???$ENV{'TZ'}をスクリプト内で適切に設定すれば海外でも国内でも問題ない。
0817814
04/02/03 22:58ID:TrK4Nuweやはりかなり特殊な物なんでしょうか…
>>816様
レスありがとうございます。「statで取得」…
ググって頑張ってみます…
0818nobodyさん
04/02/03 23:11ID:???32行目
旧:($count,$truth,$times,$ips,$i) = split(/<>/,$data[0]);
新:($count,$truth,$times,$ips,$mod) = split(/<>/,$data[0]);
58行目と60行目の間に追加
my ($now_day) = (localtime(time()))[3];
my $old_day = $mod;
my $new_day = '';
if ($now_day ne $old_day){
$count = 0;
$new_day = $now_day;
}else{
$new_day = $old_day;
}
77行目
旧:$data[0]="$count<>$truth<>$tm<>$ip<>\n";
新:$data[0]="$count<>$truth<>$tm<>$ip<>$new_day<>\n";
以上。
>>817
特殊なんじゃなくて汚いわけで<ソース
0819814
04/02/03 23:39ID:TrK4Nuweわあ!ありがとうございます!
>特殊なんじゃなくて汚いわけで<ソース
そうなんですか…
自分の使ってるエディタですと多少行数が違って表示されるんですが
該当箇所を教えてくださった通りに書き換えてみました。
これを海外サーバで動かす場合は
$ENV{'TZ'} = "JST-9";
を、どこかに追加すればいいのでしょうか?
0820nobodyさん
04/02/04 17:24ID:???唐突ですみません、
質問させて下さい!
apeボードで書き込みの親記事部分にホスト表示をさせたいのですけれど、、、
こんなことって可能でしょうか
もしこちらでするべき質問ではなかったなら、本当に失礼しました
0822ИТО
04/02/04 23:16ID:rVneR8vT2chの場合はE-mailにsageと書くとトップソートしませんよね。
0823nobodyさん
04/02/04 23:28ID:???質問の前に>>1をみるなり、ネチケット守りましょう。。
自作してるんならわかるんじゃないの?
単にifで条件分岐すればいいだけの話では?
0824nobodyさん
04/02/05 01:26ID:???例えばiとmとsあたりかな。
0825nobodyさん
04/02/05 03:38ID:???0826nobodyさん
04/02/05 06:03ID:???・本文が2〜3行
・sageない
こういう奴って間違いなくマルチポストしてる
0827706
04/02/05 08:06ID:???あれからphpを勉強して、なんとか5つ星評価スクリプトを作ってみたんですけど
それをcgiに組み込むことって出来ますか?
試しにdatabese.cgiが吐き出すテンプレート用htmlの拡張子をphpに変えて
日付のスクリプト書いてみても日付は表示されませんでした…ムリなんですかね?
http://yellow.ribbon.to/~mush/star.php
0828nobodyさん
04/02/05 11:06ID:TYkaMAsnttp://www.kent-web.com/bbs/wforum.html
この掲示板に2chのような、投稿者別にIDを振って表示させたいのですが何かいい方法はありませんか?
もし何かアドバイスがあればよろしくお願いします。
0830nobodyさん
04/02/05 16:42ID:???ウェブ作成にakiaryという日記作成cgiを使用しています。
http://www.hi-ho.ne.jp/yakira/akiary/
ウェブ上で文章編集し、最新ページ作成と月別のページを自動作成してくれるツールなのですが、
そこに追加で、月別のページに日付とタイトルリストを追加しようとしてもなかなかうまくいきません。
このcgi独自のタグをいじってみても、エラーが出るばかりです。
テンプレートをいじった見本としてあげられているサイトを見ると
あっさりそれを実現している方もいるのですが、テンプレ公開などはされていません。
ttp://nanako.pekori.to/diary/200311.html (左側にちゃんとページ内インデックスが!)
サポート掲示板でもこのことが話題になっているようなのですが、
どうもまだやり方は不明のようです。
どなたか、教えて下さいませ。
0831nobodyさん
04/02/05 19:39ID:???ちょっと状況が分かりません。
>>830
まず、テンプレート(tmpbn.html)の、リストを入れたい場所に「<!-- list -->」を追加。
次に、akiary.cgiのsub MakeBNDiary内について、
・「head部作成」を「# 日付でソート」の下に移動。
・その間に、以下を挿入
foreach (@k) {
my($y,$m,$d) = unpack("A4A2A2", $bndate{$_});
my $w = &GetWdayZeller($y,$m,$d);
my $wday = ('日','月','火','水','木','金','土')[$w];
$date = substr($y,2,2)."/$m/$d($wday)"; //この行と
$list .= "<a href=\"#$bndate{$_}\">$date$bntitle{$}</a><br>\n"; //この行を適宜変更
}
$tmpbnhead =~ s/<!-- list -->/$list/;
0832831
04/02/05 19:41ID:???0833830
04/02/05 20:40ID:???素早い返信本当にありがとうございます!
さっそくやってみたのですが、パスワード入力画面ででHTTP 500 - 内部サーバー エラーが出てしまいます。
最初の「head部作成」を「# 日付でソート」の下に移動、だけだとちゃんとアクセスできるので
はりつける際にどうもわたしはなにか変なミスをしているみたいです。
//は832を見て#に変更したり、コメント部分を全部消してみたりしたのですがそれでもだめです。
cgiの変更部分のやり方は
# 日付でソート
@k=&SortedDID(*bndate);
@k=reverse(@k) if ($tmpbnrev==1);
ここに(以下)の部分
# head部作成
print FH $tmpbnhead;
であっていますでしょうか。自分では原因がつかめず悩んでいます。
(長文になりすみません)
0835830
04/02/05 21:18ID:???全角スペース、すごく基本的なことなのに5個もありました。
早速消し去り、ついでに「;」「"」等もチェックし、よし、と思ったのですが……。
夢に見たゴールはもうすぐな気がするだけに、メモ帳をにらみつつ格闘です。
がんばります。
0836nobodyさん
04/02/05 22:28ID:???メモ帳よりhttp://www.vector.co.jp/soft/win95/util/se169799.htmlこっちのほうがいい
たまに落ちるのが難点だが
0837nobodyさん
04/02/05 22:33ID:???無料でイイのがいくらでもあるんだから、面倒くさがんないでとりあえず入れとけ。
0838nobodyさん
04/02/05 22:56ID:???CGIとは何かから説明しないとって話な気もするけど、結論から言うと無理。
htmlファイルにphpを組み込むのは可能だけど、perlスクリプトの処理結果をPHPでさらに処理する事は出来ない。
CGI側でphpスクリプトを含むhtml(拡張子は*.php)ファイルを作る、とかになると思う。
あるいはPHPスクリプトをperlで書き直して移植するか、その逆か。
0839nobodyさん
04/02/05 23:03ID:???0840831
04/02/05 23:26ID:???すまん、"_"が一つ抜けていた。
foreach (@k) {
my($y,$m,$d) = unpack("A4A2A2", $bndate{$_});
my $w = &GetWdayZeller($y,$m,$d);
my $wday = ('日','月','火','水','木','金','土')[$w];
$date = substr($y,2,2)."/$m/$d($wday)";
$list .= "<a href=\"#$bndate{$_}\">$date$bntitle{$_}</a><br>\n";
}
$tmpbnhead =~ s/<!-- list -->/$list/;
0841830
04/02/06 18:09ID:???そしてまた840をコピーさせてもらい、はりつけて、UP。
エラーではなくちゃんとパスワード画面が1回で出ました!
なのですが、リストの表示がなぜかされません。
テンプレートの読み込み直しはちゃんと出来ているので、
わたしがテンプレートに追加した「<!-- list -->」の位置がまずいのかも(そんなのないかな?)。
cgiはうまくいったので(ありがとうです)、今度はそこのところをいろいろ試してみようと思います。
831さん、ほかみなさん、本当にいろいろありがとうございます。
週末はちょっとパソコンがさわれないので、うまくいったら月曜以降に報告させてください〜。
0842831
04/02/06 19:57ID:???<!-- list -->は、メインの日記部分より前なら、どこでも平気なはずです。
日記より後に入れる場合は、
$tmpbnfoot =~ s/<!-- list -->/$list/;
とりあえず作られたHTMLのソースを見て、<!-- list -->がそのまま残っていないかどうかをチェック。
0843830
04/02/06 20:44ID:???できましたー!!
なぜか思ったとおり「<!-- list -->」の位置がまずかったみたいで(野生の感?)位置を変えたらできました!
・・・と、報告に来たらまた831さんのレスが!
842で教えていただいたように変更し、最初にやりたかった「<!-- list -->」の位置で
ばっちり「こうしたいなあ」と思っていたようになりました。
もうほんとにほんとにありがとうございます。
あーすごくうれしいです。
831さん、ほかアドバイスくれたみなさん、本当にありがとうございましたー!
0844827
04/02/07 00:55ID:???>>837さん>>838さん 返事ありがとうございます。
PHPっていうのは外部(database.cgi内)のform actionからコールしても
input情報を渡すことできますか?拡張子が*.phpのページからしかダメなのかな。
もし外部からでも渡すことが出来るなら、5つ星評価スクリプトの表示部分だけ
Perlで書いて、データの書き込みはPHPにやらせればできそうかなぁ。
本当はPerl内にぜんぶ書いたほうがスマートだと思うんですけど。
下のPHPスクリプトをPerlに移植してもらえたら嬉しいんですけど甘ちゃんですか…?お願いします。m(_ _;)m
★表示箇所
$log = "data.log";
$fd = fopen($log, "r");
$buffer = fgets($fd, 1024);
list($line, $st, $ct) = explode("|", $buffer);
fclose($fd);
$ave = round($st/$ct, 2);
if(!$__1__){
echo "データがありません";
}elseif($line==$__1__){
if($ave>=5) $star="★★★★★";
elseif($ave>=4) $star="★★★★";
elseif($ave>=3) $star="★★★";
elseif($ave>=2) $star="★★";
elseif($ave>=1) $star="★";
}
$result = "Rating:$star ".$ave."<br>Vote : $ct";
0845827
04/02/07 00:56ID:???__1__ はdatabase.datのタブ区切りで記入されている各配列の1番目のキーを入れたい。
database.cgiのテンプレートに __1__ を記入すれば1番目のキーを呼び出せるので
テンプレートに書いたフォームのinput valueに__1__を指定すれば、phpに情報を
渡せるかも。でもcgi内で★評価対象配列の1番目のキーを参照させるには?
database.cgiが処理したページのURLを見ると下記のようになってます。
hxxp://pc2.2ch.net/php/database.cgi?sline=1&print=1&keys2=スクリプト改造工房&tid=list2
sline=1のパラメーターがdatabase.datの上から1番目の配列ということです。
説明不足があったら突っ込んで下さい。
▽database.cgi テキスト
http://yellow.ribbon.to/~mush/database.txt
▽完成イメージ
http://yellow.ribbon.to/~mush/abc.htm
0846nobodyさん
04/02/07 04:17ID:???refererの制限をしていない限り、どこからPHPを呼び出しても問題ない。
$log = "data.log";
open(FH, $log);
$buffer = <FH>;
($line, $st, $ct) = split("|", $buffer);
close(FH);
$ave = sprintf("%1.2f", $st/$ct);
if(!$__1__){
print "データがありません";
}elsif($line==$__1__){
if($ave>=5) $star="★★★★★";
elsif($ave>=4) $star="★★★★";
elsif($ave>=3) $star="★★★";
elsif($ave>=2) $star="★★";
elsif($ave>=1) $star="★";
}
$result = "Rating:$star ".$ave."<br>Vote : $ct";
0847nobodyさん
04/02/07 09:30ID:fzL4+sPl↑このサンプルの元となっているCGIを利用したいのですが、
新着レスを上げる機能がついている、とあるのですが、
投稿した直後は上がってるんですが、更新すると
また親記事のナンバーの順に並んでしまいます。
一度、下の方のツリーにレスを入れた後、更新してみてもらえると
分かるかと思います。
こちらで配っているCGIの元ソースは、
http://csx.jp/~minamonami/
にアップしておきました。
もうほとんどBBSのスキンや他の部分の改造は完成していて、
ようやく使えると思ったら、今になってこのバグに気がつきました。
でもこちらのサイトではユーザーサポートをもうほとんどしていないようなので、
他のCGIの「レス上げ機能」を記述しているらしき部分を抜き出して、
比較検討等をしてみたのですが、私にはどうしても原因が分からず、
いくらコピペして加えてみても、エラーが出るばかりで…。
もしこのまま新規レスを上げることが出来ないのであれば、
今になってこのCGIの使用を諦めざるを得ない状況に陥っています。
もし大変な作業になるのでしたら、素直に諦めますが、
もし比較的簡単な変更で「新規レス上げ」が可能になるのであれば、
どうかお知恵を貸して下さい。よろしくお願いいたします。
0848nobodyさん
04/02/07 10:41ID:???sub data_openの終わりの辺りの、
push(@true_nums,$_) if($res_nums{$_} eq $_);
の後に、
@true_nums = sort {$last_times{$b} <=> $last_times{$a}} @true_nums;
を追加。
0849847
04/02/07 10:55ID:???もう感動のあまり言葉が出ません!
信じられないスピードで回答を頂き、本当にうまく成功いたしました!
今からじっくりこの構文の意味を分かるまで
勉強していきたいと思います! 本当に本当にありがとうございました!
あぁ! 諦めなくてよかった!!
0850ひと ◆/FoolZy9t.
04/02/07 14:20ID:DTKZ/Kh0#------------------#
# トリップ処理 #
#------------------#
sub trips {
my $trip;
$_[0] =~ s/◆/◇/g;
if ($_[0] =~ /#(.*)$/){
my $key = $1;
my $salt = substr($key."H.", 1, 2);
$salt =~ s/[^\.-z]/\./g;
$salt =~ tr/:;<=>?@[\\]^_`/ABCDEFGabcdef/;
$trip = substr(crypt($key, $salt), -10);
# トリップを名前に追加
$_[0] =~ s/#.*/◆$trip/ if ($trip);
}
}
のような方法でYYBBSにトリップを入れようとしているのですが、
(&trips($in{'name'})で呼び出す)
何故かトリップが2chのものと異なってしまいます。ローカルでもです...
なので、Joyful2ch-Me(http://www.nunokawa.soft.iwate-pu.ac.jp/~kaz/)
をローカルで実行してみたら、正常に2chのトリップを出したのですが、
(こっちのトリップ生産方法も試しましたが、無理でした...)
何故結果が変わってしまうのでしょうか...
0851nobodyさん
04/02/07 14:22ID:???criptにはいくつかアルゴリズムがあります。
要は文字列を不可逆変換できればいいのでそんな感じになってるんでしょうな。
その後の文字列をどうこうするまでは考えられてないんでしょうな。
0852nobodyさん
04/02/07 15:06ID:peAnhjoK「もっと書き込み隊」で、
ホストでなく名前で書き込み禁止にしたいのですが。
改造部分を教えて頂けないでしょうか。
0853nobodyさん
04/02/07 15:42ID:???Joyful2ch-Meと比べたけど、★の処理以外同じなので、別の所に問題があるのでは?
無理でしたというが、なぜ無理なのかよく分からないが。
サブルーチン内をコピペし、いらない$passの行を除くだけだが。
0854ひと ◆/FoolZy9t.
04/02/07 16:47ID:???アルゴリズムですか...
確かに文字列をどうするか考えて無かったです...
>>853
一応、無改造のスクリプトに組み込んでみたのですが、トリップが
異なってしまいました。
分かりにくかったですね...すみません。plとcgiをtxtにしたURL貼ります。
http://khitoshi-web.hp.infoseek.co.jp/trip.txt
trip.pl(サブルーチンです。)
http://khitoshi-web.hp.infoseek.co.jp/yyregi.txt
yyregi.cgiです。
0855nobodyさん
04/02/07 17:12ID:???同じ環境でcryptの結果が変わることは無いはず。
(Perlの場合、違う環境でも同じかな)
サブルーチン中の、$saltや$tripをprintして比べてみたら?
0856nobodyさん
04/02/07 17:27ID:???ひょっとしてsaltの取得が一文字ずれてやしませんか奥さん。
0857nobodyさん
04/02/07 17:34ID:???0858ひと ◆/FoolZy9t.
04/02/07 18:00ID:???◆45WAt2004s(#esq-i@a`)のトリップでやってみたところ、
YYBBS→sq 45WAt2004s
Joyful2ch-Me→sq 45WAt2004sでした。
(sqは$saltです。)
◆fs2004piwk(#S}QR%dIN)でもやってみましたが、結果は同じです。
でも何故かこのトリップ(◆/FoolZy9t.)をやると、
ub TkQu1fW4UYとなり、Joyful2ch-Meだとub /FoolZy9t.でした。
何故かYYBBSでは$saltは正常なのに、何故か$tripが変わってしまいました...
>>856-857
正常なトリップは出ませんでした。。。
0859nobodyさん
04/02/07 19:28ID:???0860nobodyさん
04/02/08 03:47ID:???◆ 全サーバトリップ統一作戦
http://qb3.2ch.net/test/read.cgi/operate/1067245837/l50
このあたりを読んでみるとか。
0861ひと ◆/FoolZy9t.
04/02/08 20:20ID:???読んで見ました。しかし、いまいち原因が分かりません、、、
原因はcryptの結果だと思います。。。
でも、結果が異なるのは何故だろう。。。
スクリプトを見直して色々考えてみます...
0863862
04/02/08 20:49ID:???0864nobodyさん
04/02/08 21:06ID:???見た目同じ2バイト文字であってもコードが違えばバイナリが違います。
ですので違う結果になります。ソースはShiftJISで書かれていますが
デコード部分が確認できませんので確実にShiftJISにされているか
確認してみると良いかもです。フォームの内容はフォームがあるHTMLの
文字コードで送信されますので表示するHTMLの文字コードもShiftJISに
なっている必要があります。
ただ試されてる文字列では2バイト文字含んでないので関係無いかもしれません。
あと考えられるのは、8ケタトリップの頃にしか確認していませんが
トリップを生成するまえに<や>,&のエスケープをしていたはずです。
逆に、そのBBSのスクリプトのデコード部分でなにか余計な変換を
していないか確かめるべきだと思います。
0865ひと ◆/FoolZy9t.
04/02/08 21:06ID:???http://qb3.2ch.net/test/read.cgi/operate/1067245837/76
これですね。いまいち意味がはっきりわかりませんでした...
変換されている様です。変換されている場合とされていない場合で試しましたが、
やっぱりTkQu1fW4UYでした。。。もう少し考えてみます。
0866nobodyさん
04/02/08 21:08ID:???俺が知ってる限りは、8ケタトリップ時代には
<や>,&のエスケープはトリップ作成前になされて
&とかになってたはずです。
10桁のは知らないですが・・
0867nobodyさん
04/02/08 21:10ID:???エスケープはトリップ作成前になされて&amp;とかになってたはずです。
何度もすみません
0868ひと ◆/FoolZy9t.
04/02/08 21:35ID:???http://khitoshi-web.hp.infoseek.co.jp/yyini.txt
yyini.cgiです。一応出しておきます。
# S-JISコード変換
&jcode'convert(*val, "sjis", "", "z");
# タグ処理
$val =~ s/&/&/g;
$val =~ s/"/"/g;
$val =~ s/</</g;
$val =~ s/>/>/g;
$val =~ s/\0//g;
#$val =~ s/<>/<>/g;
のようになっているので特に変な変換などはされていないようです。
コードはShiftJISになってしました。もう少し確認などしてみます。
0869nobodyさん
04/02/09 15:00ID:???が物凄く横に長くなってしまうのが嫌なので対策しようと思っています。
考え方としては、2chのように書き込み時に横に長い場合エラーを出すのがよいかと
思うのですが、どのようなコードを書けばよいのでしょうか?
正規表現である長さごとに改行コードがない場合はエラーでよいのでしょうか?
0chスクリプトなど読んで見たのですが該当する部分が見つからず頓挫してしまいました
このスクリプト見ろでもよいので、ヒントを頂ければと思います。
0870nobodyさん
04/02/09 15:25ID:???いくら横に長くても、全角文字なら改行されると思うので、
if ($text =~ /[\w]{100}/m) { エラー処理 }
という感じでいいんじゃない。
まあ ' とか . とかでも改行されないので、[ ]の中は適当に増やして。
0871nobodyさん
04/02/09 15:34ID:???# 例:80文字以上の行があればエラー
die "Error\n" if (grep{80<length}split(/\n/,$msg));
0872869
04/02/09 16:08ID:???if ($text =~ /[\w|'|\.|\*]{100}/m) { エラー処理 }
みたいな感じですね。
すっごくシンプルにできるんですね。ちょっと感動しました。
全角なら確かに改行をブラウザが勝手にしてくれるのでこれでOKっぽい気がします。
>>871
僕が始め考えていたのはこっちの方ですね。
全角でも一行に80文字以上ある場合はエラーにしたい場合はこっちでしょうか。
僕の掲示板では870の方が好ましいので、こちらを使わせて頂きます。
わざわざありがとうございました。
0876nobodyさん
04/02/09 18:19ID:???$in{'name'} =~ s/◆/◇/;
$in{'name'}のデータを変換するんじゃないの?
0879nobodyさん
04/02/09 20:04ID:???http://yaoobuoo.2ch-trip.com/page010.html
0880ひと ◆/FoolZy9t.
04/02/10 14:09ID:???を入れたら直りました。どうやら半角カナは勝手に全角に変換されてしまっていた様です。
おさわがせさせてすみませんでした...
0881nobodyさん
04/02/10 15:48ID:???>半角カナは勝手に全角に
勝手?ぬぁにを無礼な。
jcode.plの中身を読んで>868のコードの意味をちゃんと理解しろ。
0882ひと ◆/FoolZy9t.
04/02/10 17:18ID:???失礼しました。&jcode'convert(*val, "sjis", "", "z");の
部分の意味がないですね。。。そうしたらeucなどにならず化けませんし...
どうもすみませんでした。さらに違っていたらすみません。。。
0883ひと ◆/FoolZy9t.
04/02/10 17:21ID:???皆様、どうもありがとうございました。
どうもすみませんでした...
0884nobodyさん
04/02/10 19:16ID:???0886nobodyさん
04/02/10 23:21ID:???希望としては、
�@レスできること
�Aアイコンが使えること
�BPCだけでなく携帯全キャリアにも対応していること
�C携帯で見た場合に、タイトルが一覧で表示されること。
記事内容、レス記事まで表示されると携帯ではツライから・・・。
以上の点で自分で探した結果、KENT WEBで頂いた「YY-BOARD」
の携帯対応バージョンが良さげだったのですが、条件�Cを
満たせなかったので、イイのあったら教えて下さい。
と言う内容で、web制作板で聞いたら、こちらを教えられました。
改造なんて自信ないですが、やる気なんでよろしくお願いします。
0887886
04/02/10 23:25ID:???ttp://www.url-battle.com/cgi/
にYY-BOARDにある携帯対応版です。
0889886
04/02/10 23:34ID:???携帯で見た時に、親記事とレス記事の内容が
いきなり表示されるのではなく、まず親記事の
タイトルと投稿者名、日時、アイコンが表示されるように
改造したいです。
よろしくお願いします。
0890nobodyさん
04/02/10 23:45ID:???0891nobodyさん
04/02/10 23:49ID:???0892886
04/02/10 23:56ID:???まあいいや・・・諦めます。
誘導してくださった方には感謝してます。
では。
0893某スレ87
04/02/11 00:46ID:???だから最初から最後まで教えてチャンだと叩かれると言ったのになぁ・・・
>>890
責任とりにきますた
捨て台詞も残してるし>>886が見るかどうかわからんが一応責任とる。
346行目近辺の
print "<a href=\"$script?mode=msgview&no=$no\">$tempno</a>$temp\n";
を時間とアイコンを加えたいなら
print "<a href=\"$script?mode=msgview&no=$no\">$tempno</a>$temp $dat <img src=\"$ico\">\n";
とでも書き換えれ
表示(順番とか)が気に入らなければ適宜自分で変更すべし
それにしてもこのスク、ぐちゃぐちゃで嫌い('A`)
0894893
04/02/11 00:50ID:???yybbs.cgiの346行目近辺
動作確認はしてないがたぶん大丈夫だと思う
0895893
04/02/11 01:01ID:???×print "<a href=\"$script?mode=msgview&no=$no\">$tempno</a>$temp $dat <img src=\"$ico\">\n";
○print "<a href=\"$script?mode=msgview&no=$no\">$tempno</a>$temp $dat <img src=\"$imgurl$ico\">\n";
上記のようにしないとicon表示できんわ
0896886
04/02/11 01:34ID:???ありがとうございます!
まだ試してないので、今からやってみます。
ちょっと時間かかるかもしれませんが、また
経過報告しに来ますね。
マジで感謝です!!!
0897886
04/02/11 01:44ID:???親記事の内容とレス記事が最初の画面では出ない
ようにしたいんです。
やっぱり説明の仕方が足りませんね。反省しました。
皆に叩かれるのも当然です。
レスしてくれたのには大変感謝してます。
ありがとうございました。
0898nobodyさん
04/02/11 02:07ID:???ttp://www.url-battle.com/cgi/yybbs52/yybbsk.cgi
どこをどう見ても最初の画面内に時間とアイコンがあるようには見えん
親記事の内容とレス記事が出てるようにも見えん
バージョンの違いか?よくわからんが
とにかく自分で色々試行錯誤しろよ
0899886
04/02/11 02:49ID:???本当ですね。
でも今も携帯で見たけど、PCと同様の表示がされるんですよ・・・。
ソース見て設定の仕方も見たけど、携帯用の表示をするように
設定してあるんですけどね。
なんでなのかな?
どうも色々つきあってくれて本当にありがとうございます。
0901790
04/02/12 14:55ID:???お時間がかかるとの事でしたので巡回対象から外しておりました。
こんなに早く改造して頂けるとは思っていなかったのでびっくりしております。
気づくのが遅くなりご気分を害されましたらお詫び申し上げます。
(>>885は797さんですよね・・・)
早速ご指示の通りスクリプトの改造を行った所、正常に連続投稿制限がかかりました!
ご提示頂いた内容はさっぱり分かりませんがcgiにコピペをし、hiroyuki.txtを606でアップロードしただけで
こんなに簡単にできてしまうとは本当に驚きです。
無理そうなら他のcgiを利用しようかなと考えていた所だったので非常に助かりました。
お忙しい中、見ず知らずの私の為にお時間を割いて作業して頂けた事を感謝致します。
>>813でのご指示通り、対価の20,000円は日本赤十字に円を寄付してきました。
周りから「ウソつけ!」って思われたくないのでスキャンした振込用紙うpしておきます。
http://homepage3.nifty.com/qvga/ftp/furikomi.jpg
0905nobodyさん
04/02/13 19:08ID:???PCで閲覧する用に作られたサイズの大きなWebページを
i-modeなどの端末で見られるように不要なタグを除去したり
分轄したりして表示する、nogateというCGIなのですが
nogate配布ページ
ttp://www.geocities.co.jp/Playtown-Denei/1097/cgi/nogate.htm
設置サンプル
ttp://www.twin.ne.jp/~miyasita/oyaji/nogate/n.cgi
スクリプト
ttp://sobchan.no-ip.com/cgi-bin/wc/source/unko20040213184647.txt
・行頭の全角スペース(字下げ)を除去する
・行頭の◎や★などの記号も除去する
この二つの機能を追加したいのです。
503行目からフィルタリングについて書いてあるようなのですが。
どなたかご教授お願いします。
0906790
04/02/13 21:38ID:???お礼を言わなければいけないのはこちらの方です。ありがとうございました。
また、早急に対応して頂いたのに気付くのが遅くなってしまい申し訳ありませんでした。(今回も亀レスですみません。)
本来であれば自分の取り分であるはずの対価を、「赤十字に寄付してくれ」と言える797さんに私は感動します。
もう1つの依頼を受けて頂けるとの事、ありがとうございます。この機能が付けれれば理想としている掲示板が作れそうです。
>>901のURLからも分かってしまう通り、QVGAサイズ(240×320pix)専門の画像掲示板を運営しております。
QVGA以外の画像は削除対象なので今までは手作業にて削除しておりましたが
多い時には1日40枚を超える投稿があり、手動削除作業に限界を感じております。
上記の理由で、240×320と320×240(縦画像と横画像がある為)以外のサイズは投稿不可とする機能が欲しいと思っています。
http://www.cj-c.com/sp/cbbs.cgi?mode=al2&namber=8523&rev=&no=1
↑のようにサポートBBSに質問をし、回答の通りにコピペ・書き直しをしてみましたがcgiエラーが発生し投稿する事ができませんでた。
http://homepage3.nifty.com/qvga/ftp/cbbs_kai.txt
できそうなできなそうな微妙な部分ですが、ご協力頂ければ幸いです。
なお、申し訳ありませんが、予算を使い果たしてしまったので対価は無しという事でよろしいでしょうか?
図々しくてすみません。宜しくお願い致します。
0908907
04/02/14 21:11ID:???} は1179行目だ!
あと、
1139行目の if($fimg eq "img" && $FORM{'min'}==0){
この時点で$fimg は何も入ってないみたいだから、このブロックは実行されない。
$fimg や $FORM{'min'} は何かわからんが、
1139行目は、
if($FORM{'min'}==0){
こうしておくか。
それと、サイズは240×320と320×240 きっちりじゃなければエラーでよろしいか?
230×300もエラーでよろしいか?
なら1138行目を
unless($IW == '240' && $IH == '320' or $IW == '320' && $IH == '240'){&er_("画像サイズが$IW×$IHになってます。<br>画像サイズは240×320か320×240にしる!");}
に変更。
0909nobodyさん
04/02/14 21:18ID:???@niftyつーのは標準モジュールすら入ってないみたいなのね。
もしサーバを移転しることがあったら、GDかImage::Magickが入ってるサーバを選ぶといいよ。
画像掲示板を運営しているんなら。
何かと便利だよ。
0910797
04/02/14 21:37ID:???>>908に間違いがあった。
改めて改造個所を整理しておく。
1139行目
if($file && $FORM{'min'}==0){
に変更
1178行目
unless($IW == '240' && $IH == '320' or $IW == '320' && $IH == '240'){&er_("画像サイズが$IW×$IHになってます。<br>画像サイズは240×320か320×240にしる!");}
に変更
1179行目
if($FORM{'URL'}){
を
}
if($FORM{'URL'}){
に変更
レス数が900を超えています。1000を超えると表示できなくなるよ。