ushidayの日記

主に「IBMi」のメモに・・・

PHP

ZendServer8.5 for IBM i(PHP5.6)を入れて・・・

iSUC福岡大会に参加して、モチベーションが上向いているうちに、「よーしZendServer8.5のPHP5.6に更新しよう!」と意気込んでいたら、PHP5.6からCA証明書のチェックが必須となったみたいで、SSL/TLSメール送信でコケてました。以下の様な事が書いてありまし…

Zend Server CE 5.0 for IBM iのdb2_bind_paramで

Zend Server CE 5.0 for IBM i(PHP 5.3 Ver)で、最初からインスコされているIBM_DB2のPECLはバージョン”1.8.4”です。このバージョン”1.8.4”のPECLは、既知のバグがあり、関数、クラス内で「db2_prepare → db2_bind_param → db2_execute」をすると、db2_bin…

FirePHP(Webug)でハマタ。

PHP

DBの設定ファイルを「fwrite関数」を使って書き換える、プログラムを実行するとオカシナ動きをした。 「hoge.ini」を以下の様にしたかった 実行前の「hoge.ini」 ;現在無効な設定1 ;現在無効な設定2 現在有効な設定1 実行後の「hoge.ini」 現在無効な設定1 ;…

DB2 for i copy to DB2 LUW

