PHP組込み関数直コールってのも勉強には良いが、まとまった何かを開発するとなると辛い。そこで便利なものをどんどん使おう、ということでPEAR(PHP Extension and Application Repository)をインストール。
現時点で400個以上のパッケージが公開されている。ありがたや、ありがたや。

PEAR自体は「sudo apt-get install php-pear」でインストールする。PEARパッケージのインストールその他は「pear」コマンドを使う。

$ sudo pear install DB
/tmp/glibctest8Tjfp8:1:22: error: features.h: No such file or directory
downloading DB-1.7.11.tgz ...
Starting to download DB-1.7.11.tgz (132,064 bytes)
.............................done: 132,064 bytes
install ok: channel://pear.php.net/DB-1.7.11
$ sudo pear install mdb2
/tmp/glibctestjOjMv1:1:22: error: features.h: No such file or directory
downloading MDB2-2.4.1.tgz ...
Starting to download MDB2-2.4.1.tgz (119,790 bytes)
.....done: 119,790 bytes
install ok: channel://pear.php.net/MDB2-2.4.1
MDB2: Optional feature fbsql available (Frontbase SQL driver for MDB2)
MDB2: Optional feature ibase available (Interbase/Firebird driver for MDB2)
MDB2: Optional feature mysql available (MySQL driver for MDB2)
MDB2: Optional feature mysqli available (MySQLi driver for MDB2)
MDB2: Optional feature mssql available (MS SQL Server driver for MDB2)
MDB2: Optional feature oci8 available (Oracle driver for MDB2)
MDB2: Optional feature pgsql available (PostgreSQL driver for MDB2)
MDB2: Optional feature querysim available (Querysim driver for MDB2)
MDB2: Optional feature sqlite available (SQLite2 driver for MDB2)
To install use "pear install pear/MDB2#featurename"
$ sudo pear install MDB2_Driver_mysql
/tmp/glibctestS6lHqn:1:22: error: features.h: No such file or directory
downloading MDB2_Driver_mysql-1.4.1.tgz ...
Starting to download MDB2_Driver_mysql-1.4.1.tgz (36,481 bytes)
..........done: 36,481 bytes
install ok: channel://pear.php.net/MDB2_Driver_mysql-1.4.1

glibc関係のエラーが出てるけどインストール自体はできるのでいまは気にせず使うことにする。

PEARは「ペア」と読むらしい。「ぴあ」かと思ってた。

Posted in PHP.

プログラミングのリハビリがてら、携帯版Twitter「Mobitter」を作成した。
Twitterらしい、ユルユルなAPIが提供されているおかげで、片意地はらずに作ってみたりできるところがいい。

既にネット上には「携帯版Twitter」「Twitter APIをたたいてみたソース」などがあちらこちらに存在していて、今更感は漂っているのだが、まあ6~7年ぶりにプログラミングに復帰したハンチクSEの自己満足なのでスルーしてください。

興味わいたら使ってみて下さい。

  • 本日現在、機能は「Public timeline」「With Friends」「My Archive」「update」のみです
  • いまのところFOMA専用です(それだのにモバイル版なんて名乗ってごめんなさい)
  • ログインすると、ユーザ名とパスワードをMySQLデータベースに保持します。パスワードは可逆暗号化して格納します
  • FOMAの個体識別情報に対応しているので、一度FOMAでログインした後はOKボタン一発で簡単アクセスできます
    (逆にログイン画面にてユーザ名、パスワードを入力すると個体識別情報を使わないで認証する…Twitter側でパスワード変更や、携帯機種変した場合など)
  • セッション管理は、ページ毎にハッシュを生成してhttpリクエストパラメータに付加しつつDBへも格納、ロードされたページ側ではパラメータに乗ってきた直前のハッシュをDB値とつき合わせてチェックする方式です
     -携帯はクッキー使えないので、こんなのしか思いつきませんでした
     -誰か心優しい方がいたらもうちょっとよい方法を教えてください
  • 画像は表示サイズの調整しかしていないのでダウンロードサイズは大きいままです(パケホーダイじゃない人、注意して)

