DESIRERY

2009 10月

jQueryとPHPでJSON実装

Ajaxを使用する場合同じドメイン内であれば問題ないが別ドメインでは動かない。この場合いくつか回避策はあるが今回はJSONでの実装をメモ。環境はjQueryとPHP 5.2.x。Ajaxが別ドメインで動かない理由はセキュリティ上のことであり詳細はWikipediaの「セキュリティ上の制限」参照。

JavaScript Wikipedia

jQueryでは通常のAjaxでは上記のとおり動作しないため、JSONを使用。JSONのデータを取得したらコールバック関数が実行。Webサービスなどですでに展開されているAPIを叩く程度であればこれでデータの取得は完了。

  1. $.getJSON("http://www.t2-designing.com/?callback=?",
  2. function(obj)
  3. {
  4. //callback
  5. }
  6. );

サーバサイドも実装する場合にはJSON形式でデータを返す。PHPでは5.2以降でJSONがデフォルトで組み込まれている。出力するには必要な値を配列に入れていきjson_encode()でさっくり変換。下記は多次元配列にデータを入れた際の簡単な例。callbackを返さないとjQueryでコールバック関数が動かない。

  1. $page_meta (
  2. 'this_page' => 1,
  3. 'max_page' => 10
  4. );
  5.  
  6. $posts(
  7. 'id' => 1
  8. );
  9.  
  10. $data = array(
  11. $page_meta,
  12. $posts
  13. );
  14.  
  15. $json = json_encode($data);
  16.  
  17. header("Content-Type: application/json; charset=utf-8");
  18. echo $_GET['callback']. "(". $json. ")";

このあたりの実装方法についてはIBMのサイトにも記述されています。

JSONP によるクロスドメインの通信: 第 1 回 JSONP と jQuery を組み合わせ、強力なマッシュアップを迅速に作成する

ニコニコ動画でBGM

nicobgm

ニコニコのニコ生はまってます。自宅DJの方などがいていいっす。ハウスとかトランス大好き。中にはストリーミングをやっていたりするので音質も普通に圧縮した程度のものなら聞ける。聞き流してるので基本覚えてないけど昨日はFreeTEMPOのが流れてたり。ただし夜が多いので朝一からやってくれる人がいるとありがたいなー。理想は24時間誰かが自分好みのを流してくれてるとか。

完全にニコ厨です。本当にありがとうございました。

933SHに機種変

_DSC0887

携帯壊れました。渋々機種変。鬱陶しい料金プランも含めもう携帯嫌いですの。手間かかりすぎ。

新しい機種は933SH。夏モデル。ちょっと前の。やっぱり今やるより冬モデル待ちですよね。わかります。前の911SHはぎりぎりHSDPA非対応だったけど933SHは7.2Mじゃない。新しいものがそこにあるのにまたですか、みたいな。

使用感は数時間前に機種変したばかりだけどちょっとしたアニメーションがうざいです。これ外せるのかな。ないほうがサクサクでCPUも使わないだろうし。もさもさは大嫌い。むしろ犬にもふもふにされたい。

FlashのほうはFlash Lite 3.0。PCで言うと動画とか強化された8ぐらい。スマートフォンのみならずふつーの携帯にもふつーにFlash 10.1が載ってくれないかなーとか思います。Fennecとかも使ってみたいなーとか。

091019_142606

追記で写真。F2.8 ISO200 1/4s たぶん換算28mm。これぐらい写ればコンデジはいらなそう。一眼レフ持ち歩いていなくてもスナップにはよさそ。

Popular Posts

  1. mixiアプリ
  2. Twitter JSONデータ
  3. jQuery Plugin hovtive 2.1
  4. Ajax Comments
  5. jQuery Plugin hovtive 1.1