【PHP】PEAR Part2 ..
[2ch|▼Menu]
362:356
06/04/30 21:10:32
>>358
いや、手動で入れたPEAR_Infoが動かない、ってことじゃなくて
手動で入れたPEARモジュールのディレクトリ指定して
PEAR_Infoの一覧にその手動で入れたモジュール一覧って表示できたっけなあと
PEAR_InfoってPEARのパッケージマネージャが作成する
レジストリファイルを参照してどんなPEARモジュールが入ってるかを
表示してたような気がする、、、って書いてて自信なくなってきたや

ええと、手動で入れたモジュールが表示されるかどうかは別として
ただ白紙とか動かんってことは何かミスがあるかと思う
動くのは動くはず

363:359
06/05/01 04:52:20
symfonyのJavascriptHelperが使えそ。
スレ違い、すま


364:nobodyさん
06/05/01 12:43:13
>>362
なるほど。いろいろいじってたら、時々エラーログが出たりする・・・。
ログは、
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);
}
ん〜どうしたもんかな・・・。


365:nobodyさん
06/05/01 14:47:38
再度、連カキコすません。
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
なんだそうで。手動インストした場合、なんのパスになるんでしょうか?



366:nobodyさん
06/05/01 23:14:35
なんでメモ帳にしてる奴がいるの?

367:nobodyさん
06/05/02 12:40:26
2chなんて馬鹿でかいソーシャルネットワークメモ帳みたいなもんだろ

368:nobodyさん
06/05/03 21:31:31 V5QcZDri
PEARのDB.phpを使って、以下のスクリプトを繰り返したいのだけど
どうすればいいですか?(sqlite)

while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC)){
print $row[id];
}
ここに一文必要?
while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC)){
print $row[id];
}

369:nobodyさん
06/05/03 22:43:29
>>368
mysqliでしか試してないけど
while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC)){
print $row[id];
}
$i=0;
while($row =& $result->fetchRow(DB_FETCHMODE_ASSOC, $i++)){
print $row[id];
}

370:nobodyさん
06/05/04 02:46:46 q11ggjCH
>>369
できました。ありがとうございました。

371:nobodyさん
06/05/04 13:15:32
HTML_QuickFormでのアップロードは今後推奨されないようなのですが、
HTML_QuickFormを使っている人はどのようにアップロードを実装したらよいですか?

372:nobodyさん
06/05/04 15:40:50
>>371
個人的にはQFを捨てるのがいいと思うけど
QF使ってた時はFileエレメント継承して
自前で拡張Fileエレメントを実装してた

373:nobodyさん
06/05/04 16:10:53
>>372
それ公開してもらえないですよね…?

374:nobodyさん
06/05/04 19:09:05
>>371
枯れてるし、特にこだわりや不具合がなければそのまま使ってもいいんじゃない?
今後っていっても大幅な改良があるか分からんし
結構好きなパッケージだったんだけどな

375:nobodyさん
06/05/04 19:44:11
>>373
公開するほどのもんでもないしさ
推奨されてないとはいえアップロード周りの処理自体は
QFのFileエレメントに元から実装されてるし
普通にFileエレメント使えばいいと思う
ただ元のままではfreezeできんから
そこは拡張したってだけで

376:371
06/05/04 20:53:39
推奨されていない理由ってセキュリティ的な問題ですか?

freezeできないと何が困るかわからないので…

QFの説明をあちこちで読んだのですがfreezeってなんですか?


377:nobodyさん
06/05/04 20:58:07
動いたら撃つぞだっけ?

378:nobodyさん
06/05/04 21:11:33
つまんね

379:nobodyさん
06/05/05 03:45:29
>>372
371じゃないけどなぜQFを捨てた方がいいと思ってる??
他にいいのがあるなら知りたいと思って。



380:nobodyさん
06/05/05 05:12:05
>>378
わからずに死んだ奴もいるんだから、それで片付けるなよ

381:nobodyさん
06/05/05 10:40:02
>>376 >>380
>>377は俺じゃねえw
非推奨なのは将来的にサポートされないからだっけ
freezeは各エレメントのリクエストをhiddenで
埋め込んだ状態にする、確認画面とかで使う

>>379
うーん、多機能なだけに全部QFでやろうとすると
QFのコードがMVCの色んなとこに分散しちゃうような気がする
組み方が悪いだけかもしれないけど
チーム内全員がQFを熟知してるならいいけど
0の状態から完全になじむのには時間のかかるパッケージだと思う

382:nobodyさん
06/05/05 16:48:20
>>381
なるほど。細かい説明サンクス。

確かに学習コストは意外にかかるな。
でもjavascriptを自動で吐いてくれる魅力には勝てないww

fileは、セキュリティ的に問題があるのかと想像していたのだが
そういう意味ではなかったのか。


383:nobodyさん
06/05/06 00:29:52
Maple で Filter_QuickForm なんてのを自作してやってるけど
分散するって感じにはならないなぁ
Filter で QF のオブジェクト自体と画面遷移を管理
エレメントはロジックの方で作成〜みたいな
まぁつまりやり方次第であって QF 使ったら必ず MVC が汚くなるとかそういうことじゃないぞと

学習コストがけっこうかかる点は同意
あとJSを自動で吐く魅力にも激しく同意w

384:nobodyさん
06/05/06 22:04:49
>>383
確かにうちでもMVC的には問題ない

それより何かトラぶった時と、何かちょっとしたことをしようとした時に
調べたり面倒なことが多い。
情報も少ないし。

ところでCSRF対策のトークンをhiddenに仕込んでいるのだが受け取り側で
hiddenだけチェックしてくれないのだけどどうしてる?

385:nobodyさん
06/05/06 22:32:16
情報はもうソース読むしかないってのがちょっとね……
まぁほとんどのPEAR物はそんな感じな気もするけど

> hiddenだけチェックしてくれないのだけどどうしてる?

