管理メニュー 2004-07-31 (土) 00:14:20+09:00

ソフトウェア

試行錯誤して、今の形に落ち着いた。

最初は、まずログインフォームがあって、パスワードを入れてsubmitしたら、記事の投稿とキャッシュ更新のできる管理メニューフォームが表示されて、「キャッシュ更新」ボタンを押すとキャッシュ更新するような仕様で作りかけたが挫折。

ログインフォームで入力されたパスワードを管理メニューのフォームにPOSTするまでは良いが、そこからさらにキャッシュ更新ボタンが押されたときに、キャッシュ更新フォームにパスワードをPOSTするには、どうしても管理メニューのフォームのinputタグのvalueに値をセットしてやらないといけないので、htmlソースを表示されるとパスワードが丸見えになって非常に間抜けな結果になるので、この方式は断念。今のような形にすれば、入力されたパスワードはPOST一回しかされないので、たとえソースを見られてもパスワードは見えない。

…と、なぜかさっき(午前零時回ったあたり)から、ブラウザで更新ボタンを押すたびにカウンターがアップしていってしまう…。なぜだろ…。(^^;

原因判明。FireFoxで更新ボタンを押したときに、リファラだけ送信されずユーザエージェントは送信される、という状態になることがあるためらしい。(たとえば、カウンタの設置されたページを表示して、そのタブで記事投稿ページに飛び、「←」(戻る)ボタンでカウンタの設置されたページに戻ると、以降更新ボタンを何度押してもリファラだけが送信されない状態になる。他のブラウザでもそうなるのかは未確認。

とりあえず:
if((!$_SERVER['HTTP_REFERER'])&&(!$_SERVER["HTTP_USER_AGENT"])) $bCount = false;

if((!$_SERVER['HTTP_REFERER'])||(!$_SERVER["HTTP_USER_AGENT"])) $bCount = false;
と変更してみた。オリジナルはなぜ論理積なのだろう。これで問題ないのか知らん。(^^;

追記:論理和にするとカウントが増えないようなので元に戻した。リファラかユーザエージェントが送信されないケースが大半なのかも知れない。…とすると、やはり直近アクセスのIPアドレスを保存しておいて同じならカウントしない…というような処理が必要になる気がする。

追記2:カウンタ修正。counter.logに、リモートアドレス、GMTタイムスタンプの2フィールドを追加して、「(counter.logに記録されてるのと同じリモートアドレス)かつ(counter.logに記録された時刻から1時間以内)」の条件のときは、カウントアップしないようにしてみた。今のところうまくカウントできているようだ。

[コメントの受付は終了しています ]
1: りん (08/04 14:46)
例えばブックマークからお気に入りのサイトに行ったような場合、前のページというのが存在しないから、当然リファラは入って来ないです。
あと、再読み込みでカウントアップするのは別に構わないと思った。
2: 冬星 (08/05 15:27)
あ、なるほど…。理解できました。
today_pageviewとtoday_accessに分けてあったので前者が更新でカウントアップする方かと思いましたが後者もですか…カウンタ1個でも奥が深いですね(><
この記事のリンク元 | 1 |

パスワードは絶対にURIに含んではいけない

おぉそうなのか…。追加してみる。

管理者フォームでパスワードを入力して、POSTでrnote.phpにパスワードを渡すだけ(^^;。rnote.phpの該当箇所をGETからPOSTに換えるだけなので修正は簡単。

自分パスワードは結構気恥ずかしい内容なので、漏れてなかったらいいなぁと思いつつ(笑)。


rNote0.9.4に… 2004-07-29 (木) 23:43:30+09:00

ソフトウェア

差し替えました。

html_head.skinのDOCTYPEをXHTML 1.0 Transitionalに変更してあると、EVAL_ENABLEをtrueでページ表示時にeval()でparse errorになるのはなぜだろう。むーん…難しい(^^;。

カウンターのプラグインも入れてみました。元気に動いているようです。

BBSと管理人の投稿記事の外見が区別つかないのが、なんか不思議な気分です。


・カレンダー
ルートカテゴリーのときは今のカレンダーで、どれかのカテゴリーを表示しているときは、今選択中のカテゴリーのカレンダーに切り替わると直感的だなぁと思います。

・作ったソフトウェアの紹介ページや掲示板コーナーを付ける
やっぱり別途ページを作っておいて、そこへのリンクをhtml_body.skinの中に書いて、適宜カテゴリーを作ってデザインを整える…とかかなぁ。

・背景画像
背景画像とかはcssがもっているのかな。エディタでcssファイルを編集するんでしょうね。日にちや曜日や季節ごとに背景を切り替えるような処理を書きたいので、site_lang等の置換処理を行う識別子を加えて色々すれば出来そうですね。

・グラフィカルボタン
りんさんのサイトにある丸いボタンみたいなグラフィカルボタンとか、JavaScriptも使わないで実装されてるみたいで、どうやってるのか知らん。

いずれにしても、便利で楽しめる環境を作って公開して下さってるりんさんに感謝!居ながらにして用意して貰えて自由に使えるのはありがたいです。


冬星は記憶がとびます。 2004-07-24 (土) 01:56:51+09:00

日記

ほんとです。

お風呂に入って、頭を洗ったかどうかわからなくなります。
昨日食べたご飯がわかりません。
3分前にあったこともわかりません。
知人と話していて、ネタを思いついて前フリを話している間にネタを忘れたりします。

こういう記憶力だから、川島隆太氏の本を活用して試験勉強してたりします。

おかげさまで、1ヶ月ほど川島氏のトレーニングをしながら勉強していて、だいぶ憶えは良くなっているのが分かりますが、やはりあいかわらず、昨日のご飯はわかりません。(^^;

へたれプログラマ時代に休憩なし残業168時間とかで数年働いてたけど…あの頃からだよなぁ記憶悪くなったの。冬星の脳に何が起きたのだろうか!?む~ん。

試験…大丈夫なんだろうか。(^_^;