いちお超簡単に注意事項なども

  • MobitterのDBに格納した利用者の情報はMobitter以外には使用しません
  • Mobitterを通じて入出力されるTwitterデータの内容および損害について一切の責任をおいません
  • Mobitterに不具合があった場合は可及的速やかに改修を努力しますが、Mobitter不具合による利用者の損害については責任を負いません(要するに、もしバグったり止まったりしても太平洋の如き広い心でゆるしてください)
  • Mobitterの提供サービス内容を予告なく変更することがあります
  • Mobitterの運営を予告なく停止することがあります

今後の予定

  • TwitterにあってMobitterにない機能の実装
  • 画像ファイルのサイズ変更、および表示OFFの設定を可能にする
  • せっかく携帯なので携帯メアドを任意登録してもらいTimelineからメール送信できるようにしようかな
  • DBにあるユーザのハッシュを最終アクセス日時から一定期間後に削除するようにする
  • DBにあるユーザデータそのものも、一定期間アクセスなければ削除するようにしようと思ってます(あきたりして使うのやめた人のデータをいつまでも残さない)
  • FOMA以外の対応(試験ができない…)
  • その他、思いついたり言われたりしたこと

恵比寿ガーデンプレイスのexcite Broadband Stationは隣のファミマ!のレシート見せると1時間無料でインターネットできる。
可搬媒体の接続やファイルダウンロードは不可だけど、ちょっとした調べものやCoffee breakに最適。
部屋のなかにはDoCoMoやauのケータイ売り場も併設。これがまた巷の売り場のようにすぐ話しかけてくる店員やオネーチャンがいないので、ゆっくり見ることができていいかんじなんだな。

そういえばどっかの量販店で、「話しかけないでください」みたいな札を必要に応じて首から下げておくと店員が話しかけません、みたいなサービス(?)をしているところがあると聞いた。
インターネットにどっぷりつかっていると、下手に店員に教えてもらうよりも、ネットに教えてもらうほうが、よい情報を得られることが少なくない。

量販店にも、こうした無料インターネットPCをおいたら、利用者の便利度が上がっていいんじゃないかなあ。
さらに、広いお店は店内地図なんかも連動させるとか。

親の世代(60才~)はインターネット利用スキルはほぼ持っていない人が多いわけだが、最近、これをインターネットで調べてくれない?みたいな頼みごとをよく聞く。

街中のスーパーとかにインターネットPCをおいて、それなりのリテラシでも利用できるようなUIを調整してやれば、親の世代のような60代でもインターネットを身近に感じ、使ってみることでリテラシもあがるような気がする。

おじいちゃんも、おばあちゃんも、小学校あがりたての息子でも、街中でちょっとした調べものはインターネットで検索する、なんてのが真のe-Japan的な光景であり、現実的なユビキタス社会なんじゃないかなあ。

いつのまにかIE6でのレンダリングがおかしくなってしまった。
htmllintで高得点が出せるようにいじくったのがまずかったのか?(規格に準拠する方向に直しているはずだが)
はたまた記事中で使っているタグがおかしいのか?
Firefox2だとちゃんとしているので、たぶんIE固有の問題だと思うのだが・・・思いたい・・・
IE7でどうなのか試したいが、身近に実環境がないところが悲しい。

慣れるとかなりいいすね。Plug-inもたくさんあるし。
Windowsでは秀丸を買ったクチだが。Wineで無理矢理秀丸ってのもアレだし、geditでいいじゃん。
検索は、でかいダイアログが出て邪魔だったりemacs風リアルタイム検索に慣れてたりするのでその辺は改善策を探したい。
あと微妙に強調表示の判定がおかしかったりするところもなんとかしたい。
カスタマイズにハマりそう・・・

・・・折角苦労して設定したEclipse PHP環境を使っていないことに気づく。でも大したソース書いてないからデバッガ必要ないし。