ビミョーに意味がわからないが
フォームの hidden 要素に初めから固定で値を入れておきたい時は
setConstants() を使って入れてる
……ってそういう話じゃなく?

386:nobodyさん
06/05/06 22:47:00
addRule('hidden')って実装されていないらしいので、トークンの照合ができないのです。

ページ1 hiddenにトークンを入れる
ページ2 sessionのトークンとhiddenから送られて来たトークンが同じものかチェック

これができなかったのです。

387:nobodyさん
06/05/07 02:20:02 dJnoXYUq
数値としてのminとmaxのチェックがデフォルトで無いのはなんとかならなかったんだろうか

388:nobodyさん
06/05/07 11:38:03
>>386
理解した
hiddenの値がどうこうというより,
固定値と入力値との数値比較チェックがデフォルトで Rule として搭載されていないってことね

HTML_QuickForm_Rule_Compare や HTML_QuickForm_Rule_Range をベースに
固定値との比較をするような Rule を作ってしまえば簡単なんだけど
いちいち addRule() するだけでも面倒だよね……

389:nobodyさん
06/05/07 22:28:08
むしろちゃんと説明してなかったかも

CSRF対策のためにチケットを発行し、そのチェックをしたいのです。

1. ページ1でチケットを発行。セッションとページ1のhiddenに埋め込む
2. ユーザがPOSTする
3. セッション内のチケットとPOSTされたきたhiddenのチケットが同じであるかどうか
の照合をしたい

ということです。
addFormRule() を使うという手もあるかな?
うーん、よくわかんない...

390:nobodyさん
06/05/07 23:03:47
>>389
たぶんその通りに理解できてると思うが.
addFormRule() なら何でもアリだね.

create_function('$values', 'return $values["ticket"] == $_SESSION["ticket"]')

みたいのを addFormRule() する,と.
(テキトーに書いたので動かして確認はしてません)

391:nobodyさん
06/05/07 23:15:10
>>390
早速試してみましたができませんでした…

マニュアル読んでもaddFormRule()の使い方がわからんのですよね。
引数のmixedはどう使うのかと…

392:nobodyさん
06/05/08 00:01:43
ソース見てやっとわかった。
マニュアル見ても書いてないんだもんなー。

結局ソース読まなきゃいけないという学習コストの高さはやっぱりたまにキズだな
addFormRule
* @param mixed Callback, either function name or array(&$object, 'method')

オブジェクトとメソッドで渡せるようだ

393:nobodyさん
06/05/08 07:44:43 ZvSis4Rx
URLリンク(hatotech.org)

394:nobodyさん
06/05/08 08:17:28
流れぶった切ってすまんが、ドキュメントの有無も
そうなんだけど、Pear パッケージはテストを必ず
つけろってルールにしてくれんかなと思う。

CPAN とのいちばんの違いはもちろん量だけど、
質の違いはテストの有無に起因するんじゃないかと
思う今日この頃。


395:nobodyさん
06/05/08 11:24:03
>>393
Thanx. かなり検索しているけど知らなかったいい資料ですね

tokenのvalidateもfreezeするとhiddenに前のtokenが入ってしまうという
また面倒なことになった

あー、QFってこういうところマンドクセ


396:nobodyさん
06/05/08 12:54:43
>>394
ん、テストは各パッケージについてるよ

397:nobodyさん
06/05/08 18:05:21
>>394

テストあるっつったって、ただのスケルトンの場合も多し>CPAN


398:nobodyさん
06/05/11 13:30:14 0g4oanFp
Spreadsheet_Excel_Writerについての質問です。
(平行してPHP質問スレッドにもマルチしてます。)
・・・微妙に質問内容が違うってことで容赦いただければと思います。ゴメンナサイ。

Spreadsheet_Excel_Writerで、データを落とし込んだファイルにパスワードをつけることはできますか?
要はSaveAsメソッドの設定ができるかどうかってことなのですが・・・
どうにも資料が見当たらないので、何か情報をお持ちの方がいらっしゃったら教えてください。


399:nobodyさん
06/05/11 14:31:52
ソース読んだらいいじゃない。

400:nobodyさん
06/05/11 15:45:09
>>398
ないよ
xlsのファイルフォーマット解析して自分で実装

401:nobodyさん
06/05/11 17:32:00
分からないなら答えなくていい

402:nobodyさん
06/05/11 17:48:52
【意味無し黄金パターン】

質問掲示板に

質問する

「自分で調べろ」

【意味無し黄金パターン その2】
質問掲示板に

質問する

「ソース読め」


403:nobodyさん
06/05/11 18:38:40
>>402
どっちも同じだろ
得意げに知ったかぶりやがってワロス

404:nobodyさん
06/05/11 20:31:52
「PEAR入門」に乗っているQuickForm_Controllerの
wizard.phpの住所のところが文字化けする。

不思議なのは、addressをすべてaddress1とかに変更すると
なぜか直ること。

日本語関係だったらまだわかるんだが。

405:nobodyさん
06/05/11 21:18:03
ソース読んだらほんとにすぐにわかることって多いですよ。
初心者でもトライしてみる価値はあるんじゃないでしょうか。

とか書いてみるテスト

406:nobodyさん
06/05/11 21:21:19
>>405
いや、それマジで勉強になるよ。初心者こそやるべきだと思う。
スポーツの世界でもよく言うが、「見るのも勉強」ってほんとだと思う。
それに、書いてあることが解るようになるとなんだか嬉しいし。


407:nobodyさん
06/05/11 21:35:10
じゃあLinuxのソース読んでバグさがしてくれ。

408:nobodyさん
06/05/11 21:40:27
>>407
お前のような奴がいるからペチパーは馬鹿にされるんだよ・・・。

409:nobodyさん
06/05/11 21:42:53
ピーチクパーチクうるせーぞ

410:nobodyさん
06/05/12 07:32:16
>>407
CのソースでもPHPのソースぐらいならたまに見るけどLinuxは見る気もしないです