DB2 for iからDB2 LUWへデータコピーをしたかったので、phpで作った。 処理自体は、簡単なものでスキーマ名とテーブル名をのfrom toを受け取って、DELETE and INSERTするだけ。 CREATE TABLEは既にされているという前提で... select() ->from($schema . '.' …

Zend Server for i5 CE で複数のインスタンスを動かす

随分ご無沙汰のブログですが久々にアップです...。 「Zend Server for i5 CEでphp.iniの設定変えて別インスタンスを起動する事って、出来なくなったのかね?」なんていう、Twitterでのやりとりがありました。「Zend Server(※以下ZS)ではどうよ?」という興味…

doxygenとgraphvizを使ったドキュメント作成

doxygenとgraphvizというツールを使って、APIリファレンスと簡単な関連図の作成が行なえます。doxygen自体はCから派生しているようで、色々な言語に対応している様です。 ドキュメント書式もphpDocやjavadocと近いようです。phpDocの書式で、そのまま実行し…

Zend Studio(Eclipse) プラグインのphpDocumentor

Zend Studioにバンドルされている、phpDocumentorを使った際に設定した事の備忘録。ついでxamppの場合も...。 Zend Studioの設定 strftime()関数で、タイムゾーンを指定しないと、ドキュメントにそのまま警告まで出力される。→ プラグインのphp.iniのタイム…

Zend ServerにPearを入れる際の

はてなダイアリーが、新しくなって、初めて書いたかも?という位、ご無沙汰ですが...(-_-;)。自分の使っている、ThinkPad X60にZend Serverは入れてあるのですが、Pearが入って無かった事に、最近気がつきました。デスクトップPCは、Zend Serverより以前に、…

Zend_Authでユーザー認証&DB2のencryption

Zend_Authを使った、ユーザー認証をやってみたので、メモをしておきます。 IBM i(AS/400)の既存データベースに存在している社員マスターのユーザーIDとパスワード情報で認証を行います。 Zend_Authは、データベース認証用に”Zend_Auth_Adapter_DbTable”と…

暗黙スキーマの挙動の違い

PCからお手軽に、既存のIBM i(AS/400)のプログラムを呼び出す方法に、SQLのCALLを投げる方法があります。こんな感じで ■PC系の文法 CALL スキーマ名.プログラム名 ('引数','引数2')■AS/400の対話式SQL CALL スキーマ名/プログラム名 ('引数','引数2')通常…

Zend_Mailでチョット

Zend FrameworkのZend_Mailを使っている時に、チョコチョコ忘れそうな事が有ったのでメモしておきます。 ファイルの添付 ファイルの添付で以下の様な方法の解説をよく見かけたのでやってみたが、添付された中身がどうも巧くないです。 $filePath = './temp/t…

トランザクション分離レベル・省略値の違い

以前は、IBM i(AS/400)上のZend Coreにデプロイしてテストやリモートデバッグをしていたのですが、最近は、Windowsのローカル環境に立てた、Zend Server for Windowsでテストやデバッグをしてから、AS/400にデプロイしています。一人チーム開発なので、人の…

SigmaGridを使ってみた(その3)

SigmaGridには、サーバーサイドページングとサーバーサイドソーティングの機能もあるので、そっちを使ってみました。今回はページングです。 サーバーサイドページング gridオプションの「remotePaging」を”true”にします。PHPのサンプルは”デモディレクトリ…

SigmaGridを使ってみた(その1)

今ゴショゴショやっている案件で、AJAXライブラリは、jQueryを使っておりまして、uiのプラグインはjQuery uiを使っております。グリッドコンポーネントは、”jqGrid”というプラグインがあるのですが、JSONデータを渡す際に、独自のフォーマット(idとcellのHa…

ZendServer CEの環境変数

ローカルになんちゃって、IBM i(AS/400)の環境を作りたくて(個人では買えないですから...)、DB2 for WindowsとZend Sever CE 5.0 for Windowsを入れました。 そもそも、イケない感じはしていたのですが、DB2の入れた順序が悪いらしく、 DB2 Express-C V9.7…

Zend Server CE 4.0.6 for Winを入れてみた

Zend Server CE(Community Edition)4.0.6をWindows環境に入れて、IBM i(AS/400)のDB2とゴタゴタやったので、メモしておきます。■動作環境 IBM i V5R4M0 Windows XP SP3 Zend Server CE 4.0.6 (PHP 5.2.11) for Windows DB2 Connect Personal Edtion V9.1…

Zend Framework Controllerメモ

Zend_Controllerを使ってみた時のメモを残しておきます。 httpd.confの設定 Zend Framework(ZF)では、URL変換に”mod_rewrite”モジュールを使用しているので、「/usr/local/Zend/apache2/conf/httpd.conf」を以下の様に書き換えます。 #LoadModule rewrite_mo…

Zend Core for i5で国際化&ローカライズ

IBM i(AS/400)の5250アプリで、多言語対応する場合は、”*MSGF”を使ったり、画面制約に縛られたりで、実装も保守も個人的には「面倒だ」というネガティブなイメージがあります。(中には画面やメニューだけ別言語で書き直して、OVRDSPFなんてのもあります。…

QCCSID5026の弊害

「Zend Core i5 の起動について」という日記を以前書いたのですが、その後、起動出きない原因が分かったので、書いておきます。 レガシーな環境だと、AS/400(IBM i)のシステム値”QCCSID”が、未だに”5026”だったりします。モダンな環境ですと”5035”なのでしょ…

MySQL&IBMDB2iのベンチマーク

以前書いた日記の「IBMDB2i ストレージエンジン」MySQL IBMDB2iストレージエンジンで、PDOとMySQL関数でのベンチマークを、前回と同じ条件でやってみました。もしIBM i(AS/400)上のDDSから生成した既存の物理ファイルからデータを移行するには、まず先にIBMD…

PDOとDB2関数のベンチマーク

PDOとDB2関数で、大きな違いは出ないと伺ってはいたのですが、やらないと気が済まないもので、ベンチマークを比較しててみました。 PDOの方で、途中DBに結果が、反映されなくて、気付いたのですが、Write,Update処理にジャーナルが必要そうです。昔MSとか…

Zend Core i5 の起動について

先日導入した、”Zend Core i5 2.6”が、IBM i(AS/400)のIPL完了後に、Apacheのインスタンスが起動していません。ZENDCORE/ZENDのサブシステムは起動しているんだけど...。 で、調べてみると、こんな情報もあったので”System i5 - ZEND Products - Automatic…

PDOでハマル

新しく”Zend Core i5”を入れ替えたので、PDOを試してみたら、しょーもない事でハマッたのでメモを残します。 IBMのDB2用のドライバは、”pdo_ibm.so”のextesionが、php.iniで有効になっていれば使えます。 でもって、RedBookとか、関数リファレンスに使い方が…

db2_prepare & db2_executeの怪

PHPでDB2のテーブルにSQLを投げる際に、代表的な関数が2つあります。 1つは db2結果 = db2_exec(db2接続,SQL文字列) もう1つは db2結果 = db2_prepare(db2接続,SQL文字列)こちらは、SQL文に「?」でパラメータマーカを指定出来ます。次に... db2_execut…

AMFPHPを使ってdb2_connectなどのエラーハンドル

「AMFPHPを使って、db2_connect(phpのDB2用関数)などのエラーハンドルが、AMFPHPのメッセージになってしまうけど、どうしてる?」という質問を受けたので、こんな感じにしてますというのを載せておきます。 ■[db2_connect()] $db=db2_connect($dbname,$dbu…

Zedo Core i5 で、PHPとFlex連携(その3)

前回の続きで、今度はFlexでAMFPHP上のサービスを呼出します。今回はグラフをやってみたかったので、リンク付きであればフリーで使える「amCharts」という、swfベースのコンポーネントを使ってみました。しかも丁度Flex版があり、SWCのライブラリとして使え…

Zedo Core i5 で、PHPとFlex連携(その2)

前回の続きで、今度はPHPのサービスプログラムを作成します。 サービスプログラムの作成 今回は適当な”売上データ”を連想配列で返す、サービスを作成します。 引数 開始年月:YYYYMM(文字 6Byte) 終了年月:YYYYMM(文字 6Byte) 戻り値 売上データリスト…

Zedo Core i5 で、PHPとFlex連携(その1)

IBMi(AS/400)で”Zend Core”が、メーカーサポートということもあり、PHPネタをやったので、メモしておきます。 ちなみに”Zend Core i5”とは、AS/400上で動作するPHPのエンジンです。 Flexが有ったから 会社でゴソゴソと物色していると、「若者たちのスキル向…