index

2003年 6月
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            
2003年 7月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
2003年 8月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
  18 19 20 21 22 23 24
  25 26 27 28 29 30 31

アレ

  ▽20030711a #日記

DB_DataObject をいろいろと使ってみる.

oci8 では,options[ optimize ] == portability でないと動かないモヨウ. 変え方は,$db =& $dataobject->getDatabaseConnection() してから $db->setOptions( 'optimize', 'portability' );. なぜ動かないかというと,portability モードでないと, Oracle は何でもかんでも大文字で返すから.

DSN は oci8://hoge:fuga@moge だけだと DB_DataObject_Generator が DB 名を拾えないので, ダミーでいいから oci8://hoge:fuga@moge/dbname の形式にしておく.

ってゆーか DB_oci8 の「互換モード」(勝手に命名)も,けっこうアレだなぁ. テーブルリストとかは大文字のままだし, っていうかこれが小文字じゃなきゃいかんなんてルールはないのだろうけど, DB_DataObject はそれに依存してるしなぁ. っていうかこれバグだろう.Bugs に登録しちゃえ(笑)

クラス作成段階ではテーブル定義を大文字で持ってくるから, クラス変数は $_USER_ID みたく大文字になるが, 動かすのは互換モードで動かすので $_user_id とかが実行時に作られてこっちに値が代入される罠.

ってことで,_createTableList() をオーバライドしたクラスを作って,そっち使って作成.

あと,_generateDefinitionsTable() に case "NUMBER": // oracle を追加.

primary key を探して勝手にキー項目を設定する機能は,oci8 では動かないようだ. ってーか作者もこれを PEAR DB 一般で行なう方法を思いつかないらしい. ソースに I have no idea なんて書いてある(笑)

  ▽20030710b #日記

pdflib のページが日本語化されたモヨウ. ドキュメントが少ない,とか書いてからすぐの話だが, 日本語になっても,少ないドキュメントが増えてるわけではなさそうだな...(笑)

  ▽20030710a #日記

HTML_QuickForm では画面遷移が制御できないなー. フォームで投稿って場合, 多くは「フォーム→投稿完了」なんだけど, 「フォーム→投稿内容確認→投稿完了」って流れだってあるでしょう?  HTML_QuickForm は「フォーム表示」と「投稿内容の処理」は出来るんだけど, こういう画面遷移を制御することは出来ねーようだわ.

ってことで,ここだけ自作.くぅ.

  ▽20030709b #日記

ソトシゴト #8 も,だいたい問題なさげ. これも似非フレームワーク使ってるけど,DB_DataObject ベースにしてみたいな.

  ▽20030709a #日記

同じく PEAR ライブラリを研究.

HTML_QuickForm. 簡単な設定でフォームを自動生成してアレコレ, なんてのは PHP 使いなら誰でも考えることだろうけど, このクラスはオブジェクト指向でキレイにそれをまとめてあって, 非常に使いやすい良いクラスに思える. ドキュメントがカケラも見当たらねーのが難点だけど, 学習する価値の高そうなクラスだ.

  ▽20030708a #日記

PHP の PEAR ライブラリをいろいろと試してみたりする昨今.

DB_DataObject. 自作の似非フレームワークをコレベースにしたいな.

index