411:nobodyさん
06/05/12 14:15:54
ビーチクビーチクなめてーぞ

412:nobodyさん
06/05/12 14:26:06
>>398
そもそもファイルにパスワードを付ける必要性は?
それぞれにパスワードつけて管理できんの?
つーかファイルにつけなくてもいーんじゃね?
そんな大事なもんだったら別の面でセキュリティ考えた方がよくね?
とかどうだい

413:nobodyさん
06/05/12 19:18:04
>>412
念には念つー意味じゃありじゃね?

414:nobodyさん
06/05/13 15:23:27
Spreadsheet_Excel_Writerてもうメンテしてないんじゃなかったっけ

と思って見に行ったら年末にbetaが出てたのね

415:nobodyさん
06/05/15 01:18:18
PHPで片っ端からパスワード試すスクリプトでも書けば突破できそうな悪寒。

416:398
06/05/15 10:16:25
念には念を。で正解だと思います。

・・・必要性も何も客の要望なんだもん。というのがSEの見解。
なんだか知らんがお客様のこだわりのポイントだそうです。orz
管理画面にアクセスするのにIPで制限をかけ、ログインするのにパスワード認証を行い
ファイルを落とすのに権限で制限をかけ、落としたファイルにパスワードをかける。と。


個人情報がどーだこーだといわれる時代ですから。

417:nobodyさん
06/05/15 15:27:53
まったく使ったことないけどWorksheet::protect()は?

418:nobodyさん
06/05/17 23:56:50
SSL証明は使わないんだね。何か根本的な所がダメな感じ。

419:nobodyさん
06/05/18 11:32:52
更新ping を送信、受信する専用パッケージってないですよね?

XML_RPCかな。

420:nobodyさん
06/05/20 11:06:26 FxboaxWW
PEAR::DBで、

$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

421:nobodyさん
06/05/21 00:35:31
>>420
そうです。マニュアルぐらい読んだらどうかね

422:nobodyさん
06/05/21 08:53:10
>>421 いい加減なこと書かないで下さい。

自己レスですが、PEAR::DBのバージョンが古かったようで、
最新バージョンに上げてもらったら本来の動作になりました。

423:nobodyさん
06/05/21 22:20:02
>>422
いいかげんなのはお前。
自分でググレ。
このスレで質問なんかするな。

>>1-1000 全員な。

424:nobodyさん
06/05/22 00:15:18
>>422
こいつはひどい。釣りにしてもヒド過ぎるレスだ。

425:nobodyさん
06/05/22 10:50:10
PHP使ってる香具師って頭悪いなあ。

426:nobodyさん
06/05/22 12:40:43
ゴメンヨ・・・

427:421
06/05/22 20:39:50
初心者が背伸びしたかっただけなんだよ!
それをガタガタといちいちケチつけやがって!
初心者をなめてんじゃねーぞ!
かかってきやがれゴルア!

428:nobodyさん
06/05/22 21:20:35
ここは初心者を袋叩きにするスレですか?

429:nobodyさん
06/05/23 03:59:01
>>425
ぜひ頭いいとこ見せてください!

430:nobodyさん
06/06/02 09:48:05
phpspotの中の人が書いた本とか、このスレとか読んで
ADOdbを使おうと思うのですが、
> ADODBの最強な点はダイナミックリンク可能な点
この“ダイナミックリンク”って具体的に、どういう使いかたですか?

431:nobodyさん
06/06/02 11:54:14
adodbはPEARではないという件に関して



432:nobodyさん
06/06/04 19:58:04
HTML_QuickForm で1つのページに<form> </form>を2つ置きたい場合は、
どうすればいいのでしょうか?

$form = new HTML_QuickForm('Test1', 'post');
$form2 = new HTML_QuickForm('Test2', 'post');

とやってみましたが、何か違うような気がしてきました。

433:nobodyさん
06/06/04 20:07:36
それでいけるはずだけどな

434:nobodyさん
06/06/05 11:36:25 Wgk7hZcJ
PEAR::DBのプレースホルダ ? の自動クオートってquotesmart()じゃないの?
ソース読んでる方おしえてくださいませ

435:nobodyさん
06/06/05 13:00:34 82tWBB6m
PEARをインストールしたいのですが、c:\php\go-pear.batを実行しても
ダンマリになります。何か考えられる原因が有ればおしえていただけ
無いでしょうか。。。

DOSプロンプトで
> CD c:\php
で移動して、
> go-pear.bat
でEnterを押しています。

Enter押下後に、何も表示されずダンマリ。
何分待っても(1時間は待ちました)なにも表示されないので
Ctrl+Cで強制終了。

環境は、WindowsXP SP2、PHP5.1.4です。

436:nobodyさん
06/06/05 13:12:43
普通にネット繋がってないとか?

437:nobodyさん
06/06/05 14:06:54
セキュリティソフトとか?

438:nobodyさん
06/06/05 16:15:22
普通にファイヤーウォール機能が有効になってるんだろう。SP2だし。
許可しないと接続できないよ。

やりかたはウィンドウズ板で訊くか、メーカに訊くか、マイクロソフトにでも訊いてくれ。

439:435
06/06/05 20:29:10
SP2のファイアウォール忘れていました…

ひとまず go-pear.php というのがあったのでそちらを試したところ
インストールできました。

440:nobodyさん
06/06/06 07:42:26
go-pear.batの中身みた?

441:nobodyさん
06/06/06 17:56:12
Net_CDDBってご存じないですか?

CDDBを利用出来るPEAR用のライブラリがあるとのことで
ダウンロードして利用を試みているのですが、全く参考文献がないし
そもそもどのように使うライブラリかわかりません。。

ご存じの方は、どうやってCDDBにアクセスして出力するか
教えていただけないでしょうか?

442:nobodyさん
06/06/06 20:09:51
>>441
Net_CDDBはalpha版なんだよ。
alpha版ってのは開発途中で脆弱性なんかもはらんでいるし、
ある程度わかってる人間が試用してバグなんかをフィードバックするもんなんだよ。

