人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

THE ROOMのPOWER SEARCHというCGIリンク集を組み込んでいます。
そこで、新規に登録されたサイトは新着サイトページに7日間表示されるように設定したのですが、それと同じように、マーク設定で自分で作った“NEW”というマークを登録時に自動的に表示させ、なおかつ7日間だけ表示させるようにするにはどのファイルの、何行目を直せば良いのでしょうか。
ご協力お願い致します。

●質問者: akr-x
●カテゴリ:インターネット ウェブ制作
✍キーワード:CGI POWER サイト ファイル マーク
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Mook
●200ポイント ベストアンサー

実際のデータによらず、登録後7日間だけ自動で表示するようにするための変更です。


(1)まず、デフォルトで使用するマークの番号を定義します。

ps_prf.cgi のマーク設定の後ろ(116行目近辺)に設定します。

#新規登録時に使用する自作NEW mark 番号
$myNewMark = 1;

仮に1としていますが、実際はマーク設定の中の該当する番号を指定します。


(2)ps_search.cgi の 672?675近辺を下記のように変更

 for ($i=0;$i<=7;$i++){
 last if $marks[$i][1] eq "";
 if ( $i == $myNewMark ) {
 if ( $y2[8] + $newtime*86400 >= time() ) {
 $mark .="<img src=\"$marks[$i][1]\" width=$marks[$i][2] height=$marks[$i][3] alt=$marks[$i][0]>";
 }
 } else {
 $mark .="<img src=\"$marks[$i][1]\" width=$marks[$i][2] height=$marks[$i][3] alt=$marks[$i][0]>" if $y2[0]=~/$i/;
 }
 }

(3)自動制御のためチェックボックスを画面から消去します。

ps_user.cgi の 320 行目あたりに下記を追加

for (0 .. 7){
next if $marks[$_][1] eq "";
next if $_ == $myNewMark;
if ($data =~ /^\d*$_\d*</){

で、ご希望の動作になるでしょうか。



(どうでもよい話ですが、powersearch のコードのインデントは癖があって読みづらい・・・。)

http://dream.lib.net/room/cgi/e_ps.html

◎質問者からの返答

有難う御座います。なんだかMookさんの凄さに疲れてしまうほど…。素人の私に言われても嬉しくないと思いますが、完全にプロの領域ですね。

有難う御座いました。またお願い致します。

私ははてなに慣れていないのですが直接Mookさんに質問する(Mookさんのページみたいなもの)事は出来るのでしょうか?

クセがあるpower search…なのに、有難う御座いました(笑)

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