■実験室

■プロフィール

Sligh'Hand

Author:Sligh'Hand

所属ギルド
Open Travelers
称号
ぐったりたぬぬ
特徴
公園内でマジシャンを目指す新米教師。桜の下で「たぬき寝入り」するのがマイブーム。

■最近の記事
■最近のコメント
■ブログ内検索

■リンク
■RSSリンク
■カテゴリー
■月別アーカイブ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


スポンサー広告 | --:--:--

ぐったりたぬぬぷろj(ry

 こんばんは、スラです。 このところ、拍手をたくさんいただけるので、調子に乗って更新回数が増えています。 読んでくれた方からのリアクションがあるってのは、うれしい物なのですb

 さてさて、今日もたぬぬの開発ネタです。 このところ地味な小細工ばかりしていたので、機能や見た目がほとんど変わっていませんでした。 で、今日はその反省に基づき、カウンター機能なんかを実装すべく、プログラムをいぢってます。

 で、思い出したのが、この企画が 「幻と現の間で」 企画の一環だったってこと。 「幻と現の間で」 といえば、そう、スラ←がなにかしょーもないものを作り、そのプロセスを公開するってのが基本スタンスだったはず。

 ってわけで今日は、現在開発中のたぬぬに実装する予定のアクセスカウンタシステム、すなわち、php と mysql を使ったカウンタの作り方を紹介してみます。 いつになく技術的な話題になる可能性大なので要注意ですb





コンセプト

 コンセプトのない工作は多くの場合失敗しちゃいます><; ってわけで、まずはコンセプトを固めるところから。

 今回開発するアクセスカウンタは、Flash 上のアクションスクリプトから呼び出して、Flash はそのフィードバックを受けることで値を表示するものとします。 なんだかよくわかんないですね。 絵にすると ↓こんな感じです。
Flashとカウンタ本体との関係
左上が Flash で、右下がカウンタ本体。 ちなみに、これまでずーっといぢってきたのが左上側の Flash のほうで、今日作るのは右下のカウンタ本体のほうですb Flash が開かれるとカウンタ本体へ値を問い合わせ、その結果を返してもらって、Flash 上に表示する、と。

 機能は何をつけましょうか……。 そうですねぇ、「一定時間内に同じ人 (同じ IP アドレス) からの連続したアクセスがあった場合、それを 1 回のアクセスとみなす」 くらいのことはしてほしいですね。 たとえ数えているのがぐったりたぬぬだとしても、それくらいのことはしてくれるでしょうb あと、可能なら、簡単なアクセス解析機能もつけてみたいですね。 たとえ解析するのがぐったりたぬぬだとしても、それくらいのことは(ry

 開発は、処理部分に PHP とデータベースに MySQL を使うことにします。 Flash からの問い合わせを PHP で受け取り、MySQL に格納されたカウンタの値を取り出して、それを Flash に返す、と。 そのついでに、どのページにアクセスがあったかをデータベースに記録する感じで。

 とりあえず、大まかなイメージはこんなところでしょうか。

大雑把なデータの流れ

 カウンタ内部の大まかなイメージをもう少し詳しくまとめておきましょうb
データの流れ

 まず、Flash からの 「値を教えてほしい!」 というお願いを PHP が受け付けます (1)。 でも、PHP には値をずっと覚えておく機能はないので、MySQL に質問を丸投げします (2)。 質問をもらった MySQL くんは考えます (3)。
「今、カウンタの値は 5 ですか……。 アクセスしてきた人は、どうやらここしばらくアクセスしていなかった人みたいだし、じゃ、PHP には 6 って答えておきますかb」(4)

 MySQL からの値を受け取った PHP は 「6 って表示してー」 ってな具合に、その値を Flash に返します (5)。 いいですねぇ、PHP。 自分では特に何も考えることなく、値を教えるというお手柄をしっかり持って行ける。 ぐったりさんからすると、夢のようなポジションです (※Flash と MySQL は直接データをやり取りすることができないので、PHP が通訳に入っているのです。 PHP の名誉のために念のためw)。

 ちなみに、今回データベースである MySQL がカウンタの値をいくつにするか考えている点に注意ですb データベースって言うと、単にデータを格納するだけの仕事しかしてない、なんて思ってしまうかもしれませんが、本来のお仕事はデータを 「管理すること」。 ってわけで、いくつかのデータを下に、内部で処理を行うことも可能なのです。 ここでは、ストアドプロシージャという仕組みを使って、この機能を実現する予定です。

 次回へ続く。

テーマ:プログラミング - ジャンル:コンピュータ

幻と現の間で | 20:51:25 | Trackback(0) | Comments(0)
コメントの投稿

管理者にだけ表示を許可する

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。