>ダウンロードして利用を試みているのですが、全く参考文献がないし
>そもそもどのように使うライブラリかわかりません。。
というような段階なら今はやめておいた方がいい。

それでも使いたいなら
URLリンク(pear.php.net)
を読んで頑張れ。

443:nobodyさん
06/06/06 20:10:22
そもそもCDDBってあんまり信用性ないけど大丈夫な用途なの?

444:nobodyさん
06/06/06 20:58:04
見た感じCDのdiscid?からデータを取得してるみたいだけど。
アーティスト名やアルバム名とかからも検索出来ないとあんまり使い道ないんじゃないの?

445:nobodyさん
06/06/06 21:39:57
CDDBの有用性や用途自体はここで議論する内容じゃないな

446:nobodyさん
06/06/07 00:13:00
あきらかに思いつきでCDDBに飛びつこうとしてる様には見える。
地道に手でデータ入力しないと使い物に成らないことは多い。

447:nobodyさん
06/06/07 01:37:05 y49n2VPp
>>430
adodb-extのこと
エンジン部分がcで書かれてる

448:nobodyさん
06/06/07 09:50:37
>>447
>>430ではないが、その拡張を使ったらどの位早くなるか知ってる香具師いる?

449:nobodyさん
06/06/07 12:02:25 L3b4rYZL
すみません。ちょっと、教えて下さい。PEARでMDB_QueryToolを使っている
のですが、あるSQL文を書くことが出来ないので、どなたか教えて頂きたい
のです。Tcustomerテーブルから、pointフィールドが「3か4か5」のものを
抽出しようとして、下記の文をPHP5で書きました。

$Tcustomer = DB_Factory::create( 'Tcustomer' );
$Tcustomer->addWhere(' point in ( ? ) ','3,4,5');

そうすると、pointフィールドが「3」のものだけが抽出され、「4」と
「5」のものは抽出されないのです。普通にSQL文で書けば、
select * from Tcustomer where point in (3,4,5);
とすれば良いのですが、どうしてもここはPEARのMDB_QueryToolで書かな
ければならない状況なのです。どなたかPEARのMDB_QueryToolでの書き方
を教えて頂きたく存じます。宜しくお願いします。

450:nobodyさん
06/06/07 13:25:11
DB_Factoryって自作のクラス?
そこはよくわからんのだけど、単にMDB_QueryToolのインスタンスを返してくれるとして、
MDB_QueryToolのaddWhereは
function addWhere($where , $condition='AND')
{
if ($this->getWhere()) {
$where = $this->getWhere().' '.$condition.' '.$where;
}
$this->setWhere($where);
}
となってるから、
$Tcustomer->addWhere(' point in ( 3,4,5 )');
と書けば上手くいくと思う。

どうかな?

451:nobodyさん
06/06/07 21:13:32 Ho01fxGO
>>450

>>449です。出来ました!!ありがとうございます。

452:nobodyさん
06/06/09 20:53:34
少し質問させてください。

現在ファイルのアップロードが行える掲示板系のシステムをPHPで作成しています。
プログラム自体はそんなに苦労していないんですが、ひとつ付け加えたいものがあって悩んでいます。

大容量のファイルをアップロードする際、アップロードが終わらないと別の処理ができません。
そこで、「現在アップロードをしている」ことをわかりやすくするために、HTML_Progressを使ったポップアップウインドウで実現しています。
しかし、サンプルサイトをみても「総容量に対し、どれだけアップロードできたか」の進捗状況を表示するのではなく、
アップロードが終わるまでアニメーションを行い、アップロードができたらストップさせる形でした。
これを、「総容量に対し、どれだけアップロードできたか」の進捗状況を表示するようには、どうすればいいのでしょうか。

また、アップロードを行うフォームはHTML_QuickFormを使っているのですが、
アップロード中にブラウザを中止させたり、閉じたりした場合、進捗バーが止まらず、見かけ上常にアップロードしているように見えます。
できることなら、アップロード中にブラウザ側でなんらかのエラーが起きてアップロードができなくなったとき、
進捗バーを止め、エラーを表示したいのです。

アップロードに使っている関数はHTML_QuickForm_File::moveUploadedFileです。
この関数ではアップロードが「できた」か「できなかった」かの状態が取れるはずなのですが、
ブラウザからの中断には対応していないのでしょうか。

長くなりましたが、お答え願えれば幸いです。
最後に、もうひとつ質問なのですが、同システムをPerlでやろうとした場合、
PHPで行うより簡単になりますか?

453:nobodyさん
06/06/09 21:06:47
>>452
すれ違い

454:nobodyさん
06/06/09 22:35:31
>>452
URLリンク(uber-uploader.sourceforge.net)


455:nobodyさん
06/06/09 22:38:54
>>452
ぐぐれば腐る程サンプルでてくるよ

456:nobodyさん
06/06/11 15:11:27
>>453
すみませんでした。

457:nobodyさん
06/06/12 02:35:54
HTML_Quick_Form_Controllerが何もうれしくない件について
URLリンク(pear.php.net)

これ理解するくらいなら、自分でコントローラ作った方がマシじゃない?
使ってるやついたらHQFCのいいとこを教えてくれ。

