【PHP】PEAR Part2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/08/01(月) 21:27:12ID:pG+mahP3■PEAR
http://pear.php.net/
■前スレ
Pear
http://pc8.2ch.net/test/read.cgi/php/985665522/
0337nobodyさん
2006/04/06(木) 14:05:03ID:gNYW2zNbとんくすです。extraVarsの解説してるサイトってあまりないんですよね。
value=1 みたいに静的な変数は付加できるけど、value=%dみたいなこと
ができないみたいで…。
0338nobodyさん
2006/04/06(木) 14:06:54ID:???pageIDを使うのじゃだめなのか? 何がしたいんだか分からん。
0339nobodyさん
2006/04/06(木) 14:28:24ID:???なんで pageID 以外に同じ値を冗長に持たせたいのかわからん.
単に変数の名前を変えたいだけなら urlVar に 'ID' を指定.
あるいは extraVars で 'ID' の値として $_REQUEST['pageID'] を指定してやるとか.
挙動を変更したいなら Pager_* を継承したクラスを作ってそこでやるとか……
0340nobodyさん
2006/04/07(金) 11:36:01ID:???HTML_QuickForm で 「denotes required field」って部分を日本語に置き換える方法って無いでしょうか?
マニュアルがあればこの辺も調べたいんですが・・
0341nobodyさん
2006/04/07(金) 13:19:09ID:???[PHP-users 23103]QuickForm::addRule() requiredを使用したときに表示される"* denotes required field"を変更したい
ttp://ns1.php.gr.jp/pipermail/php-users/2004-August/023625.html
0342nobodyさん
2006/04/07(金) 14:14:44ID:???ありがとうございます!
http://pear.php.net/manual/en/package.html.html-quickform.html-quickform.setrequirednote.php
これですね。
$form->setRequiredNote('<font color=red>*</font>は必須項目です。');
って感じで出来ました。
0343nobodyさん
2006/04/07(金) 14:17:39ID:???0344340,342
2006/04/07(金) 14:32:22ID:???0345nobodyさん
2006/04/11(火) 18:36:04ID:???0346nobodyさん
2006/04/14(金) 18:17:06ID:ztoDRCLM今はxamppを使っています。
pear config-show
をすると、ディレクトリの設定などがwampp2当時のままになっていました。
xampp側で再設定するにはどうすればいいのでしょうか?
0347nobodyさん
2006/04/14(金) 18:26:29ID:STB/6fVFたぶんパス通ってないだけだよ。
0348346
2006/04/14(金) 19:12:42ID:???ありがとうございます。
古い環境変数を削除して、pathを通して、
再起動させたら、直りました。
batファイル内を見たら環境変数がなければ再設定しているようなので、
環境変数が邪魔していたようです。
0349nobodyさん
2006/04/24(月) 01:19:24ID:???したいんですけど、pearでそんな都合がいいもんないですかね?
0350nobodyさん
2006/04/24(月) 01:26:53ID:???$doc = new DOMDocument();
$doc->load('test.xml');
var_dump($doc);
これだと、オブジェクトのID返すだけなんですね。
$docがどんな状態かすぐに調べる方法ってありますか?
0352nobodyさん
2006/04/25(火) 23:23:53ID:???0353nobodyさん
2006/04/25(火) 23:40:55ID:???http://pear.php.net/package/HTTP_Upload
HTTPでアップロードするんじゃないのなら、その条件を提示
0354nobodyさん
2006/04/30(日) 01:25:55ID:TxzAQxO9PEARを手動インストールしています。
目的のHTTP_REQUESTは動いたのでいいんですが、
PEAR_infoが動きません。PEAR基本パッケージ?以外に何かインストールしないといけないんでしょうか?
0355nobodyさん
2006/04/30(日) 10:12:45ID:TxzAQxO9Console_Getoptが必要のようだったので、インストールしました。
で、結果は動きません。エラーログすら吐き出さない・・・。
PHP_info.phpにアクセスすると、しばらくたって白紙画面になります。
なにか、案などありませんでしょうか?
0356nobodyさん
2006/04/30(日) 11:54:05ID:???そもそもPEAR_Info使ってもしょうがないんじゃね
手動で入れたやつは情報見れんよ確か
0357nobodyさん
2006/04/30(日) 12:26:03ID:???0358nobodyさん
2006/04/30(日) 12:37:11ID:???レスどもッス。
そうなんすか。手動だとPEAR_Info動かないんだ・・・。
確かに、PEAR_Infoなくても問題ないんですけど、動かないってのがまず気になったのと、
時間がたって、「あれ?なに入れてたっけ?」で確認できたら便利かなと。
必要なモジュールは入ってると思うんだけどなぁ・・・。
0359nobodyさん
2006/04/30(日) 12:40:38ID:???サイボウズの奴見つけたんだけど、メンテしてないようで、prototype.jsが1.4.0だとエラー...
あとAPIが今イチ使いづらい。
0361nobodyさん
2006/04/30(日) 15:22:45ID:???Console_Getoptは、その方法で必要ってのはわかったんですけど、
他に必要そうなものが見当たらないんですよね。
ログが出ればわかるんだろうけど、なんでログでないんだろ。
ログは、別のPHPで適当にエラー起こすとちゃんと出るのに・・・。
0362356
2006/04/30(日) 21:10:32ID:???いや、手動で入れたPEAR_Infoが動かない、ってことじゃなくて
手動で入れたPEARモジュールのディレクトリ指定して
PEAR_Infoの一覧にその手動で入れたモジュール一覧って表示できたっけなあと
PEAR_InfoってPEARのパッケージマネージャが作成する
レジストリファイルを参照してどんなPEARモジュールが入ってるかを
表示してたような気がする、、、って書いてて自信なくなってきたや
ええと、手動で入れたモジュールが表示されるかどうかは別として
ただ白紙とか動かんってことは何かミスがあるかと思う
動くのは動くはず
0363359
2006/05/01(月) 04:52:20ID:???スレ違い、すま
0364nobodyさん
2006/05/01(月) 12:43:13ID:???なるほど。いろいろいじってたら、時々エラーログが出たりする・・・。
ログは、
PHP Fatal error: Maximum execution time of 30 seconds exceeded in /home/httpd/vhosts/ドメイン名/httpdocs/PEAR/PEAR/Registry.php on line 161
で、Registry.phpでエラーが起こってるってことなんすね?
該当の場所は、
function hasWriteAccess()
{
if (!@file_exists($this->install_dir)) {
$dir = $this->install_dir;
while ($dir && $dir != '.') {
$dir = dirname($dir); // cd ..
if ($dir != '.' && @file_exists($dir)) { ←ここが161行目
if (@is_writeable($dir)) {
return true;
} else {
return false;
}
}
}
return false;
}
return @is_writeable($this->install_dir);
}
ん〜どうしたもんかな・・・。
0365nobodyさん
2006/05/01(月) 14:47:38ID:???PEAR_infoが動かない原因がわかったっぽい・・・。
Info.phpのソースを追っていてわかったのは、
共有サーバーなので、/usr/share/pearにアクセス権がないのが根本的な原因っぽいっす・・・orz
で、pear_info.phpのnew PEAR_Infoのときに、
new PEAR_Info("ローカルインストのPEARディレクトリのパス","????")
に変えてみたら、エラーログは出るようになりました。
で、PEAR_Infoの第2引数は、何を入れればいいんでしょ?
PEAR_Infoの中で、new PEAR_Configのときに必要な引数なんですが、
マニュアルによると、
string $user_file
file to read user-defined options from
なんだそうで。手動インストした場合、なんのパスになるんでしょうか?
0366nobodyさん
2006/05/01(月) 23:14:35ID:???0367nobodyさん
2006/05/02(火) 12:40:26ID:???0368nobodyさん
2006/05/03(水) 21:31:31ID:V5QcZDriどうすればいいですか?(sqlite)
while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC)){
print $row[id];
}
ここに一文必要?
while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC)){
print $row[id];
}
0369nobodyさん
2006/05/03(水) 22:43:29ID:???mysqliでしか試してないけど
while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC)){
print $row[id];
}
$i=0;
while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC, $i++)){
print $row[id];
}
0370nobodyさん
2006/05/04(木) 02:46:46ID:q11ggjCHできました。ありがとうございました。
0371nobodyさん
2006/05/04(木) 13:15:32ID:???HTML_QuickFormを使っている人はどのようにアップロードを実装したらよいですか?
0372nobodyさん
2006/05/04(木) 15:40:50ID:???個人的にはQFを捨てるのがいいと思うけど
QF使ってた時はFileエレメント継承して
自前で拡張Fileエレメントを実装してた
0374nobodyさん
2006/05/04(木) 19:09:05ID:???枯れてるし、特にこだわりや不具合がなければそのまま使ってもいいんじゃない?
今後っていっても大幅な改良があるか分からんし
結構好きなパッケージだったんだけどな
0375nobodyさん
2006/05/04(木) 19:44:11ID:???公開するほどのもんでもないしさ
推奨されてないとはいえアップロード周りの処理自体は
QFのFileエレメントに元から実装されてるし
普通にFileエレメント使えばいいと思う
ただ元のままではfreezeできんから
そこは拡張したってだけで
0376371
2006/05/04(木) 20:53:39ID:???freezeできないと何が困るかわからないので…
QFの説明をあちこちで読んだのですがfreezeってなんですか?
0377nobodyさん
2006/05/04(木) 20:58:07ID:???0378nobodyさん
2006/05/04(木) 21:11:33ID:???0381nobodyさん
2006/05/05(金) 10:40:02ID:???>>377は俺じゃねえw
非推奨なのは将来的にサポートされないからだっけ
freezeは各エレメントのリクエストをhiddenで
埋め込んだ状態にする、確認画面とかで使う
>>379
うーん、多機能なだけに全部QFでやろうとすると
QFのコードがMVCの色んなとこに分散しちゃうような気がする
組み方が悪いだけかもしれないけど
チーム内全員がQFを熟知してるならいいけど
0の状態から完全になじむのには時間のかかるパッケージだと思う
0382nobodyさん
2006/05/05(金) 16:48:20ID:???なるほど。細かい説明サンクス。
確かに学習コストは意外にかかるな。
でもjavascriptを自動で吐いてくれる魅力には勝てないww
fileは、セキュリティ的に問題があるのかと想像していたのだが
そういう意味ではなかったのか。
0383nobodyさん
2006/05/06(土) 00:29:52ID:???分散するって感じにはならないなぁ
Filter で QF のオブジェクト自体と画面遷移を管理
エレメントはロジックの方で作成〜みたいな
まぁつまりやり方次第であって QF 使ったら必ず MVC が汚くなるとかそういうことじゃないぞと
学習コストがけっこうかかる点は同意
あとJSを自動で吐く魅力にも激しく同意w
0384nobodyさん
2006/05/06(土) 22:04:49ID:???確かにうちでもMVC的には問題ない
それより何かトラぶった時と、何かちょっとしたことをしようとした時に
調べたり面倒なことが多い。
情報も少ないし。
ところでCSRF対策のトークンをhiddenに仕込んでいるのだが受け取り側で
hiddenだけチェックしてくれないのだけどどうしてる?
0385nobodyさん
2006/05/06(土) 22:32:16ID:???まぁほとんどのPEAR物はそんな感じな気もするけど
> hiddenだけチェックしてくれないのだけどどうしてる?
ビミョーに意味がわからないが
フォームの hidden 要素に初めから固定で値を入れておきたい時は
setConstants() を使って入れてる
……ってそういう話じゃなく?
0386nobodyさん
2006/05/06(土) 22:47:00ID:???ページ1 hiddenにトークンを入れる
ページ2 sessionのトークンとhiddenから送られて来たトークンが同じものかチェック
これができなかったのです。
0387nobodyさん
2006/05/07(日) 02:20:02ID:dJnoXYUq0388nobodyさん
2006/05/07(日) 11:38:03ID:???理解した
hiddenの値がどうこうというより,
固定値と入力値との数値比較チェックがデフォルトで Rule として搭載されていないってことね
HTML_QuickForm_Rule_Compare や HTML_QuickForm_Rule_Range をベースに
固定値との比較をするような Rule を作ってしまえば簡単なんだけど
いちいち addRule() するだけでも面倒だよね……
0389nobodyさん
2006/05/07(日) 22:28:08ID:???CSRF対策のためにチケットを発行し、そのチェックをしたいのです。
1. ページ1でチケットを発行。セッションとページ1のhiddenに埋め込む
2. ユーザがPOSTする
3. セッション内のチケットとPOSTされたきたhiddenのチケットが同じであるかどうか
の照合をしたい
ということです。
addFormRule() を使うという手もあるかな?
うーん、よくわかんない...
0390nobodyさん
2006/05/07(日) 23:03:47ID:???たぶんその通りに理解できてると思うが.
addFormRule() なら何でもアリだね.
create_function('$values', 'return $values["ticket"] == $_SESSION["ticket"]')
みたいのを addFormRule() する,と.
(テキトーに書いたので動かして確認はしてません)
0391nobodyさん
2006/05/07(日) 23:15:10ID:???早速試してみましたができませんでした…
マニュアル読んでもaddFormRule()の使い方がわからんのですよね。
引数のmixedはどう使うのかと…
0392nobodyさん
2006/05/08(月) 00:01:43ID:???マニュアル見ても書いてないんだもんなー。
結局ソース読まなきゃいけないという学習コストの高さはやっぱりたまにキズだな
addFormRule
* @param mixed Callback, either function name or array(&$object, 'method')
オブジェクトとメソッドで渡せるようだ
0393nobodyさん
2006/05/08(月) 07:44:43ID:ZvSis4Rx0394nobodyさん
2006/05/08(月) 08:17:28ID:???そうなんだけど、Pear パッケージはテストを必ず
つけろってルールにしてくれんかなと思う。
CPAN とのいちばんの違いはもちろん量だけど、
質の違いはテストの有無に起因するんじゃないかと
思う今日この頃。
0395nobodyさん
2006/05/08(月) 11:24:03ID:???Thanx. かなり検索しているけど知らなかったいい資料ですね
tokenのvalidateもfreezeするとhiddenに前のtokenが入ってしまうという
また面倒なことになった
あー、QFってこういうところマンドクセ
0398nobodyさん
2006/05/11(木) 13:30:14ID:0g4oanFp(平行してPHP質問スレッドにもマルチしてます。)
・・・微妙に質問内容が違うってことで容赦いただければと思います。ゴメンナサイ。
Spreadsheet_Excel_Writerで、データを落とし込んだファイルにパスワードをつけることはできますか?
要はSaveAsメソッドの設定ができるかどうかってことなのですが・・・
どうにも資料が見当たらないので、何か情報をお持ちの方がいらっしゃったら教えてください。
0399nobodyさん
2006/05/11(木) 14:31:52ID:???0401nobodyさん
2006/05/11(木) 17:32:00ID:???0402nobodyさん
2006/05/11(木) 17:48:52ID:???質問掲示板に
↓
質問する
↓
「自分で調べろ」
【意味無し黄金パターン その2】
質問掲示板に
↓
質問する
↓
「ソース読め」
0404nobodyさん
2006/05/11(木) 20:31:52ID:???wizard.phpの住所のところが文字化けする。
不思議なのは、addressをすべてaddress1とかに変更すると
なぜか直ること。
日本語関係だったらまだわかるんだが。
0405nobodyさん
2006/05/11(木) 21:18:03ID:???初心者でもトライしてみる価値はあるんじゃないでしょうか。
とか書いてみるテスト
0406nobodyさん
2006/05/11(木) 21:21:19ID:???いや、それマジで勉強になるよ。初心者こそやるべきだと思う。
スポーツの世界でもよく言うが、「見るのも勉強」ってほんとだと思う。
それに、書いてあることが解るようになるとなんだか嬉しいし。
0407nobodyさん
2006/05/11(木) 21:35:10ID:???0409nobodyさん
2006/05/11(木) 21:42:53ID:???0411nobodyさん
2006/05/12(金) 14:15:54ID:???0412nobodyさん
2006/05/12(金) 14:26:06ID:???そもそもファイルにパスワードを付ける必要性は?
それぞれにパスワードつけて管理できんの?
つーかファイルにつけなくてもいーんじゃね?
そんな大事なもんだったら別の面でセキュリティ考えた方がよくね?
とかどうだい
0414nobodyさん
2006/05/13(土) 15:23:27ID:???と思って見に行ったら年末にbetaが出てたのね
0415nobodyさん
2006/05/15(月) 01:18:18ID:???0416398
2006/05/15(月) 10:16:25ID:???・・・必要性も何も客の要望なんだもん。というのがSEの見解。
なんだか知らんがお客様のこだわりのポイントだそうです。orz
管理画面にアクセスするのにIPで制限をかけ、ログインするのにパスワード認証を行い
ファイルを落とすのに権限で制限をかけ、落としたファイルにパスワードをかける。と。
個人情報がどーだこーだといわれる時代ですから。
0417nobodyさん
2006/05/15(月) 15:27:53ID:???0418nobodyさん
2006/05/17(水) 23:56:50ID:???0419nobodyさん
2006/05/18(木) 11:32:52ID:???XML_RPCかな。
0420nobodyさん
2006/05/20(土) 11:06:26ID:FxboaxWW$res = $db->query($sql);
if (DB::isError($res)
…
と記述して、クエリの実行時エラーを検出しようとしているのですが、
例えば、$sqlに存在しないテーブルへの参照クエリを設定して実行しても、
$resにはDB_Resultが返されます。
$res->fetchRow()するとDB_Errorが返ってきます。
var_dump($res)すると、$resに格納されているDB_Resultの['result']に
DB_Errorが格納されています。
これって仕様なのでしょうか?
PHP 5.1.2
MySQL 5.0.19
0422nobodyさん
2006/05/21(日) 08:53:10ID:???自己レスですが、PEAR::DBのバージョンが古かったようで、
最新バージョンに上げてもらったら本来の動作になりました。
0425nobodyさん
2006/05/22(月) 10:50:10ID:???0426nobodyさん
2006/05/22(月) 12:40:43ID:???0427421
2006/05/22(月) 20:39:50ID:???それをガタガタといちいちケチつけやがって!
初心者をなめてんじゃねーぞ!
かかってきやがれゴルア!
0428nobodyさん
2006/05/22(月) 21:20:35ID:???0430nobodyさん
2006/06/02(金) 09:48:05ID:???ADOdbを使おうと思うのですが、
> ADODBの最強な点はダイナミックリンク可能な点
この“ダイナミックリンク”って具体的に、どういう使いかたですか?
0431nobodyさん
2006/06/02(金) 11:54:14ID:???0432nobodyさん
2006/06/04(日) 19:58:04ID:???どうすればいいのでしょうか?
$form = new HTML_QuickForm('Test1', 'post');
$form2 = new HTML_QuickForm('Test2', 'post');
とやってみましたが、何か違うような気がしてきました。
0433nobodyさん
2006/06/04(日) 20:07:36ID:???0434nobodyさん
2006/06/05(月) 11:36:25ID:Wgk7hZcJソース読んでる方おしえてくださいませ
0435nobodyさん
2006/06/05(月) 13:00:34ID:82tWBB6mダンマリになります。何か考えられる原因が有ればおしえていただけ
無いでしょうか。。。
DOSプロンプトで
> CD c:\php
で移動して、
> go-pear.bat
でEnterを押しています。
Enter押下後に、何も表示されずダンマリ。
何分待っても(1時間は待ちました)なにも表示されないので
Ctrl+Cで強制終了。
環境は、WindowsXP SP2、PHP5.1.4です。
0436nobodyさん
2006/06/05(月) 13:12:43ID:???■ このスレッドは過去ログ倉庫に格納されています