CGI 2016年08月16日 15:04 編集
お知らせ
ユーザーがトレンドマイクロのセキュリティソフトを使用している場合、アクセス制限ページのログイン情報が外部に漏れる恐れがあります。対策を施したver.1.12に更新をお願いします。需要がどれくらいあるかわかりませんが、ファイルの更新時間を変更するCGIを公開しました。
私の場合は、掲示板などのログファイルの更新時間を変更するのに使っています。
なぜ、ログファイルの更新時間を変更する必要があるかというと、スパム投稿対策のためです。ウチの検索サイトでは、掲示板などのログファイルの更新時間をチェックして、何日以内の更新だったら new! 表示したりしています。当然ながらスパム投稿の場合でもログファイルが更新されると new! 表示されます。
スパムを削除してもログファイルの更新時間は元には戻りません。(スパムを削除した時間にさらに更新されるだけです。)
そうすると、スパムを削除してログの中身は元の状態に戻っているのに new! 表示だけが残ってしまうことになります。
これはやはり具合が悪いので、こういう場合は更新時間変更CGIでログファイルの更新時間を、スパムが投稿される元の時間に戻すようにしています。
また、最近はWEB上ではなく、パソコン内のファイルの更新時間を変更したいというケースもあるので、ローカル環境でも使いやすいよう改修したものを公開することにしました。テキストボックスに入力したディレクトリに移動できるようになっています。日本語のフォルダやファイルにもアクセスできるようです。(すべて大丈夫かわかりませんが)
web上での使用も考えて、簡単なアクセス制限機能もつけています。このCGIはファイルの更新時間を変更することしかできませんが、使い方によっては見えてはいけないファイルも見えてしまうという危険があるからです。WEB上に設置する場合、極力わかりにくいパスワードを設定してください。
- ダウンロード time_stamp_1.12.zip (205Download)
- ver.1.12 2013/03/14
- ログイン後の認証を一時ファイルによる認証に変更。
- ver.1.1 2011/06/17
- 秒単位まで編集できるようにしました。
設置
ダウンロードしたファイルを解凍したら、time_stamp.cgi1行目の#!/usr/local/bin/perlをサーバーに合わせて変更してください。
パスワード制御するなら(24行目がmy $use_pass = 1;なら)
25行目の
my $pass = '';にパスワードを入れてください。
修正は以上です。あとはサーバーにアップロードしてtime_stamp.cgiのパーミッションを適当に設定してください。
使い方
- 更新時間を変更したいファイル名をクリックすると、変更フォームが現れます。「指定した時間に変更する」を選んで、日時を変更し、「タイムスタンプ修正実行」ボタンを押すと更新時間が変更されます。
「現在に変更する」を選んだ場合は、現在の時間に更新されます。 - ディレクトリ名をクリックするとそのディレクトリに移動します。ディレクトリ名クリックはそのディレクトリへの移動に割り当てているので、ディレクトリの更新時間変更はとりあえずできません。
- ファイル名、ファイルのサイズ、最終更新時間でソートできます。たとえば、名前をクリックするとファイル名を昇順でソートします。もう一度名前をクリックすると降順でソートします。
サイズ、最終更新時間のソートも同じように2度続けてソートすると表示順を逆にします。 - フォルダとファイルは分けて表示しますが、フォルダを先に表示したり、ファイルを先に表示したりすることができます。
・・・と思っていたら、いつの間にか1970年以前や2038年以降への変更もできるようです。PHPと同様にサーバーのPerlも64bit化されているのかもしれません。
counter:21,779
CGI 2023年02月26日 14:54 編集
counter:32,505
CGI 2016年08月26日 12:24 編集
お知らせ
プライベートディレクトリの利用者がトレンドマイクロのセキュリティソフトを使用している場合、プライベートディレクトリへのログイン情報が外部に漏れる恐れがあります。対策を施したver.1.0に更新をお願いします。受験戦争の過熱を抑えるためか、最近ではテストの偏差値を出さない学校が増えたようです。
しかし、試験の点数だけでは、成績が上がったのか下がったのか、イマイチわかりにくくて困る場合もあります。
こういうときはやはり偏差値がわかると便利です。
counter:22,515
CGI 2018年03月01日 10:32 編集
時間単位での細かい予定を書き込み、グラフ表示する予定表です。バグなどありましたら、CGIサポート掲示板までお願いします。
誰でも入力・閲覧できるが、編集・削除は入力者のみというモードを追加しました。(2017/03/29)
- サンプル
- schedule_1.22.zip (206Download)
誰でも入力・閲覧できるが、編集・削除は入力者のみというモードを追加しました。(2017/03/29)
counter:22,557
CGI 2016年08月22日 12:21 編集
-
利用者はプログラムの著作権表示を削除する事は出来ません。必ず「見える」位置に表示してください。
また削除しなくても、極端に小さくしたり、配色の具合等により表示を見えにくくしてしまう行為も実質的な削除行為となります。
-
プログラムを改造して利用することは自由です。
プログラムを改造し再配布することについては、今のところ想定していません。
-
すべてのプログラムが、すべての環境で動作する事は保証していません。
-
当サイトのプログラムを利用した事によるいかなる損害も作者は一切の責任を負いません。
-
作者に著しく不利益があると判断した場合には一方的にプログラムの使用を中止していただくことがあります。
-
設置に関する質問はすべてCGIサポート掲示板でお受けします。直接メールによるサポートは行なっておりません。
-
この「利用規定」は予告なく改編・加筆を行うことがあります。
counter:20,199
- Re:プラグイン「アクセス」について 2025-01-28 15:32:48 N2FlZWRlOW 返信
ご説明 感謝です。
いろいろ試したところ、動作が呑み込めました。
カウンターを有効にして連続アクセスをカウントしない、第4オクテットを無視という設定にすると、クローラーのカウントが少なくなって実際の閲覧傾向がわかりそうです。
今後ともよろしくお願いします。
- Re:プラグイン「アクセス」について 2025-01-28 00:00:50 管理人 返信 編集
>管理者ページで「アクセスカウンター」を「1」、つまり有効にしたら表示されました。
>これと プラグインの [[access]] は連動してたんですね。
連動してるってわけでもないんですが、
accessプラグインはアクセスカウントの多い順に記事名を表示するものなので
アクセスカウンターカウンターを有効にしてカウントを取らないと表示する記事がなかったということになります
なので、一度アクセスカウントを集計すると「アクセスカウンター」を無効にしても
accessプラグインは動作します。もちろん表示されるアクセスカウントは変わらないですが。
- Re:プラグイン「アクセス」について 2025-01-27 15:00:22 flipflop 返信 編集
ご迷惑をおかけしました。
たったいま、素の ver1.192 をダウンロードして試してみたところ、表示されました。
少しスクリプトをいじったりした こちらの環境のせいで表示されなかったようです。
この作業を先に行うべきでした。
配布スクリプトには問題ないようですので、質問を取り下げさせていただきます。
お時間をとらせていまい 申し訳ありませんでした。
今後ともよろしくお願いいたします。
【追記】2025.01.27 15:00
こちらの勘違いでした。
管理者ページで「アクセスカウンター」を「1」、つまり有効にしたら表示されました。
これと プラグインの [[access]] は連動してたんですね。
お手数をおかけしました。解決です。
>[[access(20)]]
>と記述すると閲覧数が多い上位20件を表示することになるのですが
>それが表示されないということでしょうか?
- Re:プラグイン「アクセス」について 2025-01-27 12:09:38 管理人 返信 編集
>ページごとの閲覧状況を知りたいと思い、ほかのプラグインのように たとえば [[access(20)]] のように記述したのですが、記述ページに反応がありません。
[[access(20)]]
と記述すると閲覧数が多い上位20件を表示することになるのですが
それが表示されないということでしょうか?
- プラグイン「アクセス」について 2025-01-26 22:32:25 flipflop 返信 編集
快適に使わさせていただいています。
term_ver1.192 のプラグイン「アクセス」についてお伺います。
ページごとの閲覧状況を知りたいと思い、ほかのプラグインのように たとえば [[access(20)]] のように記述したのですが、記述ページに反応がありません。
これまで使ったプラグインはすべてうまくいっていたので 同じようにやってみたものの、アクセスだけが機能しません。
公開されているなかで一番古い ver1.188 の access.php と置き換えてみましたが、状況は同じでした。
こちらの手落ちや勘違いかもしれませんが、何かほかになすべきことがありましたらお教えください。
急ぎませんので よろしくお願いします。
- Re:URLのページNoの後ろに付いた%27のアクセス 2024-10-26 20:22:23 flipflop 返信 編集
早速のご回答 ありがとうございます。
どちらも警告エラーが出ないことを両方で確認しました。
先に示されたほうでは、余計なものを除外ということで、ページ(記事)は表示されます。
後者のほうは、余計なものが付くと記事が表示されないという結果でした。
私としては、正規のURLでなければ表示する必要はないと思いまして、後者(1行の修正)のほうを使うことにしました。
>これも本来なら対応不要だと思います・・
ご見解ごもっともだと思います。
そんな問い合わせにお付き合いいただき感謝に堪えません。
今後ともよろしくお願いいたします。
- Re:URLのページNoの後ろに付いた%27のアクセス 2024-10-26 14:36:44 管理人 返信 編集
if (!is_numeric($page) || $line_nmb < $page * $option['page_line'] || $line_nmb >= ($page + 1) * $option['page_line']) {
のほうが簡単ですね。
$line_nmb++;
continue;
}
- Re:URLのページNoの後ろに付いた%27のアクセス 2024-10-26 11:09:26 管理人 返信 編集
pageのクエリパラメーターからは数値しか送られてこないことになっているので
エラーが発生しているということでしょうね。
これも本来なら対応不要だと思いますが、エラーログが気になるなら$page = preg_replace('/[^0-9]/','',$page);
のように修正して$pageに含まれる数値以外を削除してしまうという方法が考えられます。
if ($line_nmb < $page * $option['page_line'] || $line_nmb >= ($page + 1) * $option['page_line']) {
$line_nmb++;
continue;
}
- URLのページNoの後ろに付いた%27のアクセス 2024-10-25 15:23:08 flipflop 返信 編集
いつもお世話になっています。
今回も意図的に発生させる警告エラーの件で申し訳ありません。
手作業なのか、何のためにやるのか 皆目見当もつかないのですが、
最近URLのページ数の後ろに「'」を付け足してアクセスしてくるログをかなり見かけるようになりました。
当たり前の閲覧であれば
id=[こちらのID]&page=15&noform=[こちらのID]
のようになるわけですが、下のようにページ数の後ろに「%27」を付けてアクセスしてきます。
id=[こちらのID]&page=15%27&noform=[こちらのID]
そうすると1回のアクセスで警告エラーログが数百件も生成されてしまうので 鬱陶しいというのが本音です。
以前ご相談した id2 でのスラッシュのようなものですが、方法があれば(そう難しくないのであれば)お教えいただければありがたいです。
お手すきのときで結構ですので、よろしくご指導ください。
【アクセスログ】※こちらで意図的に「'」を付け足してアクセスしたときのログです。
[こちらのIPアドレス] - - [25/Oct/2024:13:29:42 +0900] "GET /*****_php/bbs.php?id=[こちらのID]&page=15%27&noform=[こちらのID] HTTP/2.0" 200 16528 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0"
【エラーログ】※この内容と同じログが数百行 イッキに生成されます。
[Fri Oct 25 13:29:42.253170 2024] [fcgid:warn] [pid 3159058:tid 140171513931520] [client [こちらのIPアドレス]:21611] mod_fcgid: stderr: PHP Warning: A non-numeric value encountered in /var/www/clients/client492/web914/web/*****_php/bbs.php on line 1435
■line 1435 付近の記述
if ($line_nmb < $page * $option['page_line'] || $line_nmb >= ($page + 1) * $option['page_line']) {
$line_nmb++;
continue;
- Re:投稿フォームを隠した状態での表示 2024-09-16 21:46:29 flipflop 返信 編集
早速のレス ありがとうございます。
>init.phpに
>$hide_form=1;
>を追記するとデフォルトが非表示にできるようです。
早速追記しました。
>ただしフォームの表示/非表示はクッキーに保存されているので、前回フォームを表示していたら、次に開いた時も表示されることになります。
了解しました。
閲覧者が投稿フォームを開いた状態でブラウザを閉じるってことも ほとんどないでしょうから、この状態で使用します。
リンクは URLの後ろに ?hide_form=1 を追加したものを使うことにします。
今後ともよろしくお願いします。
- Re:max_log のお礼と投稿フォームを隠した状態での表示 2024-09-16 16:55:49 管理人 返信 編集
フォームを非表示にするならやはりリンクを
>URLを
>https://****/〇〇/bbs.php?hide_form=1
にするのが簡単だと思いますが、試しにinit.phpに$hide_form=1;
を追記するとデフォルトが非表示にできるようです。
ただしフォームの表示/非表示はクッキーに保存されているので、前回フォームを表示していたら、次に開いた時も表示されることになります。これは逆も同じです。
- Re:max_log のお礼と投稿フォームを隠した状態での表示 2024-09-16 08:09:44 flipflop 返信 編集
アドバイス ありがとうございます。
>dataディレクトリの共有ですか。想定していませんした。
暇に飽かせて、知識もないのに試してみるのが好きな性分です。
おかげさまで一つのデータを複数の掲示板で利用できました。
このスレッドで申し訳ないのですが、もう1点 お教えください。
https://****/〇〇/bbs.php
で掲示板にアクセスした際、常に投稿フォームが隠れて表示されるようにしたいのです。
URLを
https://****/〇〇/bbs.php?hide_form=1
とすればいいだけなのですが、簡単な修正で可能であればと思い お聞きしました。
もし 面倒な修正であれば諦めます。
よろしくお願いします。
- Re:php掲示板でmax_log が効かない 2024-09-14 22:41:24 管理人 返信 編集
dataディレクトリの共有ですか。
想定していませんしたが、init.phpの$datadirを設置場所に応じて変更し
$idを共通のものに指定すれば共有できそうですね。
その際に合わせておいた方がいいのは$max_logと$max_past ぐらいでしょうか
- php掲示板でmax_log が効かない 2024-09-13 14:31:18 flipflop 返信 編集
いつもお世話になっています。
php掲示板の ver.1.071 を2つ使っています。
両方の掲示板とも max_log=500 に設定していますが、現行スレッドが ぴったり100を超えると過去ログが生成されてしまいます。
元々のレシポンシブな掲示板を勝手にパソコン画面用にアレンジしているものですから、data ディレクトリを別の掲示板ver.1.071(レシポンシブとして)に参照させているのですが、それと関係しているということはないでしょうか。
気が付いた時期と重なるので、それが原因ではないかと心配です。
当方の使い方に原因があるのかもしれませんが、対処方法がありましたらお教えいただければありがたいです。
よろしくお願いします。
【2024.09.13追記】
いろいろやってみたところ、原因がわかりました。
やはり同じ data ディレクトリを2つの掲示板で共用したときのミステイクでした。
data ディレクトリを別のレシポンシブ掲示板に参照というか取り込む設定をしたときに、レシポンシブ掲示板のほうの設定が デフォルトの max_log=100 のまま参照させていました。
たぶんそのせいで max_log=100 が反映されて過去ログのファイルが生成され、それが元の掲示板にも反映されたようです。
両方の掲示板の設定を max_log=500 にして、過去ログの bbs_1.cgi のログを bbs.cgi に取り込んで統合したところ、これまでのように過去ログなしに修正できました。
お手数おかけしました。今後ともよろしくお願いいたします。
- Re:PHP掲示板の記事順 2024-07-24 22:29:25 管理人 返信 編集
ver1.061以降
過去ログがある状態で、投稿記事に指定した編集パスワードを使って再編集すると現行ログの内容が消えてしまうというバグがあったようです。
ver1.061、ver1.062を使っている方は必ず修正版のver1.07に更新していただくようお願いします。bbs_ver1.07.zip 33dl
>こうなっていると思っていたら、なっていなかったので修正したver1.061をアップしました
>ついでにタイトルに固定リンクを表示するオプションも追加しました。
PHP/掲示板PHP
- Re:PHP掲示板の記事順 2024-06-13 13:45:47 管理人 返信 編集
>bbs.php?id2=記事ID#bbs_記事ID
>というようなURLを使えば過去ログに移行した記事も引用可能で、
こうなっていると思っていたら、なっていなかったので修正したver1.061をアップしました
ついでにタイトルに固定リンクを表示するオプションも追加しました。
PHP/掲示板PHP
- Re:PHP掲示板の記事順 2024-06-07 16:35:16 flipflop 返信 編集
ご回答 ありがとうございます。
>ただ投稿数が$max_logに指定した数を超えると古い記事から過去ログに移行するので、同じURLで記事を引用できるということにはならないと思います
現行ログを多めに設定しているので、そのあたりは大丈夫かと思います。
今後とも よろしくお願いします。
- Re:PHP掲示板の記事順 2024-06-06 20:40:05 管理人 返信 編集
bbs.php の1313行
$log = array_reverse($log);
部分は、投稿記事の表示で、もともと投稿順になっているログの順番を
逆転させる処理で、これをコメントアウトすると投稿順に表示されることになりますが、
ログファイル本体への影響はないので特に問題はないと思います
ただ投稿数が$max_logに指定した数を超えると
古い記事から過去ログに移行するので、同じURLで記事を引用できるということにはならないと思います
bbs.php?id2=記事ID#bbs_記事ID
というようなURLを使えば過去ログに移行した記事も引用可能で、記事の表示を逆転する必要もありませんが、返信リンクなどから個別に記事IDを取得するのが手間ですね。
- PHP掲示板の記事順 2024-06-05 18:32:15 flipflop 返信 編集
いつもお世話になっています。
PHP掲示板の記事順についてお伺いします。
記事をストックして、いつでもURLで引用できるようにしたいと考えています。
そのため ページを固定したいので、新規の記事が上ではなく 下に付くようすることは可能でしょうか。
できればこれまでの記事も昇順?(古い記事ほど上に表示)になればいいのですが、これまでの記事はそのままで、これからの記事から下に付くようなことでもかまわないです。
こちらのスキルからして かなりの修正であれば諦めますので、よろしくお願いします。
■2024.06.05 18:30 追記
bbs.php の1313行
$log = array_reverse($log); // 新しい順に表示するのに固定
をコメントアウトしたら 既存記事も昇順に並び変わり、新規で投稿した場合は下に付くようになりました。
お手数をおかけしました。
この処置で スクリプト上で不備であればご指摘ください。
今後ともよろしくお願いします。
counter:49,720
CGI 2022年06月27日 16:41 編集
CPANで公開されているモジュールを使いたいときのメモ
- CPANのサイトの検索フォームで探したいモジュールを検索する
- Scalar::Utilモジュールを探しているなら、「Scalar::Util」と入力して探す。
検索結果からそれらしい「Scalar::Util」をクリックする。
counter:27,683
名前は "Shade検索"Wiki となっていますが、Shade関係の記事はほとんどなくて、自作のCGIなどをひっそりと紹介するサイトになってます。
CGIについてのお問い合わせはCGIサポート掲示板へ
最近更新した記事
2024年11月12日
2024年08月06日
2024年07月30日
公開しているCGIなど
2024年11月12日
2024年08月06日
2024年07月30日
2022年10月03日
2022年03月22日
2021年08月18日
2023年02月26日
2018年03月01日
2016年08月26日
2016年08月16日
counter:15,652
最近の更新
2024年11月12日
2024年08月06日
2024年07月30日
公開しているスクリプト
PHP
2024年11月12日
2024年08月06日
2024年07月30日
2022年10月03日
2022年03月22日
2021年08月18日
CGI
2023年02月26日
2018年03月01日
2016年08月26日
2016年08月16日
counter:25,268
PHP 2022年03月22日 20:03 編集
CGIの詳細予定表と長期予定表を合わせたようなPHPプログラムです。

- 2022/03/22 ver.0.053
- PHP8でエラーが出るのを修正しました。
- サンプル
- ダウンロード
calendar_plus_ver0.054.zip (71Download)
calendar_plus_ver0.053.zip (98Download)
-
スケジュールの時間をグラフ表示します。1日に複数の予定を登録した場合、時間が重ならない限り同じライン上に表示されます。
- スケジュールの登録は1分単位で可能(設定による)ですが、グラフの表示はそこまで正確ではありません(^^;
- スケジュールにはカテゴリー、タイトル、コメントを保存することができ、カテゴリーごとに違う色で表示されます。
- 2日間に渡る予定には対応していません。終了時間が24時を越える予定の場合は25:30のように設定することもできますが、表示は24時で切れます(設定で終了時間を24時以降にすることも可能です)。
- 定期的なスケジュールを一括入力、一括変更することができます。一括入力されたスケジュールも個別に編集することができます。
counter:30,729