458:nobodyさん
06/06/13 00:45:56
世の中には自分で作れない馬鹿も存在するし(w

459:nobodyさん
06/06/13 00:49:11
コントローラを自分では作れないけど
この小難しい HQFC を理解して使える……ってのも
馬鹿の程度がかなーり微妙だよな

460:nobodyさん
06/06/13 02:26:47
>>459
同感。
小難しい HQFC を理解して使える馬鹿の登場を待とうか。
なんて、あおってみたりするテスト

461:nobodyさん
06/06/13 09:36:39
PEARってなんて読むの

462:nobodyさん
06/06/13 09:48:21
ドンブリ

463:nobodyさん
06/06/13 12:09:51
>>462
嘘教えちゃだめでしょ

>>461
クスコ

464:nobodyさん
06/06/13 12:36:45
>>461
サルスベリ

465:nobodyさん
06/06/13 13:15:57
Perl使いはPEARと書いてうんことよみます
PHP使いはPEARと書いてピアーとよみます

466:nobodyさん
06/06/13 15:37:05
ピアーだとpeerだけどね。和製英語じゃ恥ずかしいよ。

467:nobodyさん
06/06/13 16:31:37
洋ナシのことだから
ペアーでいいんじゃない



468:nobodyさん
06/06/13 16:33:31
どんなオチが来るのかと思ったら、普通に言っちゃったね・・・

469:nobodyさん
06/06/13 17:48:06
用無し

470:nobodyさん
06/06/13 19:04:20
誰がうまいことを言えと

471:nobodyさん
06/06/14 11:24:21
ペアはpairだが。ここの住人は英語が使えないな。

472:nobodyさん
06/06/14 12:05:34
きのうの昼下がり、対向車とすれ違うのが難しい狭い道路でのできごと。
対向車と鉢合わせ(↓な感じ)

_______/ ̄\____
●→                ←●俺
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

_______/ ̄\____
       ●→     ←●俺
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

_______/ ̄\____
          ●   ●俺
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

_______/ ̄\____
          ●   ●俺
       |    ( _●_)  ミ

_______/ ̄\____
       /  ●   ● | 
       |    ( _●_)  ミ

   ∩___∩
   | ノ      ヽ
  /  ●   ● | ベア─!!
  |    ( _●_)  ミ
 彡、   |∪|  、`\
/ __  ヽノ /´>  )


473:nobodyさん
06/06/14 16:59:31
アイアムヒアー

474:nobodyさん
06/06/14 19:17:59
>>471
片仮名だとそれ以外言い方なかろう

475:nobodyさん
06/06/15 10:33:44
くるくるパー

476:nobodyさん
06/06/15 13:37:41
んで結局ピアー、ペアーどっちなの?

477:nobodyさん
06/06/15 15:02:27
>>476

URLリンク(pear.php.net)
> 果物の梨と同じように(「ペア」と)発音します。

梨↓
URLリンク(dictionary.goo.ne.jp)

478:nobodyさん
06/06/15 15:05:14
漏れは ペア 派

479:nobodyさん
06/06/15 15:49:12
激しくDDI

480:nobodyさん
06/06/15 18:03:54
漏れは今poorだ。金くれ。

481:nobodyさん
06/06/15 18:16:56
480 nobodyさん sage 2006/06/15(木) 18:03:54 ID:???
漏れは今poorだ。金くれ。

482:nobodyさん
06/06/15 21:20:04
Spreadsheet_excel_writerを試用してるんですが、
セルに数値を入れるときカンマ区切りで表示する方法ないですかね?
NumFormatでもできないようなので、PHP側でnumber_formatして
代入しているのですが、office2003のexcelで開くと
文字列として認識され激しく鬱です。
当然関数も使えなくなりますし…

483:nobodyさん
06/06/15 22:42:31
>>482
void Format::setNumFormat (integer $num_format)

484:482
06/06/15 23:35:37
>>483
恥ずかしながらそのメソッドのマニュアルを見ても、
カンマ区切りのやり方が思いつかないんですが・・・。

ソース読まなきゃだめですか?

485:nobodyさん
06/06/16 03:02:14
PEARのライブラリって、Zendの人が作ったものの割合はどれくらいなんだろう?
なんかもうひとつイマイチなものが多かったりするんだが、
Zendの開発力ってあの程度のものなのかな。

486:nobodyさん
06/06/16 03:34:33
PEARの人って、
・元々PHP本体や拡張やってた人
・Zendの人でPHPの本体、特にZEやってる人
と余りかぶってない気がする。PECLの方は、元々は
拡張でやってたのをPECLに出したものが多いけどね。

487:nobodyさん
06/06/17 13:02:44
あれ、pear.php.netの鯖おちてるぞ

488:nobodyさん
06/06/17 15:04:46
>>487
日常茶飯事だからいちいち報告しなくてもいいよ。

489:nobodyさん
06/06/18 15:11:03
php使ってるからね。
検索エンジンが来たら落ちます。orz

490:nobodyさん
06/06/19 16:42:02
いつの間にかHTML_QuickForm2なんてのがある

491:nobodyさん
06/06/19 16:46:27
>>490
なにーーーーー
1との互換性はあるのか?
ファイルのアップロードはサポートされるのか?

ちょっといってくる


492:nobodyさん
06/06/19 17:09:57
URLリンク(pear.php.net)
The package development is currently in planning stage.

...orz

待つか

493:nobodyさん
06/06/19 18:02:43
1と同じ機能らしいけどどうだろ
欲しい機能ある?

one time token実装して欲しいなー


494:nobodyさん
06/06/21 12:59:40 af4RZ/Sl
MAC OS 10.4でpearをインストールするためにコマンドを打ち込むと
Warning: touch(): Unable to create file /usr/lib/php/.lock because Permission denied in Registry.php on line 284
could not create lock file: failed to open stream: No such file or directory
というエラーが出てしまうのですが、どこのパーミッションを変えればよいのでしょうか?

495:nobodyさん
06/06/21 13:20:26
/usr/lib/php/ ディレクトリか、
/usr/lib/php/.lock のファイルのどちらか。

まずは .lock を消して試すことだね。

496:nobodyさん
06/06/21 19:17:43
レンサバでPEARを使うにはどうすればいい?誰か教えて


497:nobodyさん
06/06/21 19:40:50
>>496
管理にお願いするか

自分で書き込めるディレクトリ(DocumentRoot外が望ましい)に手動で置いて
includ_pathを通す。

498:nobodyさん
06/06/21 21:32:47
>>494
sudo

499:498
06/06/21 21:37:25
あ、ごめん。質問内容が違ってたね

と言ってみる

500:nobodyさん
06/06/21 23:56:04
マカは氏ね。

501:nobodyさん
06/06/22 14:12:58 347Blei1
HTML_QuickFormでフォームの入力検証を行っているのですが
グループ要素の検証を行う時、
URLリンク(www.okushin.co.jp)
ここを参考にaddGroupRuleで以下のように書いたのですが
これだとクライアントで検証を行ってくれません。
色々なところに「,"client"」などを色々挿入してみたのですが、どうもうまくいきません。
複合要素の配列を使った検証で、クライアント検証をさせるにはどのように書けばよいのでしょうか。

$form->addGroupRule("pay", array(
"money"=>array(
array("金額は必須入力です。","required"),
array("金額は数字のみで入力して下さい。","numeric")
)
));

502:nobodyさん
06/06/22 20:39:31 5nFH6Fdq
>>496

telnetとかつかえる?

方法はいろいろあるみたい。
URLリンク(www.go-pear.org)

さくらでは、普通にpear install  -o PAER でローカルコピーできた。
ほかのとこでは、
-bash-2.05b$ lynx -source URLリンク(pear.php.net) | php4
とかいう感じでいけそうだった。

503:nobodyさん
06/06/24 08:49:42
PEAR にもよるけど、
単純にファイルコピーで使えたりするしね。

504:nobodyさん
06/06/24 14:46:40
>>503
手動でコピー(展開)してパス通してたら使えないの有るの?
知ってるなら具体的に教えて。
なんかの参考になるかもしれんし

505:nobodyさん
06/06/24 17:53:54
>>504
単純に外部ライブラリに頼るものじゃね
GD前提のモジュール(あるか知らないけれど)とかがあるとして
シェル使えなくてGDがレン鯖にも入ってなくて、
サポートもされないならそれは使えない
もちろんそれはPEAR自体の問題ではないけどね

506:nobodyさん
06/06/25 02:29:16
pear installはできるのにpear list-allができん、今まで問題なかったのになんじゃこりゃ。
原因分かる方おしえてくだされ

XML error at line 1, check URL
Invalid return payload: enable debugging to examine incoming payload


507:nobodyさん
06/06/25 13:35:09
pear list-upgrades してみるとか。

508:nobodyさん
06/06/25 14:48:24
pear list -a
は出る?

509:nobodyさん
06/06/25 15:59:40
>>507,508
ありがとう、無事できました。
upgrade-allでupgradeできたと思ってたんだけど、list-upgradesしたらどれもアップグレードできてませんですた。
で、PEARとXML_RPCを個別で指定してアップグレードしたところchannelがなんたらかんたらと言われて、
それにしたがったところ動くようになりました。

510:nobodyさん
06/07/11 19:31:23
PEAR::DB
This package been superseded by MDB2 but is still maintained for bugs and security fixes

MDB2 使うぐらいだったら、PDO の方が良いような…。

511:nobodyさん
06/07/19 02:41:49 bvrYbrpe
Services_Amazon(ver0.5.0)使ってみたんですけど、
複数キーワードの場合どう指定すればいいのかわからんです。
おしえてえらいひと

ソースはこれまんま使わせてもらったです
URLリンク(dozo.rgr.jp)

512:nobodyさん
06/07/19 03:02:13
自分で拡張しないとダメでしょ。自力で弄れないならver1.0まで待てば?
漏れなら単発で引いて、自分でマージ。

513:nobodyさん
06/07/20 14:43:10 9HfxuTZk
PEARインストールし、PEAR::DBを試そうとしています。
マニュアルで見ると、なにごともDB.phpのインクルードから的な感じで
説明なくそうなってますけど自分の環境にはDB.phpがありません。(インストール失敗してる?)
エラーもその旨出ます("DB.phpが見つからない")

おききしたいのは、インストール時に「DB.php」というファイルが生成されるのか、
phpをインストールしたときのように、なにか別のファイルの名前を変更するなどして自分でつくるとか、
そのあたりどういった具合になるんでしょうか。
環境はWinXPのsp1、phpは5.1.4です。

514:nobodyさん
06/07/20 15:03:18
>>513
どうやってインストールして、どのようにインストールが成功したと判断したの?
pear listで表示される?

表示されるなら、PEARのフォルダがinclude pathに含まれていないんじゃないかな?

515:513
06/07/20 17:26:23
>>514
ありがとうございます。
pear listではパッケージの一覧が表示されますし(すべて"安定"との表示)、
include_pathも確認済みです。

インストールはコマンドプロンプトからURLリンク(go-pear.org)にアクセスしてインストールしました。
その際にそれぞれのパッケージに対してダウンロードok,インストールokというような表示が逐一出まして、最後まで進んで終了しました。

最後に以下の警告が表示されました。
ひとつはWindowsの環境変数のパスが違っていると言うもの→PHPのマニュアルに従ってパスをC:\php\extにしていたが、警告を受けてC:\phpに戻しました。
それとphp.iniのinclude_pathに対してのもの→PEARへのパスを追記。
他に、phpフォルダ直下のPEAR_ENV.regをWindowsのレジストリに追加しておくと便利、という表示に従い、
意味はわかりませんでしたが実行しました。

何度かやり直し、今も確認してたんですが、やはりDB.phpというファイルはなく、
スクリプトの実行エラーもDB.phpが見つからない、という内容のままです・・・

516:nobodyさん
06/07/20 17:55:03
>>515
一見問題なさそうだけど・・・。

インストールは普通コマンドプロンプトから
pear install パッケージ名
で良いですよ。
pear listで表示されるstableは安定版という意味で、β版やα版を
入れるときは pear config-set preferred_state beta なんてことをやってから
インストールします。予断ですが。

一度 pear uninstall DB でアンインストールして、再インストールして見てはどうでしょう?

それと確認ですがDB.phpは本当にどこにもありませんか?
HDDを検索してみてはいかがでしょう?


517:513
06/07/20 18:46:05
>>516
ありがとうございます!解決できました。
おしえていただいたアンインストールのコマンドを試してみたら
"インストールされてません"とのメッセージが・・・
その後pear install DBとしたところDB.phpも現われ、スクリプトも実行できました。
インストールされてればpear listでもちゃんと"DB"と表示されるんですね・・・
今まではPEARを使うための準備をしてただけなのに勘違いしてました・・・
PEARをインストールすれば主だったパッケージはインストールされてるものとばかり・・・(恥)
もう何日かごちゃごちゃやっていたので本当にたすかりましたm(_ _)m

518:nobodyさん
06/07/20 19:02:35
>>517
うーむなんだかw
ま解決して何より。

もうひとつ豆知識として、モジュールには依存関係がある場合が
あるんだけど、依存するモジュールもまとめてインストールするときには

pear install --alldeps モジュール名

という書き方もできる。
また、インストール済みのモジュールは、

pear upgrade-all

で最新版(がリリースされてれば)に更新できる。

この2つくらいは覚えとき。

519:513
06/07/20 22:11:04
>>518
たびたびすいませんー。そのコマンドが心に沁みまする^^
いろいろ学んでいきたいと思ってます。

520:nobodyさん
06/07/23 04:35:31 becjw5iF
横からすみません。
PEAR::Auth使ってるのですが、少し時間が空くとusernameが空になる現象に困っています。
$myAuth->username から $myAuth->getUsername()に変えても直りません。
お助けください><;;

521:nobodyさん
06/07/23 04:43:40
$myAuth->getAuth()はtrueが帰って来ています。
30分ぐらい(?)他っておくと(アイドルにしておくと)起こるようです。
PHP5で最近pear install Authしました。

522:520
06/07/23 04:56:36
訂正します。
時間が空かなくても、ページ移動するごとにログインしている状態(getAuthがtrue)なのにusernameが空になっているようです...

523:nobodyさん
06/07/24 17:55:27 WjQLi7Eq
HTML_Template_Flexy についての質問です。
自宅環境で正常に動作するスクリプトを作ったのですが、レン鯖にアップすると
コンパイルが正常に行われません。

具体的には、HTMLタグが全て"Array"という文字になり、本来PHPコードに変換されるはずの{variable}等が
全く変換されず、そのまま出力されてしまいます。
PEARやHTML_Template_Flexy の再インストールもやってみましたが、変化ありません。
念のため php.ini の mbstring 関連の設定も揃えてみましたが、こちらも変化ありませんでした。

このような場合、どのような原因が考えられますでしょうか?
チェックすべき項目などがありましたらご指摘お願いします。


524:nobodyさん
06/07/25 09:30:59
自宅環境とレン鯖環境ぐらい晒したら?
ちょっとチェック用のスクリプト作って動作チェックぐらいして無いの?

525:nobodyさん
06/08/02 03:18:27 aylqqE98
すみませんが教えてください。
PEARのDBを使って、DB側で設定されたシーケンス値を
インサート後に取得する方法ってありますでしょうか?

PEARのマニュアルの警告には、シーケンスはDBMS側を使わずに、
PEARの中で管理しろと書いてあるのですが、
やっぱりDB側のシーケンスは使ってはだめなんですかね・・・?


526:nobodyさん
06/08/02 10:38:05
>>525
INSERT 前に nextId() を使って、次のシーケンスを取得しておいて
それを INSERT して、その後参照する場面でもそのシーケンスを使いまわす。

527:nobodyさん
06/08/02 12:41:04
>>526
やっぱりその手しかないのですよね。
ありがとうございました。


528:nobodyさん
06/08/24 23:34:20 KkbLy53/
PEAR::DBに関しての質問なのですが、
$db->setFetchModeを「DB_FETCHMODE_ASSOC」に指定すると、
2つのテーブルで同じ名前の列がある場合、片方しかとれません。

たとえば、
create table t1 (id integer, data varchar(10));
create table t2 (id integer, data varchar(10));

とした時に、下のようなSELECTを実行します。

select t1.id, t1.data, t2.id, t2.data from t1, t2 where t1.id = t2.id

すると、かえってくる連想配列の内容をprint_rでみると
Array
(
[id] => 1
[data] => data1
)
こんな内容が帰ってきます。FETCHモードが、「DB_FETCHMODE_ASSOC」の場合、
指定した列すべて取れないのでしょうか・・・?期待していたのは下のような結果なのですが。
Array
(
[t1.id] => 1
[t1.data] => data1
[t2.id] => 1
[t2.data] => data2
)
ちなみに、PHPは4.3.11、PEAR::DBは1.7.6、DBはpostgreSQLでV8.xです。
ご存知の方、いらっしゃいましたら教えてください。よろしくお願いいたします。


529:nobodyさん
06/08/24 23:38:19
>>528
t1.data AS t1_data, t2.data AS t2_data,
みたいにエイリアスで別々の名前つけてやって取得すればいけると思う

530:nobodyさん
06/08/25 00:23:23
>>529
そのとおりでした。
ありがとうございました。


531:nobodyさん
06/09/09 15:30:02
他スレに質問しましたが、PEARの話題はスレ違いだったのでこちらで、質問させて頂きます。
えろいひとがいましたら、おしえてくれたりしてください。

php4.3 redhatES4 apache1.3 mysql4.1 です。
PEARのDB_DataObjectで「UPDATE」するときの質問です。
DB_DataObjectのインクルードや設定ファイル読み込みが終わったとしします。

numが1のデータを探して年齢を変更するといった場合は

$hoge=DB_DataObject::factory("hoges");
$hoge->get(num,1);
$hoge->age = 15;
$hoge->update();

でできるのですが、numが1で名前がyamadaのデータの年齢を変更するといった場合がうまくできません。

$hoge=DB_DataObject::factory("hoges");
$hoge->whereAdd('id = 1');
$hoge->whereAdd('name = yamada');
$hoge->age = 15;
$hoge->update();

PEARのドキュメントをみても、複数絞込みのUPDATEの例がなくてこまっています。
直接SQL query()をなげるしかないのでしょうか。

532:nobodyさん
06/09/09 16:08:57
>>531
DB_DataObject の update() は基本的にユニークキーを指定して行なうものだけど
そうでなく自前で WhereAdd() した条件で広範囲に update() する時には
引数に定数をつけて update(DB_DATAOBJECT_WHEREADD_ONLY) してやるとよろしい

533:531
06/09/09 18:22:55
どうもありがとです。
たったそれだけのことなのですね。
基本的に2つに一致する条件のものは1つのレコードだけなのですが
まぁこのやりかたで解決しました。

534:nobodyさん
06/09/09 19:19:05
解決おめ

蛇足だけど DB_DataObject は全体の傾向として
テーブルに必ず int ひとつだけのユニークキーがあるようにしてあると
扱いやすいようにできている気がする

開発工期を短く済ませるために DB_DataObject で扱いやすいテーブル設計をするとか
邪道っぽいけどとても効果的だったりw

535:nobodyさん
06/09/09 19:34:57 BE:340493748-2BP(200)
たしかに、設計としてはアレだけど全部のテーブルに"auto_id"みたいなauto_incrimentを作っとくと便利

536:nobodyさん
06/09/16 22:13:02
Requiring E_STRICT 通った
URLリンク(pear.php.net)
PEAR新世紀幕開けか

537:nobodyさん
06/09/17 02:30:59 BzsrnxFm
今度PEARを使うことになったんだけど、PHP5だと
動かないやつとかあるのかな?

いまいち知らんけど、PHP4時代に作られたライブラリ
だと、PHP5で非互換な部分のせいで動かなかったり
するんかな。

538:nobodyさん
06/09/17 16:20:16
そんな心配はPHP6になったらまた作り直すことに成るから心配しなくても良いよ。
PHP5時代の資産が未来永劫使える保証すらないから。

539:nobodyさん
06/09/26 16:24:45
というけど今のPEARってほとんどPHP4で作られたものじゃないのか?
PHP5で作られたものなんでMDB2みたいな不安定なものばかりだし

540:nobodyさん
06/09/26 17:00:15
MDB2はPHP4ベースだし不安定でもない

541:531
06/10/01 07:09:16 Ge/0d2rj
以前質問したものです。またDB_DataObjectでつまづいてます。

php4.3 redhatES4 apache1.3 mysql4.1 です。
PEARのDB_DataObjectで「UPDATE」するときの質問です。

numが1のデータを探して年齢を+1するといった場合は

$hoge=DB_DataObject::factory("hoges");
$hoge->get(num,1);
$hoge->age += 1;
$hoge->update();

でできるのですが、numが1で誕生日が1月のデータの年齢を+1するといった場合がうまくできません。

$hoge=DB_DataObject::factory("hoges");
$hoge->whereAdd('num = 1');
$hoge->whereAdd('birthday = 1');
$hoge->age += 1;
$hoge->update(DB_DATAOBJECT_WHEREADD_ONLY);

+= のように加えたりする系の処理はDB_DATAOBJECT_WHEREADD_ONLYだと無理なのでしょうか。


542:nobodyさん
06/10/01 09:25:45
テーブル設計ぐらい示せよ。何となく設計がタコだと思う。
SQL直書きならできそうだけどな。

543:531
06/10/01 11:29:45 Ge/0d2rj
すいません。実際はちがうのですが上述の質問は下記を想定しています。
MYSQL4.1です。

CREATE TABLE `hoges` (
`id` int(10) NOT NULL auto_increment,
`num` int(10) NOT NULL default '0',
`age` int(3) NOT NULL default '0',
 `birthday` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`id`)
) TYPE=MyISAM;

544:531
06/10/01 11:38:58 Ge/0d2rj
`birthday` int(3) NOT NULL default '0',

birthdayもとりあえずintegerで。

545:nobodyさん
06/10/01 11:54:05
>>531
$hoge->age = DB_DataObject_Cast::sql('age + 1');
ってことかな?

上記だと joinAdd() とかした時にハマる危険性がないでもないが通常は問題なかろ
$hoge->age = DB_DataObject_Cast::sql($hoge->tableName().'.age + 1');
とかだと冗長だけどさらに確実

とか書いてるけど試してないから実験は自分でやってみてね

546:nobodyさん
06/10/01 12:04:49
1レコード限定の更新じゃないUPDATEなら
SQL直書きにしといた方が、他の人が見たときに
ここは全体にかけるUPDATEなんだってわかりやすいと思うけどなあ
O/R mapperはSQL書かずにDB扱うためだけのもんじゃないのに

547:nobodyさん
06/10/02 09:06:19
そもそも「年齢」で管理しているのが良くないのでは?
普通は「生年月日」だね

548:nobodyさん
06/10/02 14:32:51
「生年月日」をDBに持っといて
「年齢」は取得するSQLだのプログラムだのでその時決定する
ってのがいいんでないかい
パフォーマンス要求厳しい場合は別だけど……

549:531
06/10/03 01:49:42
アドバイスありがとうございます。
num、age等はサンプルです。実際にやる場合は547氏のいうとおり
生年月日のほうがよいでしょう。

質問の意図としては
「複数行をアップデートする」
かつ
「+=といった数値を加える」
処理を上記方法でできないか?というかんじでした。

聞き方が悪くて申し訳ありません。
とりあえず試した方法でやってみます。
最悪SQL直で。

550:nobodyさん
06/10/03 17:48:51
うーん、例だと全然イメージ湧かないな。何をしたいの?

551:nobodyさん
06/10/03 22:37:28
pearのインストールに躓いたので質問させてください。

Xdebugをインストールしようと思い、
cmdから# pecl install Xdebug
を実行しました。

しかしエラーが表示され、
xdebugというフォルダが作成されるものの、
フォルダの中身は空っぽです。

設定を間違えているんでしょうか?


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4346日前に更新/213 KB
担当:undef