Pear
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
NGNG0628622
04/08/02 18:20ID:???下記を参照下さい。
http://ns1.php.gr.jp/pipermail/php-users/2004-May/022134.html
0629627
04/08/02 23:55ID:???ありがとうございます。
てっきり私はWEB+DB PRESSあたりなのかなと思っていたんですが,
PHP専門のムックが発売されるんですね。
楽しみにしてます。
0630nobodyさん
04/08/04 18:23ID:99atDA1b$id = $table->insert();
で、sequenceの値がとってこれるとマニュアルにあるみたいですが、うまくいきません。
ini に
sequence_usr = id
ってして createTables.php してもダメです。
ためしに DataObject_Usr クラスに sequenceKey(){return array('id',true,false)} を追加したんですが、
やっぱりうまくいかないです。
なんででしょうか・・・
0631nobodyさん
04/08/04 18:44ID:???どこでつか
0632nobodyさん
04/08/04 18:52ID:???とりあえず debugLevel 5 に設定して
DB とどんなやり取りをしてるのかみてみるのがいいかも。
あと sequenceKey() を設定しても、keys() で帰ってくるのが偽だった時
array(false, false, false) を返すみたいなので、念のため
keys() { return array('id') } もあわせてどうぞ。
ついでにいうと、DB は何なのか?ってのも。
0633nobodyさん
04/08/04 20:01ID:???http://pear.php.net/manual/ja/package.database.db-dataobject.db-dataobject.insert.php
Insert the data into the database, based on the variable values of the current object
and returns the ID of the inserted element if sequences or primary keys are being used.
このあたりだね。
オイラも>>630と同じ状況になったけど、その時は諦めて追っかけてないや。
0634nobodyさん
04/08/07 13:01ID:???0635nobodyさん
04/08/07 13:14ID:???0636nobodyさん
04/08/07 13:43ID:???使っている方どれくらいいらっしゃるのでしょう?
0637nobodyさん
04/08/07 13:49ID:???ノシ
0.9.2から大きな変更はなさそうなのですんなりアップグレードできそう。
DB_DataObject 1.7.0も出ましたがChangeLogの
* Result Field names now stored seperately from Result Object
がちょっと気になるのでこっちはコードを見てからアップグレードする予定。
0638nobodyさん
04/08/07 14:40ID:???ここまで長かったっすねぇ。
Flexy 使ってます。
でも HTML の文法構造が破綻していると出力がもっと壊れるので HTML の品質が確保出来ないと使いづらいのが (/_;)
0640nobodyさん
04/08/08 11:44ID:???0642nobodyさん
04/08/13 21:48ID:???dsnにホストの名を設定するとエラーになるけど
ホスト名設定しないとつながる。
わけわかんねえな〜。
0643nobodyさん
04/08/13 23:06ID:???Oracleは使ってないんだけど、
ホスト名を書くとTCP/IPで接続、書かないとUNIXドメインソケットで接続するから、
Oracle側の設定でTCP/IPによる接続を許可していないんじゃないかな?
外してたらスマソ
0644nobodyさん
04/08/13 23:47ID:???それは Pear のどのパッケージの話?
もしかして Pear じゃなく oci8 関数の話をしているならスレ違いだが,
その「ホストの名」ってのが tnsnames.ora にサービス名として
きちんと登録されているか確認してみると良い.
0645nobodyさん
04/08/14 00:22ID:???>>644
Oracle9iが入ってるサーバー(RedHat8)と
Oracle8iが入ってるサーバー(WindowsXP)があるのね。
tnsnames.oraに2つともサービス登録してあって、
両方ともSQLPlusでつながるし、PHPのOciLogonでもつながるんだよ。
パッケージはデータベースでいいんじゃないの?
ちなみにPHPとOracle9iは同じサーバー(RedHat8)に入っているよ。
返事遅れてごめんなさい。
既に告知でてますが、24日発売のW+DにPHPの特集記事があります。
内容はやや初心者よりかな。
立ち読みして買っても損しないと思ったら買ってください(笑
0647nobodyさん
04/08/20 15:19ID:???http://oopp.dyndns.org/technote/dbdo_manual.html
http://oopp.dyndns.org/technote/dbdo_basic.html
ここにあったDB_DataObjectのドキュメントを保存しているかたいませんか?
かなり重宝していたのですが、最近つながらなくなってしまって..
OOPP Memorandaってサイトの1コンテンツだったと思います。
0648nobodyさん
04/08/24 09:31ID:???http://ns1.php.gr.jp/pipermail/php-users/2004-August/023573.html
0649nobodyさん
04/08/24 12:23ID:???0650こやま
04/08/24 18:01ID:???鈴木さんはなかなかこういうのを仕掛ける人ではないので、
タイミングとしてはいい質問だったんでないかな。
0651nobodyさん
04/08/24 18:06ID:???0652649
04/08/24 18:46ID:???最初に PHP-users に流れた時には色々あったので。
0653nobodyさん
04/08/30 15:19ID:s3JBvD0Slinks.ini には
[tb2]
tb2_id = tb1:id
んで、
$do1 = DB_DataObject::factory('tb1');
$do2 = DB_DataObject::factory('tb2');
$do2->no = 1;
$do1->joinAdd($do2,"LEFT");
なとき、
SELECT * FROM tb1 LEFT JOIN tb2 AS tb2 ON tb1.id=tb2.id
とかなるんだが、俺としては
SELECT * FROM tb1 LEFT JOIN tb2 AS tb2 ON tb1.id=tb2.id AND tb2.no=1
になってほしいんだが。
どうすればいいとおもう?
0654nobodyさん
04/08/30 15:20ID:???[tb2]
id = tb1:id
だ
0655nobodyさん
04/08/30 18:45ID:???>>653
$do2->whereAdd('no=1'); とか $do1->whereAdd('tb2.no=1'); とかではだめ?
自分はDB_DataObjectのJOIN嫌いなのでテーブル結合はビュー使って
ビューに対してDB_DataObjectのインスタンスを作ってます。
だから↑で書いたのは間違ってるかも。
0656nobodyさん
04/08/30 18:56ID:???[table1]
id = table2:table1_id
$table1 = new Example_DataObject_Table1();
$table2 = new Example_DataObject_Table2();
$table2->example_field = 5;
$table1->selectAs();
$table1->joinAdd($table2);
$table1->whereAdd('table1.id = ' . $hoge);
$table1->find();
SELECT 〜 FROM example INNER JOIN table1 AS table2 ON table1.id=table2.table1_id WHERE table2.example_field = 5 AND table1.id = xxx
な具合に動いています。
0657nobodyさん
04/08/30 21:50ID:???復活したね。
ついでにこれで中の人も分かったので、これだけのドキュメントが行方知らずって勿体ない事態もこの先回避出来るぽい。
0658nobodyさん
04/08/31 00:19ID:???性交童貞もとい、西高東低な気がする。
0659nobodyさん
04/09/01 06:56ID:Mk6yOqMsPEARを使いたくてインストール方法を調べてたんですが
c:\php\go-pear.bat
なんてものはないんですが・・・
環境
WindowsXP
PHP4.3.2
0662nobodyさん
04/09/01 09:08ID:???go-pear.batはcli版のphpで、PEARフォルダのgo-pear.phpを実行
しているだけなんだけど、php内のPEARフォルダに go-pear.php
ファイルはある?
0663660
04/09/01 09:21ID:???> みなさんはどこら辺を使ってるんですかね?
私は常に最新版を使っているけど、PHP日本ユーザ会のページに各バージョンの
Release Announcement と ChangeLog(それぞれ和訳あり)、Bug情報が載っている
から、読んで判断されたし。
ttp://www.php.gr.jp/
0664nobodyさん
04/09/01 09:43ID:???それがないんすよ
ぐぐってやり方調べてもそこから始まってて、どうにもならなくてここにきたわけなんですが
cli版のPHPってのも初めて聞きました
>>663
参考にします
0665660
04/09/01 10:06ID:???php-4.3.2-Win32.zipの中にはgo-pear.batが入ってるよ(確認した)。
本家のページからWindows binary(not Windows installer版)を再入手してはいかが?
0666nobodyさん
04/09/01 18:36ID:???そのサーバは攻撃されたらあぼーんですね。
0667nobodyさん
04/09/01 19:10ID:???0669653
04/09/02 17:40ID:???>>655,656
の通りでうまくいった。ありがとう。
で、質問ばっかりで申し訳ないんだが
CROSS JOIN する場合はどうすりゃいいんだ?
$table1->joinAdd($table2,"CROSS");
ってのはないみたいだし、
INNER JOIN table2 ON TRUE
ってすればいいかなぁとおもったんだが
$table2->whereAdd('true');
$table1->joinAdd($table2,"INNER");
とかしてもJOINされてないんだよね。
links.iniにON条件を書いてないとjoinAddできないのかな・・・
0671nobodyさん
04/09/03 07:42ID:???未選択状態を調べるにはどうすればいいのでしょうか?
addRuleでrequiredを追加してみたんですが、エラーが発生しないようなんです。
未選択状態だと、以後のチェックも行われないみたいだし。
デフォルトでどれかを選択状態にしておけばいいのですが、
利用者が選択を忘れてデフォのままsubmitしてしまうのを
避ける為、デフォルトは設定せずにしておきたいのですが。。。
$form->addElement('radio','radio_select',NULL,NULL,'A');
$form->addElement('radio','radio_select',NULL,NULL,'B');
$form->addElement('radio','radio_select',NULL,NULL,'C');
$form->addRule('radio_select','選択してください','required');
$form->addRule('radio_select','選択値が異常です','regex','/[A-C]/');
としていますが、どこかおかしいですか?
0672nobodyさん
04/09/03 09:04ID:???うちの HQF 3.2.3 では期待通りに動くっす.
他の element もまじえて $form->validate() した後の $form を Var_Dump::display() したりすると,
何か掴めるかもしれないね.
ただ,'radio' は group の中に入れないと「選択してください」が複数出てきて見た目がちょっと変.
0673671
04/09/03 10:59ID:???さんくす。
デバッグコンソール見て判った。配列を一つ掘っているのね。
どれかを選択すれば全てのエラーは消えるみたいだから、
一つ目のエラーを確認して1行だけ出力します。
あぁ、すっきりしますた。
0674nobodyさん
04/09/03 13:29ID:???$examples = array();
array_push($examples,
HTML_QuickForm::createElement('radio', null, null,
'ラベルA', '値A',
array('id' => 'example1'))
);
array_push($examples,
HTML_QuickForm::createElement('radio', null, null,
'ラベルB', '値B',
array('id' => 'example2'))
);
$form->addGroup($examples, 'example', 'Radio Example', " \n");
$form->addRule('example', 'Message for the Required Element',
'required', null, 'client'
);
0675nobodyさん
04/09/03 17:31ID:lg7eGDsn0676nobodyさん
04/09/03 17:55ID:CNeebmafttp://ns1.php.gr.jp/pipermail/php-users/2004-August/023593.html
0677nobodyさん
04/09/03 19:21ID:???とりあえずレンダラとしてSmartyの代わりにFlexyを使うようにしたり
PgSQLSessionHandlerを改造してMDBSessionHandlerを作ってみたり。
肝心のアプリはまだまだできてませんが、面白いですね。
ムックを首を長くして待ってます。
あとAuth_Container_MDBやCache_Container_mdb, MDB_QueryTool_Queryとかで
MDB::connect($dsn)をMDB::singletonに書き換えるとちょっとだけ幸せになれる気がしますた。
0678nobodyさん
04/09/06 08:31ID:h3KSdOjPようするにお前もわかんないだな
0681nobodyさん
04/09/14 00:59:51ID:pZNPN1gg確か、ここに作者さん居なかったかな?
お元気ですかー。
0682nobodyさん
04/09/14 10:02:01ID:???お待たせして申し訳ないです。いたって元気にしております。
近々HTTP-MobileAgent 0.22相当をリリース予定です。
最新のDoCoMoディスプレイマップをご希望の場合は、Perlモジュール
HTTP-MobileAgentに付属のmakexmldocomomapスクリプトを使ってXMLファイル
を定期的にアップデートする方法をお勧めします。
0683681
04/09/14 13:30:11ID:???あ、呼び出しちゃって申し訳ないです。
お疲れ様です。有難く使わせてもらってます。
makexmldocomomapで、xml吐き出したんですけど、
これを元に、DoCoMoDisplayMap.phpを書き直す(足す)んですか?
それともphpで参照できるようになってるんでしょうか?
あと、まだ先なのですが、Vodafone新端末でAgentが、
J-PHONE → Vodafoneとかに変わるのがちょっと気になってます。
0684682
04/09/14 13:39:13ID:???はい、PHPからそのまま(HTTP-MobileAgentと共通で)使えます。
具体的には、環境変数DOCOMO_MAPにXMLファイルのパスを記述するだけです。
PHPスクリプトで書くなら、
$_SERVER['DOCOMO_MAP'] = '/path/to/DoCoMoMap.xml';
Apacheの設定ファイルに書くなら(mod_envモジュール)、
SetEnv DOCOMO_MAP "/path/to/DoCoMoMap.xml"
とします。
0686nobodyさん
04/09/27 00:45:33ID:???0.20.0up
いつも使わせてもらってます。
作者さん乙。
0687682
04/09/27 11:43:26ID:???ありがとうございます。遅くなって申し訳ない。
安定しているので年内にはエンドユーザドキュメントを書いてstableリリース
(1.0.0)にしようと考えています。
要望等ありましたら遠慮なくここに書いて下さいね。検討させて頂きます。
というか開発手伝ってもらうのも歓迎ですが。
0688681
04/09/27 20:36:55ID:???ついにstableリリースご検討ですか。
お疲れさまです。
新端末検証ぐらいなら少しお役に立てるかも・・・
0689nobodyさん
04/10/01 18:33:03ID:???という事で質問なのですが、XML の読み込みには XML_Parser がありますけど、
書き込みも考えた場合、何かいいパッケージか参考になる実装ありますか。
PHP にある libxml ベースの関数はバージョン依存があるので避けようかなと思い PEAR で探しています。
0690nobodyさん
04/10/01 20:25:59ID:???0692nobodyさん
04/10/01 22:38:46ID:???ムックのこと言ってるなら立ち読みいってらっさい。
玉石混淆だから、欲しいネタがあるかどうかチェックするといいよ。つーか次の号のために買うといいよ!
あと QFC だけなら神 PDF 出てるよ。
http://hatotech.org/kumatch/datas/quickform.pdf
>>691
h たんはガチャピンxムックにはぁはぁするヒマがあったら隣近所との親睦度アップを考えた方がいいと思います!
それから猫飼おう。スカパー入れよう。
0694689
04/10/02 01:50:08ID:???http://pear.php.net/package/XML_Serializer
かなぁ・・・。微妙だけど。
0696nobodyさん
04/10/12 23:25:06ID:???PEARで作られているからかw
0697nobodyさん
04/10/14 02:21:43ID:???瞬時に返ってくるけどな。
0699nobodyさん
04/10/15 02:18:53ID:???Packageによっては特定のextensionを前提にしているものもあるので
たとえインストールしても動かない場合もあり得る。
(pear インストーラを使えばその辺もチェックしてくれる)
パッケージリストを見て
使いたいPackageだけ pear install で入れるのがPEAR流だな。
0700nobodyさん
04/10/16 20:38:51ID:???使わせてもらってます。
ezでサブスクライバNOを取得するメソッドもできれば・・・
あとezのgetModel()はあの形でstableになっちゃうんでしょうか・・・
0701701
04/10/17 02:14:15ID:ldM4ELJfこれって、usernameとpasword 以外にチェックをする項目を増やせないんですかね?
やりたいことは、下記のようなことです。
データベースで登録されているユーザーの一覧があって、そこには
username/passwordの他に、そのユーザーが有効かどうかのuservalidというフィールドが。
で、このuservalidフィールドがYesの時のみ認証をOKにするというようにしたいのです。
・・・・それとも、Authが作るDBオブジェクトを直接いじれって感じでしょうか。
ちなみに、私もMacOSX10.3.4/PHP4.3.8で>>485さんとおなじ症状がでて困っております。
手動しかないかなと、あきらめかけていますが。
0702nobodyさん
04/10/17 03:51:26ID:???LiveUser には isActive があるが、Auth とは比較にならないくらい困ったちゃんなのでお勧めはしない。
0703nobodyさん
04/10/17 04:34:16ID:4HQJ2MRV突っ込み方からしてわからない…。
0704nobodyさん
04/10/17 04:54:31ID:???まるごとPHPにSmartyまでは載ってる。
QFはどうとでもなる。Mojaviの外に追い出すか、initialize,validate辺りに入れる。
0705703
04/10/17 05:22:41ID:4HQJ2MRVMojavi+Smartyは何とか理解済みです。
多分・・・。
で、
http://mojavi.try-angle.biz/wiki/
ここにあるサンプルで、smartyをfilterでインスタンス化して使おうとしてます。
initialize,validateあたりに入れる…というのはHTML_QuickForm_Renderer_ArraySmartyを・・・でしょうか。
すべてはじめたばかりなので、さっぱり理解できてない…かも。
0706703
04/10/17 05:27:10ID:4HQJ2MRVQFのinitializeとかvalidate、ですね。
0707703
04/10/17 06:12:03ID:4HQJ2MRV$renderer->setAttribute('name', 'Smarty');
$qf = new HTML_QuickForm_Renderer_ArraySmarty($renderer);
$form->accept($qf);
$renderer->engine->assign('form',$qf->toArray());
$renderer->setTemplate('template.tpl');
return $renderer;
$formはQFでつくったものです。
$rendererに使われている、SmartyRenderを見てみると、
$this->engineにSmartyが読み込まれてたので引っ張ってみました。
こんな感じで、一応表示までは行きました。
が、本当にこれでいいのかどうか・・・。
先人の知恵を借りたいところです。
0708nobodyさん
04/10/17 06:18:45ID:???Action::initializeにQFの初期化や設定、
Action::validateにQF::validate、といったマッピングはどうですかー という話です。
QFの制御についてはまだまだ不満なので色んなやり方探して晒してください。
つー事で。
0710703
04/10/17 07:16:21ID:4HQJ2MRV改良の余地がすごくあるってことだけわかります(苦笑)
なるほど・・・
0711nobodyさん
04/10/17 20:02:38ID:???Auth_Container_DB を継承した独自の storage ドライバを作って、
その fetchData メソッドで uservalid を見るようにすればいい。
または Auth そのものを継承するなら、login メソッドを override だな。
0712703
04/10/18 05:02:22ID:BqY5Q9Lz708の提案のように、initializeでQF設定して、
function validate (&$controller, &$request, &$user)
{
$form = & $request->getAttribute('form');
return $form->validate();
}
って感じで一応動くようになったのだが…
何か間違ってる気がする。
formからの入力は全部QF任せでいいのかな…?
0713nobodyさん
04/10/18 08:42:42ID:Ujo7la6B0714nobodyさん
04/10/18 11:27:51ID:???0715nobodyさん
04/10/18 16:59:14ID:???PerlのHTTP::MobileAgent::Exモジュール相当の機能を取り込むかどうかです
ね。PearでHTTP::MobileAgent::Ex相当のパッケージをリリースするのはおそ
らく無理ですから、現行パッケージに取り込むしかないかな。
サブスクライバIDについては取り込みます。
getModel()メソッドについては、getRealModel()みたいな形での復活は有りか
なと思います。ただしDoCoMoのXMLファイルサポートのような形にできればで
すが。
現在のところHTTP::MobileAgentと完全に同じ機能群を提供するような話もあ
りませんし、要望はいつでも歓迎しますよ。
先に実装してからパッチを晒してもらう方が話が早いかも。
0716701
04/10/19 00:19:37ID:jZfyFMX1loginをオーバーライドは面倒そうだったので、別処理にしました。
最初、コネクションを複数張りそうな気がしてたのですが、
>>217 を参考にして、リソースを使い回して処理できるようになりました。
で、今はHTML_QuickFormに取り組んでいるのですが、これって
入力(&チェック)→ 確認 → 処理
という場合は楽に利用できるのですが、
入力1 → 入力2 → 入力3 → 確認 → 処理
という多段階のフォームは難しいですね。
「まるごとPHP」買って、HTML_QuickForm_Controllerの記事を読んだのですが、
・セッションを使う
・header("Location〜を使う
というのに若干抵抗があるのですが。
(まるごとPHPのサンプルスクリプトがCookie機能OFFではうまく動作しなかったり)
できれば、<input type=hidden〜ででまわしたいなと思っています。
入力1で入力された項目が入力2にhiddenで引き継がれるように
$form_obj = new HTML_QuickForm(...);
.....
foreach($_POST as $key=>$value){
$form_obj->addElement("hidden" , $key , $value) ;
}
とやったのですが、フォームエレメントに加えられないようです。
addElementメソッドが変数を引数にすると、動作しないようなのですが。
それとも、なにかよいメソッドがあるのでしょうか?
マニュアル見回したところでは見つけられなかったです・・・・。
0717nobodyさん
04/10/19 22:28:05ID:???レンダラを生成する際にcollectHiddenをtrueにしてないとか
はずしてたらスマソ
でもaddElementで変数を引数にしてるから
動作しないってこたぁないと思う
0718nobodyさん
04/10/20 17:13:22ID:???0720nobodyさん
04/10/24 04:07:54ID:???ぐぐってミラーしてるところ見つけたから当面は困らないけど・・・。
0722nobodyさん
04/10/24 10:57:28ID:???どうぞ。
http://www.google.co.jp/
0723nobodyさん
04/10/24 14:49:17ID:???// ̄~`i ゝ `l |
/ / ,______ ,_____ ________ | | ____ TM
| | ___ // ̄ヽヽ // ̄ヽヽ (( ̄)) | | // ̄_>>
\ヽ、 |l | | | | | | | | ``( (. .| | | | ~~
`、二===-' ` ===' ' ` ===' ' // ̄ヽヽ |__ゝ ヽ二=''
ヽヽ___// 日本
ウェブ イメージ ニュース New! グループ ディレクトリ |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
._________________
|Pear マニュアル. │・検索オプション
└────────────────┘・表示設定
| Google検索 | I'm Feeling Lucky | ・言語ツール
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
○ウェブ全体から検索 ◎日本語のページを検索
0724nobodyさん
04/10/25 13:10:14ID:???直すために何か自分で動きたいが何をどうしたら良いのか皆目わからん orz
0725nobodyさん
04/10/25 13:28:50ID:???PEAR Documentation List Mailing Listにポストされていました。
ドキュメントの問題はこのMLにポストするのが確実ですね。
http://marc.theaimsgroup.com/?t=109864526800003&r=1&w=2
とりあえずこちらで利用できるようです。
http://elf.no-ip.org/~elf/php/peardoc/ja/index.html
0726nobodyさん
04/10/25 13:30:08ID:???ここじゃダメなんですか?
■ このスレッドは過去ログ倉庫に格納されています