PEARのライブラリでHTML_QuickFormを使うときに嵌る | ITやろう

ITやろう

開発をするとき
ユーザーとして利用するとき
調べたことなどを書いていく忘備録

先日、PHPのPEARを使う機会があったので自分で設定をしてみることにした。
PEARを使ってサンプルを動かしたこともなかったので、とりあえずローカル環境でやってみる。
開発環境は
 Mac OS 10.6.7
MAMP PHP5.3.6 (ローカルサーバー)
で行った。
PEARのサイトに行って、PEAR本体をダウンロードする
で作りたいものはHTML_QuickFormというライブラリを追加すれば実現できるとあった。
HTML_QuickFormをダウンロードしにいってみると
HTML_QuickFormは非推奨になっていて、その代わりにHTML_QuickForm2が推奨されていた。
なので2の方をダウンロードしてきた。

そして、このページ を参考にサンプルコードを作ってやってみたが、エラーが出た。

Warning: require_once(HTML/Common.php) [function.require-once ]: failed to open stream: No such file or directory in /Applications/MAMP/htdocs/pear/HTML/QuickForm.php on line 33

Fatal error: require_once() [function.require ]: Failed opening required 'HTML/Common.php' (include_path='.:/www/includes') in /Applications/MAMP/htdocs/pear/HTML/QuickForm.php on line 33

どうやらHTML_Common2もインストールしなければいけないらしい。
で、HTML_Common2もインストール完了。これでいける。
と思って、ファイルを読み込んでみると....

 
Fatal error: Uncaught <table style="border: 1px" cellspacing="0"><tr><td colspan="3" style="background: #ff9999"> <b>HTML_QuickForm2_InvalidArgumentException</b>: Element type 'header' is not known in <b>/Applications/MAMP/htdocs/pear/HTML/QuickForm2/Container.php</b> on line <b>260</b></td></tr><tr><td colspan="3" style="background-color: #aaaaaa; text-align: center; font-weight: bold;">Exception trace</td></tr><tr><td style="text-align: center; background: #cccccc; width:20px; font-weight: bold;">#</td><td style="text-align: center; background: #cccccc; font-weight: bold;">Function</td><td style="text-align: center; background: #cccccc; font-weight: bold;">Location</td></tr><tr><td style="text-align: center;">0</td><td>HTML_QuickForm2_Factory::createElement('header', null, 'hierselect3階�&hellip;', Array)</td><td>/Applications/MAMP/htdocs/pear/HTML/QuickForm2/Container.php:260</td></tr><tr><td style="text-align: center;">1</td><td>HTML_QuickForm2_Container->addElement('header', null, 'hierselect3階�&hellip;')</ in /Applications/MAMP/htdocs/pear/HTML/QuickForm2/Factory.php on line 169


こんなエラーが出てきた。もうよくわからん。

ネットでも情報が全然なくて苦労。ということで本を買ってきた。
しかし、自分がやりたいことはできなかった。

よし、こうなったら非推奨になってるけどHTML_QuickFormでやってみよう。ということでやってみると無事にファイルを実行することができた。
version1が非推奨でversion2が推奨になっているのに....情報が少なすぎ。
自分が素人ということもあって、こんなことで嵌ってしまった。
あ~解決できてよかった。