ホーム > HTMLに役立つヒント
> マニュアルに書いてないきのぼず > kbjamp.cgi解説
きのぼずは2000発言を目安に過去ログに移行し、新しい掲示板をたてるように推奨されています。
僕の場合はNAMAZU検索の都合もあってcamera01、camera02、camera03と掲示板を増やしています。
ところが、掲示板も長く運営していると、あちこちにリンクができてしまいます。僕の場合だと、コンパクトカメラページから、掲示板リンク集から、NAMAZU検索ページから、ヘルプページから、機種依存文字一覧ページから、etc。最新の掲示板にリンクする箇所は増える一方で…。
いちいち全部のリンクを張り直すのが面倒になってきたので、最新の掲示板を探して自動的にジャンプしてくれるcgiを作りました。こうしておけば、これらのリンクからは、このcgiにリンクしておけば後は変更の必要がありません。
こちらで動いています。一瞬で最新掲示板にジャンプするはず。
http://www.amays.com/~mizusawa/kb/kbjamp_camera.cgi
ダウンロードページからお願いします。
中身は次の通りです。
きのぼず6.xだけです。7.xには対応していません。
設定はkbjamp.cgiの中にあります。単機能なので2カ所だけです。
# ●変数の設定=========================================
# 掲示板のシリーズ名。
# 掲示板名がcamera01、camera02、…ならcameraとする。
$bbsname = "camera";まー、つまり掲示板の名前のうち、頭の方です。
# 掲示板の後ろの数字。camera01からなら1にする。
# 1桁なら自動的に01、02のように変換し、2桁以上ならそのままとなる。
$count = '1';掲示板の名前の後ろにつく番号です。一応ですね、camera01というぐわいに「01」として、頭に「0」を付け、2桁で数字を増やしている掲示板を対象にしています。
実はcamera1、camera2、camera3のように、頭に「0」をつけずに増やしている人も、割と簡単に対応できます。
メインルーチンの次の箇所を変更してください。&count_name ; # $countを1なら01に直して$countnameにする
# ↑camera1、camera2のように素直に増えていく場合は、
# 1. &count_name ; を削除し、
# 2. $countname = $count; を代わりに入れるつまり、「&count_name ; # $countを1なら01に直して$countnameにする」を「$countname = $count;」にすればOKです。1を01に変換するルーチンをすっ飛ばすわけです。
現実に存在する掲示板が10なのに、$countを11にしてしまうと(現実にある掲示板より大きな数値を入れると)無限ループに入ります。これを防ぐために、$countが100になると強制中断します。つまり、100以上掲示板があっても、このcgiは機能しません(^^;
この場合、後ろの番号のない、BBSシリーズ名だけの掲示板にジャンプしようとするはずです。例:kb.cgi?b=camera&c=v&num=30 ←cameraだけでその後の番号がない。
必要なファイルはkbjamp.cgiだけです。kb.cgiと同じディレクトリにおいてください。EUC/LFでパーミッションは755です。
あとはkbjamp.cgiにブラウザでアクセスするだけです。
もし、a-bbs01、a-bbs02、a-bbs03というa-bbsシリーズの他に、b-bbs01、b-bbs02、b-bbs03というb-bbsシリーズがあるなら、kbjamp.cgiの名前を変更してもう一つ設置するといいでしょう。例えばkbjamp_abbs.cgiとkbjamp_bbbs.cgiをつくってやるわけです。中の設定を変更してやればOK。
何せ単機能ですから、このあたりの考え方も単機能でわかりやすいっす。
使用・商用を問わず、お好きに使ってください。改造しようがどうしようがご自由にどうぞ。改造品を再配布してもOKです。ただし、このcgiによって被った損害は補償しません。
2001/6/18 kbjamp.cgiを使わずに実現する方法
今気が付きました。別にこんなcgi使わなくたって、例えばcamera.htmlをおいといて、ここにMETAタグでジャンプ先を書いておけばいいんじゃないの?
<META http-equiv="Refresh" content="0; URL=kb.cgi?b=camera06&c=v&num=30">
で、掲示板へのリンク先はこのファイルにしておいて、掲示板が変更になったらこのファイルだけ書き換えると。このほうがスマートなのでは…(^^;;;
2001/6/13 ver.0.1
最初のバージョン。これで最後か?
水沢・penguin-19・和彦 バグ・ご要望などはマニュアルに書いてない掲示板にお願いします。