トップ > ラボブログ

ラボブログ

« 「スイーツナイト」に参戦してきました! | メイン | OpenSocialアプリ「PayPal ボタン」の公開までの道筋 »

当選者発表!勝手版 Mozilla/Firefox ノベルティあげます!

あとで読む

スパイスラボ神部です。


たくさんの方にご応募いただきました、Mozilla/Firefoxノベルティセットあげます! ( ラボブログ ) ですが、月も変わりましたので当選者発表いたします!


-抽選が好きだ! - Favorites!


OpenID を使って当選者発表会場をつくりました


お待たせしました!当選者の発表はこちらの当選者発表で行います!


drawingresult.png


-(勝手版)Mozilla/Firefox ノベルティあげます!当選者発表会場


今回わざわざ CakePHP と OpenID のしくみを使って当選者発表会場を作成しました。今回はそもそもはてなによる公式キャンペーン「Firefoxノベルティセット欲しい!とは - はてなキーワード 」のパロディとして作成した勝手版エントリだったわけですが、ここで問題が一つ。応募者の個人情報を持たない(持ちたくない)勝手版としては、idから個人情報を検索して、当選者に対してメールをすることが出来ません。


それならばメールフォームを作ればいいのですが、今回ちょっと「いかに個人情報を取得せずに、たくさんの人からの応募を募るか」というところに隠れテーマを見つけていましたので、道具として CakePHP + OpenID を使うことで、本人IDの一意性を確保しつつ個人情報取得の機会を減らしてみようと思いました。


まず抽選の方法について


こちらも万が一興味があるひとのために書いておきますと、今回は PHP で当選者を決めました。


Mozilla/Firefoxノベルティセットあげます!(ラボブログ) のRSSを、PEAR の XML_RSS で取得。title 要素をいったん配列に格納して、配列を shuffle。その一番目を出力して、一回目で出た人を当選者としました。


require_once("XML/RSS.php");

$rss = & new XML_RSS("http://b.hatena.ne.jp/entry/rss/http://blog.spicebox.jp/labs/2009/02/mozillafirefox.html");

$rss->parse();

$drawing = array();
foreach ($rss->getItems() as $item) {
array_push($drawing, $item['title']);
}
shuffle($drawing);
echo $drawing[0];


(※こちらをサーバにあげたあと、最初にアクセスしたときに出た値の ID を当選者としました)


OpenID による発表会場の作成


こちらは以前 Clone me ! ~ お題のサービスをクローンしよう! というサービスで使った、OpenID による認証を使ったはてな ID の確認方法を使い回し、OpenID の認証 URL をはてなだけに絞ることで、はてなIDでのみの当選者確認が出来るようにいたしました。


参考にさせていただいたのは、今回もこちらのエントリです。


-【CakePHP】OpenIDをAuthComponentにトッピングしてみる | ねねとまつの小部屋


制作の所要時間は3時間くらいでした。


まとめ


ということで、今回はくじ引きとかエクセルとかのアナログな方法を使わず、一応オンラインのコーディングだけで抽選とか発表を行ったわけですが、抽選部分のPHPを組むときはちょっと緊張しました。大丈夫だと思うけどへんな抽選のプログラムを書いて不公平な結果をもたらしたらいやだし(shiffule 関数もばらつきはあるでしょうが、そこまでの公平さは求めてないのでそれはOKとする)、実際に200以上も応募をいただくと「誰が当選するんだろう?」というどきどきもありました。


はてな ID をお持ちの方なら誰でも当選者がわかる仕組みになっていますので、今回応募されなかった方も、ぜひ OpenID 体験のために今回の発表会場にはてな ID でログインしてみてもらえればと思います。もし今後「OpenID を使った応募フォーム」というものの作成が一般的になるとしたら、この発表会場がはもしかするとその先駆けのひとつとなるものかもしれませんし、それがまた、OpenID をはじめとした Open Stack のようなオープン認証プラットフォームへの理解につながれば幸いです。


あとこれでまた家が少し片付いて嬉しいです!


追記:元ネタでも結果発表


今回元ネタにした Firefoxノベルティセット欲しい!とは - はてなキーワード の方でも結果が発表されたようです。


また、3/1(日)24:00まで!!まだ間に合うよ!!! - SO NOTE そうのて (;^ω^) で終了間際に最後の盛り上げをしてくださっていた方がいらっしゃいました。id:so_blue さん、ありがとうございました!


参考リンク


-The Open Stack - tzmtkのブログ


-OpenID.ne.jp - OpenIDを使って10000サイト以上にたった1つのIDで入れます。あなたもOpenIDを作成しませんか?


-OpenID - Wikipedia


-「1つのIDでどこでもログイン」・OpenIDとは何か インターネット-最新ニュース:IT-PLUS


-仕様から学ぶOpenIDのキホン - @IT


-livedoor Auth OpenID


-OpenIDとは? | エキサイト OpenID


-Six Apart - OpenIDとは?


-OpenIDとは? - Yahoo! JAPAN



関連記事



ブックマークに追加する この記事についてTwitterでツイート

トラックバック

このエントリーのトラックバックURL:
http://www.spicebox.jp/cgi-bin/mt/mt-tb.cgi/873

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

mixiアプリ本
4/22発売!

mixiアプリをつくろう!
OpenSocialで学ぶ
ソーシャルアプリ



(株)スパイスボックス
神部 竜二(著)

書籍情報






検索



神部竜二
ブログ執筆者の一人です。ネットの新しい話題や Web まわりのプログラミング、Web 広告について書いていきたいと思います。


About

2009年03月02日 13:53 に投稿されたエントリーのページです。

ひとつ前の投稿は「 「スイーツナイト」に参戦してきました! 」です。

次の投稿は「 OpenSocialアプリ「PayPal ボタン」の公開までの道筋 」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

SEO ブログパーツ  

+ インデックス数計測 +