【PHP】PEAR Part2

このエントリーをはてなブックマークに追加
1nobodyさん
落ちてたんで立てとく

■PEAR
http://pear.php.net/

■前スレ
Pear
http://pc8.2ch.net/test/read.cgi/php/985665522/
2nobodyさん:2005/08/01(月) 21:43:13 ID:???
3nobodyさん:2005/08/01(月) 21:53:42 ID:???
>>1
お疲れ様でございます>>1
4nobodyさん:2005/08/02(火) 03:02:59 ID:???
>>1 乙。

関連リンク

2ch PEAR Wiki
http://pear.sakura.vg/index.php?FrontPage

って、最近誰も更新しなくなった?
そして、いまのFrontPageはSPAMerに荒らされてんの?
5nobodyさん:2005/08/07(日) 02:05:48 ID:???
HTML_QuickForm 3.2.5
http://pear.php.net/package/HTML_QuickForm/download/

10ヶ月振りのアップデート。
もうアップデートされないかと思ってた、、、
でもChangeLog一通り見たけど
あんまり目新しそうな追加やFixはないかも。。
6nobodyさん:2005/08/07(日) 09:58:15 ID:???
4.4.0 対応だけでも充分でございますw
あと #3865「ルール required は "0" だけ入れたフィールドを valid とみなすべき」の FIX は地味に嬉しい
7nobodyさん:2005/08/11(木) 13:32:46 ID:???
スレ違いと誤字の後で恥ずかしいのですが、質問があります。

配布スプリクトでPerl::Authを使うのでインストールしたら
Fatal error: Cannot redeclare class auth in /web/....../lib/pear/Auth/Auth.php on line ○○
というエラーが出ました。
過去ログとか読むと、authが二重宣言しているためにエラーが出ているところまで分かったのですが、
これの回避方法とかあるのでしょうか?

該当部分(auth)を別な名前に書き換えるのも、色々な場所で使われていて大変そうですし、
他の何と重複しているのか分からないのですが…。
8nobodyさん:2005/08/11(木) 14:08:00 ID:hshM5Tms
Perlだからじゃないかな
97:2005/08/11(木) 14:39:01 ID:???
あ。まだ誤字が…。Pear::Authです…。
10nobodyさん:2005/08/12(金) 16:11:50 ID:???
>>7
どれどれおじさんが見てあげよう・・・と思ったが、
Auth 1.2.3 入れたけど2重定義されてなさそうなんだけど?
11nobodyさん:2005/08/12(金) 17:01:20 ID:+KZUiI46
HTML_QuickFormって、
入力確認画面(freeeze時)に自動でタグをエスケープしてしまうのですが、
HTMLタグを許可することって出来ないのでしょうか?
12nobodyさん:2005/08/12(金) 17:51:12 ID:???
>>11
通常は無理
自作のelementでgetFrozenHtml()をオーバーライドしたらいいんじゃない?
1311:2005/08/12(金) 18:34:03 ID:???
>>12
ありがとん、やっぱ無理なのね

レンダラーにSmartyを使ってたので、強引に置換えて解決してみました。

{$form.hoge.html|replace:'<':'<'|replace:'>':'>'|replace:'&':'&'|replace:'"e;':'"'}

動作遅そう・・・
1411:2005/08/12(金) 18:35:54 ID:???
>>13
うほ、エンティティ直書きだから意味わかんないね

置換え前の文字はそれぞれ次のとおりです

< => &lt;
> => &gt;
& => &amp;
15nobodyさん:2005/08/16(火) 00:05:52 ID:???
HTML_Ajaxなんてのが出てる
16nobodyさん:2005/08/16(火) 00:09:01 ID:???
>>15
漏れもちょっと気になったんだけど、ソース流し読みしてめんどくさくなって放置してた
試してみたなら感想plz
17nobodyさん:2005/08/16(火) 19:13:56 ID:???
PEAR AJAXはどうよ!?
18nobodyさん:2005/08/16(火) 23:24:12 ID:???
>>17
使ってみた。
ちょっとした事なら楽できそうだよ。

てか、自分で試してみなよw
19nobodyさん:2005/08/18(木) 17:34:12 ID:???
Net_UserAgent_Mobile 0.25.0 up
20nobodyさん:2005/08/20(土) 11:00:17 ID:???
>>19
いつもお知らせありがとう。助かってます。
ひょっとして中の人かな?
21nobodyさん:2005/08/20(土) 11:05:02 ID:???
FreeBSDユーザにお尋ねします。
PortsのPearと純粋Pear、どっち使ってますか?
22nobodyさん:2005/08/20(土) 13:22:17 ID:???


純正 pear コマンドでインストールしてま
23 ◆AngelH/kMI :2005/08/20(土) 14:34:41 ID:???
>21
pearコマンド。redhat系でもだけど、pearはpearコマンドに任せてしまった方が楽な気がするです。
24nobodyさん:2005/08/25(木) 20:10:04 ID:???
こんにちは

pearモジュールで「値に改行コードを含む」CSVを扱うモジュールとかありますか?
あれば教えてください。

もし、pearでなくてもPHPで上記を扱えればいいので、良い方法があれば教えてください。
25nobodyさん:2005/08/25(木) 20:32:45 ID:???
fgetcsv
26nobodyさん:2005/08/25(木) 22:18:08 ID:???
File_CSV は今はマルチラインに対応していたようなー

File にバンドルのね
27nobodyさん:2005/08/26(金) 02:16:29 ID:???
File 1.2.1 や File_Find 1.0.0 を pear install/upgrade しようとすると
XML error: Undeclared entity warning at line xxx (xxx: package.xmlの最終行)
ってエラー出ません?
package.xmlを見てみたけど、特に問題があるようにも思えないし...

環境は Mac OS X 10.4/PHP 5.0.4, Mac OS X 10.4/PHP 4.4.0, FreeBSD 5.4/PHP 5.0.4 です。
28nobodyさん:2005/08/27(土) 00:22:58 ID:???
csvってフォーマットとして糞だよね?タブ区切りにしろよ。
29nobodyさん:2005/08/27(土) 02:22:26 ID:???
特定文字を区切りにして複数のテキストを構造的に格納する,って点で,
CSV と TSV(タブ区切り) がどれくらい違うのかさっぱり理解できない
カンマとタブの出現頻度だけの違いに思えるし,
それはデータの問題であってフォーマットが糞とかって話じゃないっしょ.

ただの独り言じゃないならその理由を聞かせてほしいもんだ.
30nobodyさん:2005/08/29(月) 15:27:18 ID:???
csvもtsvもクソだよね。RDBMSにしろよ。
31nobodyさん:2005/08/29(月) 21:21:20 ID:???
RDBMSクソだよね。XMLにしろよ。

→ 教訓: 臨機応変 適材適所


ぜんぜん PEAR と関係ないなw
32nobodyさん:2005/08/29(月) 21:47:54 ID:???
XMLクソだよね。OODBにしろよ。
33nobodyさん:2005/08/29(月) 22:43:00 ID:???
OODBクソだよね。CSVにしろよ。
34nobodyさん:2005/08/29(月) 22:44:55 ID:???
CSVクソだ。
せめてTSV。
35nobodyさん:2005/08/30(火) 15:32:06 ID:???
1ループしたところで次の議題に移ります
36nobodyさん:2005/08/30(火) 16:16:12 ID:???
PEARクソだよね。PECLにしろよ。
37nobodyさん:2005/09/06(火) 03:33:29 ID:???
CSVは、フィールド内にカンマあるときの処理をどうするかで悩まないといけない。
自分だけで使うならいいが、他のアプリで使う時に互換性で問題が出る。
バックスラッシュでエスケープするか、2個並べるか。
こんな単純なフォーマットなのに、統一できてない。だから、うんこ。
38nobodyさん:2005/09/06(火) 17:38:01 ID:???
>>37
あなたはTSVを扱うときフィールド内にタブがある時の処理で全く悩まないんですね・・・
39nobodyさん:2005/09/06(火) 19:00:40 ID:???
悩まないよ。
40nobodyさん:2005/09/07(水) 00:02:32 ID:???
>>37
Excel の CSV 形式("で囲う&"単体は "" にする方式)がデファクト標準じゃないかのー?

\ でエスケープした CSV なんて作って客に渡したら
たちどころに「エクセルで読めないんですけど?」とか言われるしなー……
まぁそういう客には最近は HTML ファイルに .xls って名前付けて渡すことにしてるけどねー
41nobodyさん:2005/09/07(水) 22:33:18 ID:???
Amazon.co.jp: 本: PEAR入門 PHP標準ライブラリを極める!
http://www.amazon.co.jp/exec/obidos/ASIN/4798109592/

レビューきぼんぬ
42nobodyさん:2005/09/08(木) 15:08:32 ID:???
>>41
近日発売 予約可 らしい
もし中の人いたら詳細きぼんぬ
43nobodyさん:2005/09/08(木) 17:52:20 ID:???
pearの本か……こんなの売れるのか?
44nobodyさん:2005/09/08(木) 22:26:09 ID:???
本が手に入ったころには、仕様が変わってる。
45nobodyさん:2005/09/09(金) 13:31:21 ID:???
46nobodyさん:2005/09/09(金) 13:36:50 ID:???
PEAR本体をインストールせずに、必要なパッケージだけ手動でインストールすることってできるんでしょうか?
47nobodyさん:2005/09/09(金) 13:49:03 ID:???
>>46
自分のディレクトリにコピーするだけで使える
48nobodyさん:2005/09/09(金) 13:52:47 ID:???
マニュアルの日本語化+αって感じなんだろうね、書籍。
9月8日、昨日の発売だ。誰かレポしてYO
49nobodyさん:2005/09/21(水) 23:46:56 ID:???
>>38
WEBで扱う分には、タブそのものを必要とすることは滅多にないからね。
そもそもHTMLフォームじゃタブを入力しようと思っても、普通には出来ない。
50nobodyさん:2005/09/23(金) 12:18:59 ID:???
>>49
普通にできなくても,できる可能性がある以上は,
コード側では対応しとかないといけませんよ?

もちろん「対応しない」という仕様にして納得してもらうのが安上がりでいいけどさw
51nobodyさん:2005/09/24(土) 23:32:10 ID:???
スペース1個に置き換えるだけで十分な場合がほとんどじゃん。
XMLは遅いし、めんどくさいし、DBはメンテに手間がかかるし、タブ区切りが一番手軽でしょ。
PHPの場合は、SQLiteも普及するかもしれないけど。
52nobodyさん:2005/09/26(月) 22:12:34 ID:???
PEAR本買ったぞ。結構有用な感じ。
思ったよりHTML_QUICK_FORMにページ割いてるので嬉しい
あとなんか紙質が安っぽいwwww

購入を迷っていてなんか質問ある人は答えるよ
53nobodyさん:2005/09/26(月) 22:52:44 ID:???
結婚はしてますか?
54nobodyさん:2005/09/26(月) 22:55:57 ID:???
これからPEARをやってみたいんだけど〜って人にも勧められる内容なのかな?
前提条件として、「このくらいは知っておかないと」というのがあれば、それもお願い。

せっかくだからage
55nobodyさん:2005/09/26(月) 23:07:00 ID:???
PEAR本なんか必要ないんじゃないの?
56nobodyさん:2005/09/26(月) 23:20:08 ID:???
自分は52とは違うけど

>>54
むしろこれからPEAR触ってみようかな、って人にいいんじゃないかな
ざっと見たら手広く紹介してあるみたいだったよ

>>55
PEPrまで毎日チェックしてるぜ!な人にはもちろんいらんと思う
57nobodyさん:2005/09/26(月) 23:42:11 ID:???
>>53
してません。ちなみに当方28才女自営業です。

>>54
PEAR『入門』ですから、PEARの導入方法から使用法まで割と親切に書いてあります。
ただしPHP初心者には難しいと思います。

>>55
まあ今まで無くてもみんなやってこれたので、必要ないと言えば無いのですが・・・
でもPEAR公式マニュアルって翻訳が追いついていなくて、半分英語・半分日本語だったりするじゃないですか。
HTML_QUICK_FORMなんかはマニュアルだけで使いこなすのは絶対に無理だと思いますし。
58nobodyさん:2005/09/27(火) 00:17:59 ID:???
絶対に無理ってことはないな。
5953:2005/09/27(火) 00:38:02 ID:???
>57
それでは購入することにします。
当方も28才男自営業ですので、よろしくお願いします。
60nobodyさん:2005/09/27(火) 16:49:44 ID:???
今の2ch PEAR Wikiって>>4でいいんだっけ?
最近色々触ってみてるからちょっと情報上げていこうかと思うんだけど、
FrontPageとか勝手にいじっちゃっていいもんなのかな
61nobodyさん:2005/09/27(火) 20:12:02 ID:???
いいんじゃないか?
62nobodyさん:2005/09/27(火) 21:51:56 ID:???0
>>59
何気にプロポーズすんな。

前に一部の上位エロの方々が脱HTML_QuickFormと
言ってるのをどこかで読んだが、使わない方向で頑張った方が
良いのだろうか?
今使ってて便利だと思ってるのはhierselectが便利って事くらいかなぁ・・・。
63nobodyさん:2005/09/27(火) 23:30:15 ID:???
俺も正直このまま案件でQF使いつづけるべきか悩んでる
ちょっと小回りが利かしづらい部分がある
生成した時点でリクエストとマッピングされてるのも
便利っちゃ便利なんだがさせたくない時とかもある

最初はラジオボタンとチェックボックスで悩み
デフォではfileエレメントがサポートしてないのに悩み
レンダラで悩み色々試行錯誤してようやく使い物になる

かと言って代行になるようなライブラリもないし
あったとしてもチーム全体がそれになじむまでには
QFの使い方に慣れるまでと同等のコストがかかりそう
QFは全体像を掴むまでが大変

QFくらいの機能を備えててもうちょっとシンプルな
フォームに特化したライブラリがあればいいんだけど
エロい人らはやっぱ自作してるんでしょか
64nobodyさん:2005/09/28(水) 01:25:58 ID:???
上位のひとが脱だーって言ったからって,
それを超えるものを提供した上で言ってるわけじゃないからなー.

むしろ共存のために Maple 用の Filter_HQF とかを作った方がいい気がしてるので,
いまその辺をいじくり中.
重複しない機能をうまく使えば,これで充分になるんじゃないかと……
65nobodyさん:2005/09/28(水) 01:42:23 ID:???
ヒント: Flexy
66nobodyさん:2005/09/28(水) 01:45:10 ID:???
>>61
じゃ暇があったらなんか書いてみるよ

>>63
HTML_Formはシンプルすぎるか

以前QFのエレメントの設定を設定ファイルに書くハンドラを作ったことがあるな
まぁ設定ファイルをXMLにしたもんで、HTMLを書かなくて済むQFを生成するために
XMLを書くという堂々巡りになってしまったわけだが
67nobodyさん:2005/09/28(水) 20:39:25 ID:???
結局、記述量や習得するまでの時間を考えると使うメリットが無いって事でしょ。
Validaterは各フレームワークのものを使用すると。
俺はQF使う派だけど、確かにQFだと悩みながら書くこと多いから、
普通にHTML&Javascriptで書くのに比べてかなりの多くの時間を費やす事がよくある。
68nobodyさん:2005/09/28(水) 21:00:34 ID:???
でも JS の自動生成や advmultiselect みたいな拡張機能は他にはない魅力……
なので何とか共存の方向を考えたいところだ
69nobodyさん:2005/09/28(水) 22:53:17 ID:???
便乗で質問だけど、DBまわりは何使ってる?
MDBとか使ってたけど、意味あるのかなぁ・・・と思って
最近は思い切ってPDO使うか、もしくはネイティブ関数使ってる。
たまに
「mysql_query()なんてのをコードの中にたくさん書いてたら、
あとで困るんじゃないの?」
って意見を見かけるけど、困らないね。
コネクトとかquery発行する箇所はクラスに纏めてるから一ヶ所だし。
それにだいたいSQL文からして方言の差があるのに、
そんなとこ気にしても無意味じゃないかなと思うんだけど、どうだろう。
DBプロジェクトに対してDBを変更することってかなり稀だと思うし。
70nobodyさん:2005/09/28(水) 23:15:25 ID:???
ADODB
だけどそろそろ移行の時期だと思ってる。
7169:2005/09/28(水) 23:28:51 ID:???
ADODBも使ってたけど、更新が頻繁にあるものが多いので、
目玉の(?)cache機能が殆ど使えないから止めた。
72nobodyさん:2005/09/28(水) 23:40:59 ID:???
DB_DataObject
遅いっちゃ遅いんだが、便利で手放せない
PDO+DBDOが使えるようになるのはいつのことやら・・・
7370:2005/09/29(木) 00:11:09 ID:???
>71
ADODBの最強な点はダイナミックリンク可能な点だと思ってるから無問題
DBの速度にはまだこまってないからやってないけどね

>72
俺もPECLのDBDO待ち
74nobodyさん:2005/09/29(木) 01:02:34 ID:???
おれも DBDO が使えるようになるまでは DB_DataObject で粘ろうと思ってる
そこまでパフォーマンスに厳しい仕事をしてないってのもあるが……
75nobodyさん:2005/09/29(木) 07:44:25 ID:???
PEAR DBは重すぎて糞
PDOマンセー
76nobodyさん:2005/09/29(木) 19:28:05 ID:???
>>74
やめとけ。updateがDB_DATAOBJECT_WHEREADD_ONLYでしか動かないぞ。
最新バージョンは挙動がかなりおかしい。
PHP5+Propelにしとけ
77nobodyさん:2005/09/29(木) 19:32:15 ID:???
>>13
いまさらだけど、Smarty使ってるならプラグインにまとめようぜ、そういう処理は。
78nobodyさん:2005/09/29(木) 21:41:23 ID:???
>>76
Propelって初めて聞いた。
検索かけても殆ど情報得られないなぁ。

>>73
DBDOって現状じゃ全然使えない?
更新が4月から止まってるけど。

今やらなきゃいけないものを何でやったらいいのやら・・・。
今ならPDO単体でやるのがいいのかなぁ。
79nobodyさん:2005/09/30(金) 04:40:45 ID:???
>>78
配布先に使い方全部書いてあるし。
てかpropelしらかったて…
80nobodyさん:2005/09/30(金) 18:37:09 ID:???
>>79
使い方じゃなくて、使えるレベルにあるかって事だろ。
自分で調べれ。

propel知らないのも別に不思議じゃなくね?
そんな有名じゃないだろ。日本で。
81nobodyさん:2005/10/01(土) 17:31:35 ID:+fvd5pTY
質問です。
PEAR::DBを勉強中なのですが、PHP関数で言うmysql_insert_id()と同じことをやる場合には
どうしたら良いのでしょうか?
pearマニュアルを何度も読んだのですが、該当する部分が見つからないです。。。
どなたかお助けください。よろしくお願いします。
82nobodyさん:2005/10/01(土) 18:47:26 ID:???
mysql相手だと、
http://pear.php.net/manual/ja/package.database.db.db-common.nextid.php
これは使えないのかな?

使えないのなら、
$db->getOne("SELECT LAST_INSERT_ID()");
83nobodyさん:2005/10/14(金) 17:10:01 ID:TRgLsoyz
PEAR::Authをインストールするためコマンドプロンプトから

cd c:\php
pear config-set http_proxy http://(プロキシサーバ):8080
pear install Auth

と打っても

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

とエラーが出ます。ググっても解決策がよくわかりません。ご教授お願いします。
(プロキシサーバ)のとこには自分のプロキシサーバ・アドレスを入れています。
84nobodyさん:2005/10/15(土) 00:48:58 ID:???
>>83
氏ねや。
85nobodyさん:2005/10/15(土) 01:03:49 ID:???
なんで?
86nobodyさん:2005/10/16(日) 03:51:20 ID:???
>>69
自分の今いる現場では、PEARはほとんど使ってないね。
携帯向けサイトの仕事なんだけど、TV局のサイトなので告知とかあると
アクセスが集中してWebサーバとDBサーバの両方に負荷がかかる。
ハードの強化は予算的にどうしようもないので、プログラム側で工夫することになるんだけど、
1リクエストに対するレスポンスを上げるため、できるだけ処理速度を上げるように言われてる。
そのためDBアクセスでは、PEAR::DBは使わずに、ネイティブ関数をラップした共通関数orクラスを使ってる。

>「mysql_query()なんてのをコードの中にたくさん書いてたら、
>あとで困るんじゃないの?」
>って意見を見かけるけど、困らないね。

確かに全然困らないね。
DBアクセスは一箇所にまとめるんだから。

>それにだいたいSQL文からして方言の差があるのに、
>そんなとこ気にしても無意味じゃないかなと思うんだけど、どうだろう。

SQLを改善するほうがPHPのソースをいじくるよりレスポンスの改善効果は高いし。
そのためには、SQLの方言はどんどん使うべきだと思う。

>DBプロジェクトに対してDBを変更することってかなり稀だと思うし。
そうだね。自分の場合は、ずっと運営してきたサイトで何百ものソースが動いているのに
DBMSを変更するような事はまずないと思う。
DBMSが変更になったら、例え少ない変更でもほぼすべてのソースのテストを行わないといけない。
客にとってはDMBSはなんでもよくて、サイトがちゃんと動いてればいいわけだから、
そんな変更はあり得ないし、そんな予算ないと思う。

自分の場合は、こんな感じだけど、もちろんまったく違う状況の人もいると思うので
参考にならないかもしれないけど、とりあえず1例としてあげてみた。
87nobodyさん:2005/10/16(日) 03:57:55 ID:???
まあそういう理解が前提じゃないの?
Martin Fowlerがまとめのがよく言及されてるけど
88nobodyさん:2005/10/16(日) 03:58:50 ID:???
それよかコンポーネントがちゃんと出来てるかどうかのほうが重要かもと思う
8986:2005/10/16(日) 04:29:55 ID:???
>>87
Martin Flowlerは知らなかったので、ググってみた。
この記事のことかな?
まだ、読み始めたばかりだけど参考になりそうだ。
ttp://capsctrl.que.jp/kdmsnr/wiki/bliki/?DomainLogicAndSQL
90nobodyさん:2005/10/16(日) 05:16:19 ID:???
おれもSQL好きだなあ。
ストアドとかで一発処理できると結構快感がД`)
sql92だけでもそこそこやれるよね。
91nobodyさん:2005/10/16(日) 08:23:31 ID:???
>86
adodb使ったら?
92nobodyさん:2005/10/16(日) 08:35:47 ID:???
Pear::DB使わないで得られる負荷低下なんてすずめの涙ほどもないよ
93nobodyさん:2005/10/16(日) 16:06:05 ID:???
条件によるのだろうけど
うちが手がけた案件で両方実装してテストした結果
かなりの差がでたのでpearを使わなかったものもある。
94nobodyさん:2005/10/16(日) 17:13:51 ID:???
PEAR::DBっぽいインタフェースを備えた
ネイティブ関数のラッパークラスでいいんじゃないの?
直接 mysql_*() を書くのは抵抗がある.
95nobodyさん:2005/10/17(月) 00:11:32 ID:???
>>86
レスポンスを上げたいなら、そんな事より先にCache_Liteを検討すべきでは?
キャッシュをメモリに置けばお手軽に負荷テストの結果を一桁あげられるよ。

SQLの最適化もいいけど、SQL問い合わせをいかに減らすかの方が
アプリケーション全体のレスポンス向上への貢献度がはるかに高いと思うな。
だから生SQLはできるだけ書かずにPEARならDB_DataObjectにおまかせで済ます派。

まぁ、キャッシュの使えない局面もけっこうあるけどね...
96nobodyさん:2005/10/17(月) 00:20:16 ID:???
PEAR::DBでOCI8使ったら一部のSQLでフィールドがずれたり文字が化けたから
OCI8関係は自分でPEAR::DBっぽいクラス作ったな…
97nobodyさん:2005/10/17(月) 01:20:58 ID:???
>>92
ん?
結構違うと思うぞ。やってみ。
98nobodyさん:2005/10/17(月) 02:05:06 ID:???
そこで組み込みの SQLiteDatabase クラスですよ。
mysqli クラスは使ったことないけどプロパティ・メソッドの一覧を見る限り
「MySQLでできること全部詰め込んでみました」な感じが良いような嫌なような。

本命は PDO だけど現状では PDO_SQLITE/PDO_SQLITE2 で予期せぬテーブルロックが発生することがあって使えない。
PDO_PGSQL はいい感じ。
MDB2 はドキュメントにもあるとおり API 変更が当たり前のようにあるのでメインに使うのは怖い。
99nobodyさん:2005/10/17(月) 07:11:47 ID:QlBs94zi
前にベンチとった。
10万件から、単にセレクトしてテーブルで表示するだけのもの。

ネイティブ関数を1とすると、
PEAR::DBを使用した場合、2倍。
DB::DataObjectを使用した場合3倍くらい時間がかかった。
adodbは1,8から1,9くらい。
(とりあえず、PEAR::DBよりは遅くなることはなかった)
ネイティブ関数のラッパークラス(自作)だと、1,2から、1.4くらい。

速度にシビアなとこは、やっぱネイティブ関数使うんじゃない?

ちなみに同じ環境でmod_perlだと、0,7以下。(Apache::Registryのみ)

あ、スペルいい加減。
100nobodyさん:2005/10/17(月) 07:20:43 ID:???
なんだこれ?
101nobodyさん:2005/10/17(月) 18:15:47 ID:???
>>99
ADODBの本領はダイナミックリンクだってば。
102nobodyさん:2005/10/17(月) 18:55:19 ID:???
>>101
>ダイナミックリンク

DLL?
ADOdbext?
103nobodyさん:2005/10/17(月) 19:04:05 ID:???
ADOdb extension。
104nobodyさん:2005/10/17(月) 20:59:35 ID:???
>>103
俺の環境では使えなかったので却下。
105nobodyさん:2005/10/17(月) 21:33:46 ID:???
>>104
環境plz
基本的にはphp.iniかextensions.iniで直接呼んでください
106nobodyさん:2005/10/17(月) 22:01:28 ID:???
>>105
FreeBSDのバージョンいくつか忘れたけど、使えなかったと記憶してる。
107nobodyさん:2005/10/17(月) 23:12:27 ID:???
>>107
そんな無茶な。
mod_perlって言いたいだけちゃうんかと。
108nobodyさん:2005/10/17(月) 23:13:20 ID:???
×107
○106
109nobodyさん:2005/10/23(日) 00:40:25 ID:p3DWBPtp
PEAR入門 PHP標準ライブラリを極める!
http://www.amazon.co.jp/exec/obidos/ASIN/4798109592/qid%3D1129995283/249-9551878-6230755

ってどうなの?
110nobodyさん:2005/10/23(日) 01:12:54 ID:???
>>109
PHP関連書籍のスレがあるからそこで聞こう
111nobodyさん:2005/10/23(日) 01:57:27 ID:p3DWBPtp
>>110
そうなんですか。
失礼しました。
112nobodyさん:2005/10/23(日) 16:24:41 ID:Bt6ZIoqC
>>110
いやPEAR本だし、さすがにここでもいいんじゃないの?

>>109
上の方で話題にあがってるよ
113nobodyさん:2005/10/23(日) 16:46:59 ID:I/RMFvXv
PEAR::Cache っておなくなりになったんですかい?
114nobodyさん:2005/10/23(日) 16:51:27 ID:???
>>113
え? 生きてますけど?
115nobodyさん:2005/10/23(日) 17:07:13 ID:???
>>114
お・・ありました。マニュアルの方を見ててなかったので、
なくなったのかと勘違いしてしまいました。失礼。
116nobodyさん:2005/10/26(水) 01:17:05 ID:???
>>99
phpaとかアクセラレーター使ってみての比較?
117nobodyさん:2005/10/27(木) 00:45:47 ID:???
>>116
使ってないでしょ。
前提条件が適当で曖昧すぎる。その曖昧なままのベンチってのは99もわかってるとは思う。
118nobodyさん:2005/10/28(金) 10:25:19 ID:???
Pear の Ajax ライブラリのサンプルプログラムを載せてるWebページ無いでしょうか?
119nobodyさん:2005/10/28(金) 10:31:07 ID:???
120nobodyさん:2005/10/28(金) 17:00:35 ID:???
HTML_Template_Flexy と Translation2 を組み合わせて
多言語対応 Web アプリを作りたいのだが,
情報源がまったくといっていいほど見つからない・・。
ぐぐってもリリース情報しか出てこない。日本語だけじゃなくて世界で。
だれも使ってないの??? あぁ 困ったorz

どなたか有用な情報もっていらっしゃいませんか?
121nobodyさん:2005/10/28(金) 17:40:03 ID:???
>>120
コード読むしかないね
122120:2005/10/29(土) 11:43:30 ID:???
>>121
やっぱり (´д`)
123nobodyさん:2005/10/29(土) 13:33:02 ID:???
PEARってこういうの多いよね。
英語で良いから最低限のマニュアルくらい作ってから公開してくれんかのう。
javadoc形式のでも良いけど分かるように書いてくれー。
個人で使うのにはかまわんが、仕事で他人に勧めることができん。
124nobodyさん:2005/10/29(土) 19:50:51 ID:???
>>123
日本人が作ったライブラリでも、英語だけで日本語のマヌアル用意してない場合も多いよね。。。。
125nobodyさん:2005/10/29(土) 21:23:02 ID:???
>>124
それでもマヌアル無いよりは100倍ましだけどね。
126nobodyさん:2005/10/31(月) 12:50:48 ID:???
まあそう思った人が解析してマニュアル書き起こす(せめて自分のHP上でまとめる)しかないんだろうなぁ
がんばろうぜ、みんな
127nobodyさん:2005/10/31(月) 13:32:47 ID:KLBqKPJE
SimpleTestで質問です。
WebTestCaseクラスでラジオボタンをチェックできないのでしょうか?

<input type="radio" name="rdoTest" value="test" checked/>Test



$this->assertField('rdoTest', 'test');

とすると、

Fail Field [rdoTest] should match with
[Field expectation [String: test] fails with [Boolean: false] at character 0 with [test] and []] at line [18]

となってしまいます。
よろしくお願いします。
128nobodyさん:2005/10/31(月) 14:09:23 ID:???
あ、こちらこそよろしく
129nobodyさん:2005/10/31(月) 17:19:32 ID:???
どうぞおさきに
130nobodyさん:2005/10/31(月) 22:05:58 ID:???
>>127
>$this->assertField('rdoTest', 'test');

$this->assertField( 'rdoTest', array( 'test' ) );
とかは?

あと、
> checked/>
半角スペースなくてもOKだっけ?
checked />
スペース入れるのって、後方互換のためだけだっけ?

間違ってたらスマソ
131nobodyさん:2005/10/31(月) 22:37:02 ID:???
>後方互換のためだけだっけ?
そう。本来はスペースなしが正しかったはずだけど
checkedは古い書き方だな・・・
132127:2005/10/31(月) 22:41:51 ID:???
>130
ご指摘の通りでした。
checked/> の半角スペースがないのが原因でした。
それと、array()の件もラジオボタンが複数あればその通りです。

ありがとうございました。
133127:2005/10/31(月) 22:45:43 ID:???
>131
レスどうもです。
checked は古い書き方なんですか?
134127:2005/10/31(月) 22:48:48 ID:???
checked="checked"
と、いうことですね。
135nobodyさん:2005/10/31(月) 22:49:29 ID:???
checked="checked" だったっけ? 正しくは.
136nobodyさん:2005/10/31(月) 22:50:03 ID:???
>>133
スレ違いネタだけど、
XHTMLなら checked="checked" だな。
137nobodyさん:2005/10/31(月) 23:19:57 ID:???
127の人気に嫉(ry
138nobodyさん:2005/11/01(火) 20:27:34 ID:???
質問したい事があったのですが、今スルーされると悲しいので
出来ません・・・。>>127ウラヤマシス
139nobodyさん:2005/11/03(木) 02:43:53 ID:???
*** すべてのPHPユーザーに告ぐ ***

http://www.hardened-php.net/advisory_202005.79.html
http://www.hardened-php.net/globals-problem
http://blog.ohgaki.net/index.php/yohgaki/2005/11/02/phpa_rc_fei_a_oa_oa_fa_sa_le_acsa_oe_afp

PHPに深刻な脆弱性がある事が発表されました。今まで見つかったPHPの脆弱性の中でも「最悪」の脆弱性です。全てのPHPユーザは今すぐ対処を行う必要があります。
140nobodyさん:2005/11/03(木) 15:21:46 ID:gVE/R27X
141nobodyさん:2005/11/03(木) 16:24:45 ID:???
>>140
P ペニス
H ヒップ
P ペニス
だってw
一般人には「PHP?ナニソレ?」って感じなんだなーとオモタ
142nobodyさん:2005/11/04(金) 15:44:02 ID:???
PHP出版とどっちが有名なのかなw
143nobodyさん:2005/11/04(金) 21:56:11 ID:???
!【緊急】開発言語PHPに“最悪”のセキュリティ・ホール,全ユーザーは今すぐ対処を
http://news19.2ch.net/test/read.cgi/newsplus/1130985853/
144nobodyさん:2005/11/05(土) 06:15:23 ID:???
>>140
なんでニュー速に誘導なんだよ。何のための板だ糞ガキ。
145nobodyさん:2005/11/05(土) 09:03:45 ID:???
>>140
人口が多いためか早いうちから良い情報が書き込まれていたためです。
それにひきかえWebProg住人はスルーでした。
(プログラマは多いけど、サーバ管理者やセキュリティに関心のある人は少ないのかもしれん)

DAT落ちも早いだろうから、落ちたらPHPスレに情報をまとめて貼るよ。
まあ一般のニュースサイトにも載るくらいの緊急事態だったもので勘弁してくれ。
146nobodyさん:2005/11/05(土) 09:25:04 ID:???
>>145
まぁ、なんだ。そのadvisoryをちゃんと自分で読んでみ。
JOYりすぎなのが自覚できると思うよ。
147nobodyさん:2005/11/05(土) 09:37:49 ID:???
>>145
11月2日(ニュースサイトに載るより前)に脆弱性に関する正確な情報が PHP-users ML に投稿されてるわけで・・
それ読めばニュー速+なんて読む必要は全くないんです.
WebProgよりも自宅サーバ板とかレン鯖板の人たちに伝えるべきでは?
148nobodyさん:2005/11/05(土) 10:24:52 ID:???
>>146
いやいや、業務で負の資産を使っていて、register_globalsをoffにできない人も多いのよ実際
あと、このセキュリティホールそのものより、4.4.*の不具合問題の方が話題の中心になったりしてる

>>147
うん、PHP-users MLもリアルタイムで見てた
過去ログ見ればわかるけど、正確な情報は流れていないんです。
11/2の時点では情報が錯綜していて、yohagi's blogに正確な続報が出されたのが11/3。
php.gr.jpに公式アナウンスが載ったのが、更にその後(おそらく11/4)。

>WebProgよりも自宅サーバ板とかレン鯖板の人たちに伝えるべきでは?
こちらにはまあ同意だけど、じゃあWebProgの人には関係ない問題かというと、そうではないでしょ?

※PEARスレなのにスレ違いスマン
149nobodyさん:2005/11/05(土) 13:48:54 ID:???
関係なくはないがPHP関連のスレ全部にマルチするのは勘弁
150nobodyさん:2005/11/05(土) 14:14:24 ID:???
>>149
だよな。興味ある奴は自分から情報とりにいくだろうし。
151nobodyさん:2005/11/05(土) 14:19:48 ID:???
まあ、>>139, >>143みたいのをマルチしたの俺じゃないしな
それがウザイから誘導したつもりだったんだが、、、
こういう場合はどうするのが良かったんだ?放置か?

でもそうするとこのスレ内で「この問題って結局何なんですか?」みたいな議論が始まっちゃうでしょ?
152nobodyさん:2005/11/05(土) 14:21:45 ID:???
いいんじゃないの。俺もこのコピペで知ったわけだし。
153nobodyさん:2005/11/05(土) 14:29:52 ID:tf0gwVLz
>>152
お前はもう少し危機管理を行うべき
154nobodyさん:2005/11/05(土) 14:59:06 ID:???
>>151
それなりの考えがあってやったんだろうし、俺的には別に構わんよ。
ただ、マルチを煙たがる香具師も多いだろうから、そこも配慮した方がいいかもしれないね。
155nobodyさん:2005/11/05(土) 15:12:39 ID:???
とりあえず、WebProg板では、まともなレスはなかったよね。

>>145の↓
(カスは多いけど、サーバ管理者やセキュリティに関心のある人は少ないのかもしれん)
156nobodyさん:2005/11/05(土) 15:14:51 ID:???
喧嘩はよくないと思います!
157nobodyさん:2005/11/05(土) 15:19:44 ID:???
>>155
既知の情報をコピペではりまくられたら無視するだろ。
わざわざこことかで議論しなくてもuser-MLとか本家とかみればそれなりの情報があるわけだし。
例えコピペで知ったとしてもそれらを見に行けば済む話だしね。
バグについてここでどうこう言うのもすれ違いだし。

そういうことに気がつけと。
158nobodyさん:2005/11/05(土) 15:31:40 ID:???
あちらこちらに貼ってあるし、URLがニュー速だったから
また誤誘導かと思ってスルーした
最初から日経に貼ってあれば見に行ったと思うけど
159nobodyさん:2005/11/05(土) 21:20:21 ID:???
つーか
多数の認知 >>>>> 個人のウザイ感
だろ。
いちいちニュー速だコピペだ文句言ってる奴ケツの穴小さすぎ。
160nobodyさん:2005/11/05(土) 21:22:01 ID:???
うほっ
161nobodyさん:2005/11/06(日) 06:10:13 ID:???
>>159
言いたいことはわかるが、貼り付けるときに貼り付ける理由や動機、スレとの関係を書き添えてあったらまだましだったんじゃないかな。
2chでぶっきら棒にマルチコピペすりゃ荒らしとみなされても仕方ない。
まあいい加減この話題はスレ違いなので、お開きがいいかと。
162nobodyさん:2005/11/06(日) 08:55:03 ID:???
PEAR の Validate って使ったことある人いる?
163nobodyさん:2005/11/06(日) 10:59:15 ID:???
>>159
良いから黙ってろクズ
164nobodyさん:2005/11/06(日) 12:31:22 ID:???
>>163
自己紹介乙
165nobodyさん:2005/11/06(日) 15:27:29 ID:???
だからなんでこの板はスルーすることを知らないんだYO
うざくても「うざい」と書き込みさえしなけりゃ、その後、余計な時間を使ってストレスを
溜めることもなくなるのに。
166nobodyさん:2005/11/08(火) 00:02:48 ID:???
暇だからって結論が出てた希ガス
167nobodyさん:2005/11/08(火) 00:36:02 ID:???
他の板では華麗にスルーするネタでも、ここだと何故か触りたくてウズウズしてくる
168nobodyさん:2005/11/08(火) 01:36:40 ID:???
>>167
わかるわかる.この板結構まじめだからなぁ.
マ板とかなら軽やかにスルーしてる.
169nobodyさん:2005/11/10(木) 21:56:01 ID:???
>>164
良いから黙ってろ屑
170nobodyさん:2005/11/12(土) 15:41:56 ID:???
>>169
馬鹿の一つ覚え乙
171nobodyさん:2005/11/12(土) 22:22:25 ID:???
荒らし宣言だな
172nobodyさん:2005/11/24(木) 23:18:42 ID:???
Text_Wiki 使ってる香具師いる?重いって本当?
173nobodyさん:2005/11/25(金) 12:03:29 ID:???
>>172
Text_Wiki を使う YaWiki ってのがあるから使ってみれば?
174nobodyさん:2005/11/25(金) 17:58:54 ID:jDxpSmO4
この速さなら言える。

HTML_QuickFormは使う価値なし。
175nobodyさん:2005/11/25(金) 18:19:40 ID:mEnoPTSD
替わりのすばらしいvalidatorがああるなら移りたいから教えれ
176nobodyさん:2005/11/25(金) 18:57:18 ID:???
おれおれvali
177nobodyさん:2005/11/25(金) 20:27:51 ID:jDxpSmO4
>>175
validatorとして使ってるのか?
愚か者め!
178nobodyさん:2005/11/25(金) 20:31:23 ID:???
QFはhireselectの為だけに存在しています。
179nobodyさん:2005/11/25(金) 21:44:23 ID:???
最近、 おれおれvali はやってるよな。
180nobodyさん:2005/11/25(金) 21:59:59 ID:???
バリデータなんてそんなに複雑でもねーしな
181nobodyさん:2005/11/26(土) 18:33:13 ID:GyyEiC40
PHP 5.1.0のPEARがうまくインストールできません。

8. Path to CLI php.exe : C:\PHP\PHP5.1.0\.

ここを変更しようとphp.exe 選ぶんだけど、

**ERROR**
Please, enter the php.exe path.

って出て変更できんのだよ。
182nobodyさん:2005/11/26(土) 20:29:04 ID:???
ゴミにもならない報告乙
183nobodyさん:2005/11/26(土) 23:18:51 ID:???
ゴミにもならないだと。
ではなんなんだ。
184nobodyさん:2005/11/26(土) 23:28:11 ID:???
ゴミにはなってるよな。
手がかりになりそうな情報は全部隠してるし。

つまりあれか、ネタってことか。
185nobodyさん:2005/11/26(土) 23:41:43 ID:???
ためにしphp.exeを選択してみたところ死ぬほど明快な
エラーメッセージが出たんだよもん
つかバイナリだけ別ディレクトリに入れたい理由は何だ?
186nobodyさん:2005/11/27(日) 00:55:24 ID:???
なるほどね。
寝て待っていれば解決すると思われ。
187nobodyさん:2005/11/27(日) 13:40:35 ID:j3jzmlYw
Eclipse使ってれば勝ち組
188nobodyさん:2005/11/27(日) 15:16:47 ID:???
重すぎ
189名無しでいいとも! :2005/11/27(日) 20:47:24 ID:j3jzmlYw
↑それはマシンが悪い
190nobodyさん:2005/11/27(日) 22:45:51 ID:???
↑ダイエット汁
191nobodyさん:2005/11/29(火) 20:01:51 ID:???
マニュアルがむっちゃ重いんですけど、これで普通ですか?
192nobodyさん:2005/11/29(火) 21:28:21 ID:???
新型VAIOとかの軽いマシンに買い替えればいいんじゃないかないいんじゃないかな
193nobodyさん:2005/11/29(火) 22:42:09 ID:???
そっか、やっぱその手しかないのかな
ボーナスに期待しよ
194nobodyさん:2005/11/30(水) 01:27:27 ID:???
pear.php.net
おちまくりだなぁ
195nobodyさん:2005/11/30(水) 17:48:31 ID:6Ig6k9FD
おいおい受験シーズンなんだぞ
pearは配慮してくれないと
196nobodyさん:2005/11/30(水) 19:48:30 ID:???
受験と関係あるのかよww
197nobodyさん:2005/12/02(金) 11:08:43 ID:???
>>170
良いから黙ってろ屑
198nobodyさん:2005/12/05(月) 19:58:31 ID:???
pear.php.net
混んでんのか?レスポンスわるい。
199nobodyさん:2005/12/06(火) 10:05:01 ID:???
>>197
遅ぇーんだよゴミがw
200nobodyさん:2005/12/06(火) 17:03:26 ID:???
>>198
ミラーってないのかな?
201nobodyさん:2005/12/06(火) 17:08:02 ID:???
あるけど意味なし
202nobodyさん:2005/12/07(水) 03:14:13 ID:???
たまにすげー重いよね。
203nobodyさん:2005/12/07(水) 03:17:12 ID:???
jp2.pear.php.net
204nobodyさん:2005/12/16(金) 11:07:29 ID:???
hosyu
205nobodyさん:2005/12/16(金) 21:52:11 ID:???
PEARじゃなくてPECLのAPCなんだけど、MojaviやAgaviを使用すると、
ページが見つかりませんってなるけどなんでだ・・・。
iniの設定は
apc.mode = mmap
apc.cachedir = /tmp
apc.check_compiled_source = 1
apc.check_mtime = 1
で、Mojavi&Agavi外のPHPファイルは普通に表示されるのに。
mmapじゃなくてshmにしても同じだった。


206nobodyさん:2005/12/17(土) 22:25:40 ID:???
正直APCは微妙だな。不具合が多い気がする。
eAcceleratorに替えるといいよ。
PHP5.1には、まだ対応してないけどなー。
207205:2005/12/19(月) 16:28:51 ID:???
>>206
そうなんだ。
でもMojaviで同じ現象起きてる人いないみたいだったので、
絶対自分の設定がどこかおかしいのだと思う。
おとなしく5.1対応したZend Optimizerでも使っときます・・・。
208nobodyさん:2005/12/20(火) 18:15:45 ID:3cC2JEjt
HTML_QuickForm_hierselectを使ってるんですけど
サブの項目にデフォルト値をセットする方法がわかりません
誰か教えてもらえませんか?
209nobodyさん:2005/12/20(火) 18:39:37 ID:???
array(first , second)
210nobodyさん:2005/12/23(金) 06:49:35 ID:30HrNDez
FreeBSD 5.3とMOD_PHP Version 5.0.4、Apache1.3.34を入れてます。
MOD_PHPをポートからいれるとき、
--without-pear オプションを指定しないでconfigureしたのですが、

>locate PEAR.php
>/usr/local/lib/php/bootstrap/PEAR.php
のように、ここドコ?的なところにはいっています。

で、今度は「pear-DB-1.7.6」をポートから入れようとしたら、
インストール途中でなぜかphp4-4.4.1_3を必要だとかで、
php4をダウンロードしようとしてしまいました。
こわいので、中止してしまったのですが。。。

上記、ただしくはどうすればよいのでしょうか?
よろしくお願いします。
211nobodyさん:2005/12/23(金) 09:52:45 ID:???
>>210
make cleanしてみると、php4を前提にportsを作っているぽいね。
bsd# make clean
===> Cleaning for libiconv-1.9.2_1
===> Cleaning for autoconf-2.59_2
===> Cleaning for gettext-0.14.5
===> Cleaning for gmake-3.80_2
===> Cleaning for libtool-1.5.22
===> Cleaning for m4-1.4.4
===> Cleaning for p5-gettext-1.05_1
===> Cleaning for pear-1.4.5_2
===> Cleaning for php4-pcre-4.4.1_3
===> Cleaning for perl-5.8.7_1
===> Cleaning for php4-4.4.1_3
===> Cleaning for help2man-1.36.3
===> Cleaning for expat-1.95.8_3
===> Cleaning for php4-xml-4.4.1_3
===> Cleaning for apache-1.3.34_3
===> Cleaning for pear-DB-1.7.6,1

そういう時はpear-PEARだけportsで入れて、後はpear installコマンドで
必要なパッケージを入れたらいいのでは?
212nobodyさん:2005/12/23(金) 15:22:03 ID:???
どこか無料サイトでPEARが用意されているところは
ございますか?
213nobodyさん:2005/12/23(金) 18:10:49 ID:???
>>210
他意は無く、純粋な疑問なのだが、なぜApache1系?

>>212
ttp://pear.php.net/index.php
214nobodyさん:2005/12/23(金) 18:19:25 ID:???
>>213さんすみません。
質問の仕方が悪すぎたです。

PHP使用可の、無料ホームページやレンタルサーバで
PEARが使用可能なとこは、ございますか?
215nobodyさん:2005/12/23(金) 18:31:38 ID:???
>>210,212
pear-PEARは既に廃止されてます。(see /usr/ports/UPDATING)
まずはPortsツリーを最新版に更新してPHPもphp5-*-5.1.1にしてからdevel/pearを入れ、
その後、pear-HTTP_Client等を入れていけばOK。
あと、make install するよりportupgrade使った方がはるかに楽。

>>214
共有サーバにプリインストールされてるPEARは(そういう鯖があったとしても)
パッケージ管理が柔軟にできないのでおすすめできない。
自分で必要な分だけ集めてUPし、include_pathを設定した方がいい。
216nobodyさん:2005/12/23(金) 19:17:35 ID:???
>>215
お前優しいな・・・。
俺もFreeBSD使わされてるけど、Portsは使わない。
Linuxも使ってるので、なるべく両方同じような感覚で使いたいし。

>>214
ttp://fol.axisz.jp/php/man/pear/installation.shared.html
217212,214:2005/12/23(金) 21:04:45 ID:???
>>215さん216さんありがとうございました。
218211:2005/12/23(金) 21:35:12 ID:???
>>215
そうっだのか・・・。
最近アップデートサボってたからPHPを5.1に上げがてらPEARもメンテしとくか。

portupgradeは使ってますよ。後、Portsツリーのアップデートにはportsnapが便利だね。
219nobodyさん:2005/12/23(金) 23:15:07 ID:???
>>205
PEARとは直接関係ないけど、APCの話題が出たので・・・

うちもPHP5にAPCを導入すると、エラーの出るスクリプトが多発した。
原因を調べたところ、キャッシュされたスクリプトから
superglobalsにアクセスできないようだった。

同じような現象がないかとぐぐってみたら、下の記事を発見。
ttp://pecl.php.net/bugs/bug.php?id=4772

で、記事のとおりにphp.iniで
auto_globals_jit=Off
にしてみたら、エラーが出なくなった。

以上、参考まで。
220nobodyさん:2005/12/24(土) 01:58:37 ID:???
PHPは危なくて自動アップデートなんて出来ない。
221nobodyさん:2005/12/24(土) 02:03:29 ID:???
>>220
そんなこと無いけど?
222nobodyさん:2005/12/24(土) 11:12:17 ID:???
HTML_QuickFormでapplyFilter()された値を修正画面や確認画面で、
反映表示することはできませんか?

applyFilter()された値をユーザが確認できない仕様はどうしても嫌なので、
ソースを改造してでもどうにかしたいんですけど、
ソースを見てもどこをどうすればいいのかさっぱりです。
223205:2005/12/24(土) 20:08:38 ID:???
>>219
情報ありがとう。
ただ自分の場合は、エラーが出るところまでいかず、
ブラウザが「ページが見つかりませんでした」とエラーを出します。

>>221
自動アップデート云々はおいといて、
PHP5.1.1とMySQL5の組み合わせでPDOを使用した時
接続が出来なくなりました。
接続エラーは出てないのですけども。
別サーバでPHP5.1.1とMySQL4の組み合わせでは問題なく
接続出来ました。
224nobodyさん:2005/12/24(土) 23:06:11 ID:???
PHPは平気でバグ付きでリリースされる。
225nobodyさん:2005/12/24(土) 23:18:01 ID:???
>>223

> PHP5.1.1とMySQL5の組み合わせでPDOを使用した時
こんな特殊なケースを持ち出して、

>PHPは危なくて自動アップデートなんて出来ない。
なんて言うのはちょっとあれなんじゃない?
226nobodyさん:2005/12/24(土) 23:25:57 ID:???
とりあえずオフィシャルは見ないと駄目だよね
227223:2005/12/25(日) 00:00:56 ID:???
>>225
特殊かな?
DBサーバがMySQL4でも、Webサーバに入ってるMySQLが5だと
ダメだったんだけど。Webサーバ側の方は特に関係ないかと思ってた。

>PHPは危なくて自動アップデートなんて出来ない。

それ俺が言ったわけじゃないけど。
それはそれはおいといて、こういう事ありましたよって
ただ報告しただけ。

>>226
オフィシャルにバグレポート上がってました?
見てみます。
228nobodyさん:2005/12/25(日) 00:07:28 ID:???
mysql5ってサポートされてるの?
229nobodyさん:2005/12/25(日) 00:11:08 ID:???
>>227
PHP5.1.1もMySQL5もPDOもどれもβ版みたいなものじゃん?
何に原因があるかは(このスレ的にはPHPだが)容易に特定できないのでは?
という意味で言ったのだけど。
230nobodyさん:2005/12/25(日) 00:12:28 ID:???
ぐぐれ
231nobodyさん:2005/12/27(火) 15:14:20 ID:6hbW+Cc+
Authクラスってどうですかね?
ソース見たらどうもいまいち信頼性のない感じだったのですが、
バグとかないですか?大丈夫ですか?
機能が機能だけに少し心配です。
232nobodyさん:2005/12/27(火) 15:28:09 ID:???
ソースを見てダメなところを発見したならもう他人がどう言おうと使うべきじゃないのでは。
機能が機能だけに。

ちなみにどこがダメだった?
233nobodyさん:2005/12/27(火) 16:30:24 ID:6hbW+Cc+
>>232
verifyPassword()と、DB.phpのaddUser()で cryptType の扱いに
細かな統一性が取れないらしいところとか、ずさんさを感じましたよ。
234nobodyさん:2005/12/27(火) 18:24:59 ID:???
別にちゃんと取れてると思うけど?
スタイルが気持ち悪いという理由かいな?
違うならもうちょい具体的に頼むわ。
235nobodyさん:2005/12/27(火) 19:00:53 ID:6hbW+Cc+
>>234
Auth/Container.php の verifyPassword() と
Auth/Container/DB.php の addUser() を見比べて見てください。
一方ではnoneが有効で、一方では無効でしょ?

こういう内部的な相違は、
いちいちソースを確認しなければならず、無駄にハマる場合があると思います。
236nobodyさん:2005/12/27(火) 22:09:08 ID:???
>>235
確かに、とはいえcryptType自体ドキュメントに載ってないみたいだし、
その機能に気づく奴はそもそもソース読んだ奴だけでしょ。
いまはuserAdd()自体の説明も削除されてるけど、昔はあったような気がするから
たんに後方互換のためだけに存在してるのかも。

PEAR::Auth つかってるけどいままで特に問題は経験してないよ。
でも気になるなら書き直したっていいんじゃない?
237nobodyさん:2005/12/27(火) 22:31:05 ID:6hbW+Cc+
>>236
どうも。複雑な認証を行う場合は、大抵それ用にコード書くので、
ライトな使い方で、基本動作に問題ないようなら、とりあえずOKっす。
238nobodyさん:2006/01/03(火) 11:02:07 ID:bVutY5ZN
DB.phpを使って、URL(http://www.google.co.jpとか)をDBに書き込もうとすると
エラーが出るのですが、これを回避する方法はないのでしょうか?
239nobodyさん:2006/01/03(火) 11:12:25 ID:???
それなんてエ(ry
240nobodyさん:2006/01/03(火) 11:24:23 ID:???
>>238
カラムの型とかエラーメッセージを示さないでどうやって答えろと?
241nobodyさん:2006/01/04(水) 03:11:04 ID:LqFUITlR
Pagerで
1 2 3 4
ではなく
1-100 101-200 201-300 301-400
のような表示はできますか?

あと、Factory()のオプションの、
expanded [boolean]. もし TRUE なら、ウィンドウサイズは常に 2*delta+1 となります。
とはどういう意味でしょうか?
242nobodyさん:2006/01/06(金) 17:18:35 ID:vfftbldx
インストールについての質問です。

このサイトでWin版マルチバイト対応PHP5.04をダウンロードしました。
http://www.geocities.jp/rui_hirokawa/php/win/

このPHPに入っているgo-pear.batがなにかおかしくて
(実行すると[Could not open input file: PEAR\go-pear.php.]と出てしまう)
PEARがインストールできません。

そこで以前使っていたPHP4に入っていたgo-pear.batをこのPHP5にコピー
してPEARをインストールしようと思うんだけど、この方法で問題なくインストール
できるでしょうか。
243nobodyさん:2006/01/06(金) 17:22:30 ID:???
>>242
ちゃんとPHPが入っているフォルダに移動(cd)してから実行した?
244242:2006/01/06(金) 17:36:19 ID:???
>243
はい。(cd)でもやりましたし、「ファイル名を指定し実行」もやりましたし、
ダブルクリックでもやりましたが
「Could not open input file: PEAR\go-pear.php.]と出るだけでした。

PHP4のgo-pear.batはダブルクリックするだけで実行されます。
245nobodyさん:2006/01/06(金) 17:40:11 ID:???
>>244
>>242のリンク先に

現状での問題点(2005/5/31)

* go-pear.bat実行時にpear.batが作成されない(pear_bat.oldをリネーム)

って書いてあるやん・・・。
246242:2006/01/06(金) 17:48:01 ID:???
>>245
それは実行するとpear.batが作成されるんですよね?
実行ができないのでなんにも作成されてないんです。

それとPEARフォルダはPHPをインストールしたときにもうできているんでしょうか。
このPHP5にはPEARフォルダが無いんですけど。
247nobodyさん:2006/01/06(金) 18:03:52 ID:???
>>246
たとえばphp-5.1.1-Win32.zipを落としてきて解凍するとPEARフォルダはある。
go-pear.batの中身を見ればわかるけど、PEARフォルダ内のgo-pear.pharを
実行してPEARのインストールをするみたいね。

その国際版になんでgo-pear.pharが無いかは知らないけど、どうせ流用するなら
PHP 5.0.4のソースを落として使ったほうがいいんじゃない?
248nobodyさん:2006/01/06(金) 18:59:36 ID:???
>>247
なるほど。PHP5をダウンロードして流用しみます。
>>243,245,247助かりました。ありがとう。
249247:2006/01/06(金) 19:11:48 ID:???
>>248
蛇足というかおせっかいだけど、マルチバイト版を使いたいのは
内部コードをSJISにしたいからだよね?

でも、5.0.4には大きなセキュリティホールがあるから、PHP 5.1.1にして
内部コードをUTF-8化することをお奨めしとく。
mb_stringを有効にしてphp.iniを適切に設定すれば、出力文字コードを
好きなエンコードに自動変換してくれるから。
250nobodyさん:2006/01/13(金) 14:16:52 ID:U09ztjR4
メモリのカスタマイズで1X1GBと2X512と同じ値段だけど、どっちがいいの?
1X1GBの方ですよね
251nobodyさん:2006/01/13(金) 16:04:34 ID:???
>>250
PEARとどういう関係が?
ちなみにDual CHANNELなら2枚の方が早いんじゃないの
252nobodyさん:2006/01/15(日) 00:22:45 ID:???
これって何て発音するの?
253nobodyさん:2006/01/15(日) 09:39:06 ID:???
ペァーーーーー
254nobodyさん:2006/01/15(日) 15:07:33 ID:???
ぴあで言い慣れてしまっている。
255nobodyさん:2006/01/15(日) 15:11:17 ID:???
DB と MDB と MDB2 の違いっておおざっぱに言って何?
256nobodyさん:2006/01/15(日) 15:30:30 ID:???
実績ならDB、熱いのはMDB2、MDBは放置プレイ。
MDB2 FAQ: http://oss.backendmedia.com/MDB2/FaQ

このところMDB2が怒濤の勢いでFixされてて、いよいよstableリリースが近づいてきた感じ。
今後はPDOのラッパにもなりそう。あと、http://pooteeweet.org/blog/297
によるとDBを使ってるPEARパッケージでもMDB2がサポートされていくみたい。
257nobodyさん:2006/01/15(日) 16:05:17 ID:???
心の中ではペアと読んでる
258nobodyさん:2006/01/15(日) 16:23:57 ID:???
>>256
thx

ついでに、こいつらで PHP 4 で SQLite が安心して使えるようになる
可能性って低いかねぇ? PHP 5 でバッチリサポートされちゃったし、
オレならモチベーション上がらないだろうなーと思うんだけど。
259nobodyさん:2006/01/15(日) 19:35:41 ID:???
pearはペア派です。
nethackのitemでおぼえますた。
DBはぽすぐれおんりーになってきた最近です。
260nobodyさん:2006/01/15(日) 21:04:18 ID:???
人には「ペアって読むんですよ」と教えつつも
心の中ではピアって読んでるワタクシ

※「ペア」が正解だと公式サイトに書いてあります
ttp://pear.php.net/manual/en/introduction.php
> is pronounced just like the fruit

like the fruit > ttp://dictionary.goo.ne.jp/search.php?MT=pear&kind=ej&mode=0
261nobodyさん:2006/01/16(月) 01:20:18 ID:???
クライアントの前ではピアと読んでいる、(クライアントがそう読んでいる)
が、心の中ではずっとペアと読んでいる。
262nobodyさん:2006/01/16(月) 03:01:05 ID:???
>>258
低そうですねー。
PHP5でしか使えないOOスタイル(SQLiteDatbaseクラス)が
PHP4でも使えるようになると嬉しいんだけど...
263nobodyさん:2006/01/16(月) 03:26:32 ID:???
ペアって読んでる。
関係ないけどCPANは読み方分からなくてシーパンで癖ついちゃったけどクパンって読むらしいね…。
264nobodyさん:2006/01/16(月) 08:22:07 ID:???
>>263
ちょwww工作員wwwwww
265nobodyさん:2006/01/16(月) 12:48:16 ID:???
266nobodyさん:2006/01/16(月) 12:49:50 ID:G/ZbNFBV
梨でしょ
267nobodyさん:2006/01/16(月) 20:21:44 ID:???
梨だよな。明らかに
268nobodyさん:2006/01/16(月) 21:43:18 ID:???
梨に間違いナシ
269nobodyさん:2006/01/16(月) 22:13:54 ID:???
270梨元:2006/01/17(火) 08:37:22 ID:???
恐縮です
271nobodyさん:2006/01/17(火) 12:36:46 ID:???
梨の絵かいてあんだろ
272nobodyさん:2006/01/24(火) 23:42:32 ID:6JXx7sTK
php5.1.2インストール済みのWin2000 ServerにPEARをインストールしようとして、
リモートデスクトップで接続し、DOS窓からphpのインストフォルダに移動して、
>go-pear.bat
と入力しても何も応答がありません。

ちなみにWinXPのパソコンでは、Welcomeが出てきます。

なぜでしょうか?
273nobodyさん:2006/01/25(水) 00:43:07 ID:???
Spreadsheet_Excel_Writerって文字化けするよね。
274nobodyさん:2006/01/25(水) 00:50:13 ID:???
キャッシュはメンテナいないCacheよりCache_Lite?
275nobodyさん:2006/01/25(水) 20:15:19 ID:???
>>273
PHPのやつは古いんで、かと言って最新のPerlのやつを移植するスキルもないので、
ブリッジ作ってPerlのやつ使ってます
276nobodyさん:2006/01/26(木) 00:00:05 ID:???
Pager で、リンクに hoge.php?pageID=1#top
みたいにページ内リンクをつけるのって出来ますか?
277nobodyさん:2006/01/26(木) 09:51:22 ID:???
HTML_QuickForm_Controller+smarty使って
携帯用のフォーム作りたいんだけど
ttp://wiki.poyo.jp/read/Writing/marugoto_php/HTML_QuickForm_Controller#content_1_5
に「HTML_QuickForm_ControllerはHTTPヘッダのLocationを使用します。
ですので携帯電話用のフォーム処理には向きません」との記述。

実際作ってみたんですがやっぱり動かない。
どこの処理でLocation使ってるんですか?

出来上がったソースみても書いてないし。
↓参考にしたソース
ttp://blog.snoritake.com/2005/12/html_quickform_controllersmart_1.html
278nobodyさん:2006/01/27(金) 09:19:29 ID:???
普通に考えたらライブラリの中で使ってるってことだと思うんだけども
279nobodyさん:2006/01/27(金) 17:30:12 ID:zienXgmO
やっぱりAuthクラスっていけてないですね。

PHP5でエラーが出たので、ちょっと見たのですが、
コンストラクタの$options引数が、コンテナによって、
配列だったり、文字列だったりするのだけど、
どちらの場合も、ごちゃまぜに処理してしまっていて、
これがエラーの原因になっています。

よく使いそうな役割のクラスだけに、
もうちょっとしっかりしたコードにしてほしいもんだ。
280nobodyさん:2006/01/28(土) 13:54:13 ID:???
>>279
そこでおまえがコミットですよ
281nobodyさん:2006/02/01(水) 12:15:51 ID:FRDzC7Md
AuthクラスのgetAuthとaddUserについて質問です。

次レスのようなシンプルなソースを作りましたが、
addUserでは必ずTrueが、getAuthでは必ずFalseが返ってきてしまいます。

addUserはTrueでも実際には動作してないです。エラーも出ません。
getAuthはgetStatusに変えたら正しく動作しました。
同様な現象になったことがある方いませんか?

このままですと、getAuthやaddUserだけでなく他にも挙動がおかしいもの
がでてきそうな気がします。正しく動作させる方法を教えてください。

環境:
PHPは4.3.10ですが、デフォルトで入っているPEARの挙動が
おかしかったので http://pear.php.net/packages.php ここから
AuthとDB関連のクラスは入れなおしてます。
register_globals は Off です。
282nobodyさん:2006/02/01(水) 12:16:27 ID:FRDzC7Md
>>281 のソース

<?php
require_once "Auth/Auth.php";

$dsn = "mysql://user:password@localhost/database";

$authset = array(
"dsn" => $dsn,
"table" => "auth",
"usernamecol" => "username",
"passwordcol" => "password",
"cryptType" => "none"
);
$a = new Auth("DB", $authset);

// ユーザーの追加---必ずTrueが返ってくるが登録されてない。
if($a->addUser('user','pass')) {
echo "ユーザーを追加しました。";
}
$a->start();

// 認証チェック---必ずFalseが返ってくる。
if ($a->getAuth()) {
echo "ようこそ!" . $a->username . "さん<br>";
}
?>
283nobodyさん:2006/02/01(水) 18:05:00 ID:???
PEARでXMLを扱う場合におすすめなのは、何ですか?
284281-282:2006/02/01(水) 20:51:33 ID:???
>>281-282
気のせいでした。。。_| ̄|○ il||li
接続設定が違っていた模様・・・

スレ汚しスマソ(´・ω・`)ショボーン
285192.168.0.774 :2006/02/02(木) 10:25:44 ID:rSyssRqD
>>283
PEARじゃなくともSimpleXML使えばお腹いっぱい
286nobodyさん:2006/02/02(木) 11:09:31 ID:???
>>285
PHP4なのでお腹いっぱいになりません…
287nobodyさん:2006/02/02(木) 13:28:02 ID:???
>>285
しらなかった・・・
PHP5なのにxml_parse()使ってたorzorzorz
288nobodyさん:2006/02/02(木) 14:23:19 ID:???
>>286
ttp://www.ister.org/code/simplexml44/index.xhtml
にPHP4用のSimpleXMLらしきものがあるので、試してみては?
289nobodyさん:2006/02/02(木) 14:36:37 ID:???
>>288
へー。初めて知りました。
PEARのXMLを扱うやつと比較しながら
ちょっと試してみます。ありがとやん。
290nobodyさん:2006/02/09(木) 12:10:45 ID:???
HTML_QuickFormのaddRuleでhiddenの値(one-time token)をvalidateしようとしています。

なぜか全く反応しません。
requiredにも無反応。raiseErrorにもひっかからない。

hiddenの値をvalidateするにはどうすればいいですか?
291nobodyさん:2006/02/09(木) 13:01:42 ID:???
>>290
マルチ
292nobodyさん:2006/02/10(金) 05:41:05 ID:???
>>290
呪文を唱える(マジ)
293nobodyさん:2006/02/10(金) 14:03:44 ID:???
>>292
マジで呪文を唱えてみました

効果がありませんでした。
とりあえずソースにデバッグコードを埋め込んだりして、動きを追っています。
mojavi + HTML_QuickForm + smarty という構成なのでそのどこかにバグがあるのでは
と思っています。

今このあたりを調べ中…(3日もコーディングが進まない…)
$form->accept($QFrenderer);
294nobodyさん:2006/02/10(金) 19:31:43 ID:???
>>293
>mojavi
だったら、根本的な解決にならんけど、

Acrionのinitialize()あたりでチェックする。
295nobodyさん:2006/02/11(土) 06:24:10 ID:???
>>290
ソース出してみ
296nobodyさん:2006/02/11(土) 15:27:57 ID:???
こんなのでも動かないよ
仕様じゃないかと思われるから要望だそうかと思うけど

$form->addElement('hidden', 'test', '');
$form->addRule('test', 'test is required', 'required', '');
297nobodyさん:2006/02/13(月) 22:58:45 ID:pnT1I5vq
MDB2 SQLite リリースあげ
http://pear.php.net/package/MDB2_Driver_sqlite/
298nobodyさん:2006/02/14(火) 16:45:17 ID:???
なんでPERLと似てんの?意識してんの?
299nobodyさん:2006/02/14(火) 20:28:20 ID:???
SQLiteってそんな使ってる人多いの?
300nobodyさん:2006/02/14(火) 22:59:00 ID:nEcRuD6a
SQLite ならデーモンの管理や権限の管理が要らないから
DB の使えるホスティングが増えるんじゃないかなーと
期待してる
301nobodyさん:2006/02/15(水) 07:32:02 ID:???
PHP ではあんまり流行らないかもねぇ
まだ日本語ドキュメントがあんまりないし
302nobodyさん:2006/02/15(水) 08:08:14 ID:???
仕事では使った事ないけど、遊びで使う時には便利だったな。@windows
DB周りの設定のようなロジックに関係無い部分に気を使う必要がないから、すぐに作り始められる。

3への移行時期あたりに本家のドキュメントを手当たり次第に訳してどっかにうpした記憶があるんだが、URLわかんね。
地道に検索すりゃ見つかるんじゃないかな。
つか、他のDBと比べた時に多少制限があるくらいで、そこさえ押さえておけばあんまり意識する必要がなかったような。
303nobodyさん:2006/02/15(水) 09:19:32 ID:???
管理用のツールはこの辺
http://www.debianhelp.co.uk/sqliteweb.htm
304nobodyさん:2006/02/16(木) 08:01:48 ID:???
305nobodyさん:2006/02/18(土) 02:28:12 ID:Fc1AYhHK
AuthをmacのMAMPで使ってみた。
http://pear.php.net/manual/ja/package.authentication.auth.intro.php
の一番上にある最もシンプルなスクリプト実行してみたが、認証できず5時間くらい格闘中。
MAMPではmysqlのポートが8889になってしまうので、$dsn = "mysql://ネーム:パスワード@tcp(localhost:8889)/データベース名"
としてみたが、いっこうに動かず。Authのバグかなこれ??

しかもphp5だとこのスクリプトは動かず、外人どももご立腹な様子。
http://pear.php.net/bugs/bug.php?id=4371
306nobodyさん:2006/02/20(月) 17:00:30 ID:???
HTTP_Clientでproxy使いたいんですが、どうやればいいんでしょうか
307nobodyさん:2006/02/20(月) 17:31:46 ID:vRXDRBjP
>>306
気のせいだよ
308nobodyさん:2006/02/20(月) 22:23:00 ID:???
誤爆?
309306:2006/02/24(金) 11:11:37 ID:???
extendsしたクラスを作って、直接メンバのHTTP_RequestのsetProxyをするクラスを自作しました…
意外と簡単だった
310nobodyさん:2006/02/24(金) 17:52:14 ID:???
HTTP_Client で new HTTP_Request してる所と HTTP_Request のコンストラクタをちゃんと読んでれば
継承したクラスを作らなくても済んだのに。
311306:2006/02/27(月) 16:21:13 ID:???
読みました。
出来ました。
ありがとうございました。
312nobodyさん:2006/03/06(月) 13:38:45 ID:???
QuickFormのdateで月日の範囲指定をしたいのですが、
minYearみたいなオプションはないのでしょうか?
もしくは、それに変わるものみたいな・
313nobodyさん:2006/03/08(水) 17:54:45 ID:???
HTML_QuickFormのfileってfreezeすると使えないんですか?
314nobodyさん:2006/03/08(水) 17:55:18 ID:???
ageる
315nobodyさん:2006/03/08(水) 22:51:49 ID:???
>313
デフォでは何も出ない。
自分で拡張するべし。
316nobodyさん:2006/03/08(水) 23:00:23 ID:???
>>315
さんくす
考えてみます
317nobodyさん:2006/03/08(水) 23:06:37 ID:???
PEARにHTMLパーサってありますか?
318nobodyさん:2006/03/09(木) 03:59:13 ID:???
HTMLを読み込んでDOMを作るようなやつを望んでる?

PEARにはないけど、PECLにひとつあるみたいね。
html_parse
http://pecl.php.net/package/html_parse

特定のタグをの使用を制限したいとかの理由なら

tidy
http://pecl.php.net/package/tidy

SafeHTML
http://pixel-apes.com/safehtml/

なんてのがある。(どっちもPEARじゃないね)
319nobodyさん:2006/03/09(木) 15:06:39 ID:???
PEAR::XML_HTMLSax
320nobodyさん:2006/03/12(日) 16:46:29 ID:UjH0HOBY
こんな日本専用パッケージ通るのか?
http://pear.php.net/pepr/pepr-proposal-show.php?id=362
中身はたいしたことないけど、期待age
321nobodyさん:2006/03/12(日) 16:52:02 ID:???
コメントで色々言われているけど、
そのコメント自体が結構参考になる。
322nobodyさん:2006/03/12(日) 20:13:55 ID:???
>>320
imodeはギリギリOKだと思ったが、hatenaは日本のリポジトリに突っ込むべきかと。
(まあAmazonだって全世界サービスとは言えないか)

http://ns1.php.gr.jp/pipermail/phpug-admin/2005-December/001057.html
これまだなんかね。
323nobodyさん:2006/03/17(金) 00:04:48 ID:???
livedoorはOKだからはてなもOKじゃないの?
324nobodyさん:2006/03/17(金) 01:36:33 ID:???
つーか、承認されてるし。達成したという事実はすげーかと。
325nobodyさん:2006/03/28(火) 04:03:40 ID:y/Gmg3I1
DB_DataObjectのjoinAdd()で、

LEFT JOIN hoge_table ON id = hoge_id AND code = hoge_code

のように、2つの要素をANDで指定できますか?
326nobodyさん:2006/03/28(火) 04:34:16 ID:???
>>325
できない.

プライマリキーがひとつしかないテーブルにしか対応しないと思った方がいいと思う.
(これは joinAdd() に限らず DB_DataObject 全体にそんな傾向がある気がする)

普通の INNER JOIN なら whereAdd() を併用すると何とかなったりするんだけど,
LEFT JOIN は自分も前に頑張ったけどダメだった.
そして言い訳のようにマニュアルには「joinAdd() がややこしくなってきたら
生 SQL 食わせちゃった方がいいっすよ」とか書いてあるw
327nobodyさん:2006/03/28(火) 04:45:36 ID:???
>>326
散々格闘した挙句、同じく生SQLで解決しちゃいました。
できそうでできないってのが曲者ですな。。
328nobodyさん:2006/03/28(火) 05:35:19 ID:???
う。生SQLで解決と思ったのですが、別ライブラリとの連携の関係で、
これは解決策にはなりませんでした・・・。うーん。
329nobodyさん:2006/03/28(火) 06:35:46 ID:???
生 SQL って DB_DataObject::query() 使ってる?
別ライブラリってのがどういうものかわからないけど,

> $t1 = DB_DataObject::factory('hoge');
> $t2 = DB_DataObject::factory('fuga');
> $t1->joinAdd($t2);
> $t1->find();

> $t1->query( "SELECT * FROM hoge INNER JOIN fuga ON ( hoge.id = fuga.id )" )
は同値.

前者が複数キーテーブルのせいで実行できなかったとして,
それを後者に置き換えてもそのライブラリの問題ってのが発生するなら,
そもそもその案件に DB_DataObject が使えないってことじゃないかって気がする.
330nobodyさん:2006/03/28(火) 12:02:04 ID:???
>>329
query() 使ってます。
別ライブラリというのは PEAR Structures_DataGrid です。
これは、こちらが渡した DB_DataObject のオブジェクトを、
追加操作してFetchするため、こちらで生SQLを発行しちゃうと
残念ながら効果がなくなるようなんです。
331nobodyさん:2006/03/28(火) 13:22:07 ID:???
あちゃあ.なるほど Structures_DataGrid か……

DataObject を継承したクラスを作って,
find() の時にオリジナルクエリを決め打ちで流すようにして,
Structures_DataGrid にはそいつを渡すってのはどうかな?

その場合は,Structures_DataGrid の _detectSourceType() を
get_parent_class() でなく is_a() を使うように変更したらさらに楽にいけるかも.
332nobodyさん:2006/03/28(火) 16:02:45 ID:???
いやぁ、Structures_DataGrid に DB_DataObject を渡すのは、
Structures_DataGrid に適切なLimitをセットしてもらって、
データ取得件数を最適化してもらいたいからなんです。
だからオリジナルクエリを決め打ちで流すのは効果なさそうだと。
333nobodyさん:2006/03/28(火) 17:47:00 ID:???
困難やねw

LEFT JOIN とかを適切に行なうビューを create view して
そのビュー用の DB_DataObject を作るってのはどないだ
334nobodyさん:2006/03/28(火) 19:15:53 ID:???
>>333
なるほど〜 それならできそうな気がします。
335nobodyさん:2006/04/03(月) 15:39:54 ID:mvo6jAJ1
PEAR::Pager で、

  http://sample.com?ID=1&pageID=1http://sample.com?ID=2&pageID=2

みたいにpageID以外の変数(ここでは ID)をページごとに変える方法ってありますか?
336nobodyさん:2006/04/03(月) 19:48:56 ID:???
Pager に pageID 以外の変数を管理させたいってことだと違うかもしれないけど,
とりあえず extraVars オプションを使ってみてはいかが.
337nobodyさん:2006/04/06(木) 14:05:03 ID:gNYW2zNb
>>335
とんくすです。extraVarsの解説してるサイトってあまりないんですよね。

value=1 みたいに静的な変数は付加できるけど、value=%dみたいなこと
ができないみたいで…。

338nobodyさん:2006/04/06(木) 14:06:54 ID:???
>337
pageIDを使うのじゃだめなのか? 何がしたいんだか分からん。
339nobodyさん:2006/04/06(木) 14:28:24 ID:???
>>337
なんで pageID 以外に同じ値を冗長に持たせたいのかわからん.
単に変数の名前を変えたいだけなら urlVar に 'ID' を指定.
あるいは extraVars で 'ID' の値として $_REQUEST['pageID'] を指定してやるとか.
挙動を変更したいなら Pager_* を継承したクラスを作ってそこでやるとか……
340nobodyさん:2006/04/07(金) 11:36:01 ID:???
PEAEの日本語マニュアル的な物はないの?

HTML_QuickForm で 「denotes required field」って部分を日本語に置き換える方法って無いでしょうか?
マニュアルがあればこの辺も調べたいんですが・・
341nobodyさん:2006/04/07(金) 13:19:09 ID:???
この辺は見たのかい?
[PHP-users 23103]QuickForm::addRule() requiredを使用したときに表示される"* denotes required field"を変更したい
ttp://ns1.php.gr.jp/pipermail/php-users/2004-August/023625.html
342nobodyさん:2006/04/07(金) 14:14:44 ID:???
>>341
ありがとうございます!
http://pear.php.net/manual/en/package.html.html-quickform.html-quickform.setrequirednote.php
これですね。

$form->setRequiredNote('<font color=red>*</font>は必須項目です。');

って感じで出来ました。
343nobodyさん:2006/04/07(金) 14:17:39 ID:???
「denotes required field」でぐぐると先頭だったのだが。。。
344340,342:2006/04/07(金) 14:32:22 ID:???
ごもっとも・・ orz=3
345nobodyさん:2006/04/11(火) 18:36:04 ID:???
アカウントに認証はありますが、アカウントの作成に関しては何か用意されているのでしょうか?
346nobodyさん:2006/04/14(金) 18:17:06 ID:ztoDRCLM
以前wampp2を使っていて、
今はxamppを使っています。
pear config-show
をすると、ディレクトリの設定などがwampp2当時のままになっていました。
xampp側で再設定するにはどうすればいいのでしょうか?
347nobodyさん:2006/04/14(金) 18:26:29 ID:STB/6fVF
>>346
たぶんパス通ってないだけだよ。
348346:2006/04/14(金) 19:12:42 ID:???
>>347
ありがとうございます。
古い環境変数を削除して、pathを通して、
再起動させたら、直りました。
batファイル内を見たら環境変数がなければ再設定しているようなので、
環境変数が邪魔していたようです。
349nobodyさん:2006/04/24(月) 01:19:24 ID:???
ディレクトりの階層をwindowsのエクスプローラみたいに
したいんですけど、pearでそんな都合がいいもんないですかね?
350nobodyさん:2006/04/24(月) 01:26:53 ID:???
DOMの勉強をしているんですけど、
$doc = new DOMDocument();
$doc->load('test.xml');

var_dump($doc);

これだと、オブジェクトのID返すだけなんですね。
$docがどんな状態かすぐに調べる方法ってありますか?
351nobodyさん:2006/04/24(月) 09:04:54 ID:???
>>349
再帰glob
352nobodyさん:2006/04/25(火) 23:23:53 ID:???
ファイルのアップロードをするためのライブラリってあります?
353nobodyさん:2006/04/25(火) 23:40:55 ID:???
このぐらいは、まずは自分で探そうぜ>>352
http://pear.php.net/package/HTTP_Upload

HTTPでアップロードするんじゃないのなら、その条件を提示
354nobodyさん:2006/04/30(日) 01:25:55 ID:TxzAQxO9
某レンタルサーバー(共有サーバー)で、HTTP_REQUESTを使用したかったんで、
PEARを手動インストールしています。
目的のHTTP_REQUESTは動いたのでいいんですが、
PEAR_infoが動きません。PEAR基本パッケージ?以外に何かインストールしないといけないんでしょうか?
355nobodyさん:2006/04/30(日) 10:12:45 ID:TxzAQxO9
連カキコすません。
Console_Getoptが必要のようだったので、インストールしました。
で、結果は動きません。エラーログすら吐き出さない・・・。
PHP_info.phpにアクセスすると、しばらくたって白紙画面になります。
なにか、案などありませんでしょうか?
356nobodyさん:2006/04/30(日) 11:54:05 ID:???
手動でモジュール入れたんだったら
そもそもPEAR_Info使ってもしょうがないんじゃね
手動で入れたやつは情報見れんよ確か
357nobodyさん:2006/04/30(日) 12:26:03 ID:???
propelがわかりやすく開設されたサイトないか?
358nobodyさん:2006/04/30(日) 12:37:11 ID:???
>>356
レスどもッス。
そうなんすか。手動だとPEAR_Info動かないんだ・・・。
確かに、PEAR_Infoなくても問題ないんですけど、動かないってのがまず気になったのと、
時間がたって、「あれ?なに入れてたっけ?」で確認できたら便利かなと。

必要なモジュールは入ってると思うんだけどなぁ・・・。
359nobodyさん:2006/04/30(日) 12:40:38 ID:???
prototype.jsベースのajaxライブラリってない?(APIが、RoR互換)

サイボウズの奴見つけたんだけど、メンテしてないようで、prototype.jsが1.4.0だとエラー...
あとAPIが今イチ使いづらい。
360nobodyさん:2006/04/30(日) 12:50:03 ID:???
>>358
それぞれのファイルでrequire_onceしてるのを辿っていけば良くね?
361nobodyさん:2006/04/30(日) 15:22:45 ID:???
>>360
Console_Getoptは、その方法で必要ってのはわかったんですけど、
他に必要そうなものが見当たらないんですよね。
ログが出ればわかるんだろうけど、なんでログでないんだろ。
ログは、別のPHPで適当にエラー起こすとちゃんと出るのに・・・。
362356:2006/04/30(日) 21:10:32 ID:???
>>358
いや、手動で入れたPEAR_Infoが動かない、ってことじゃなくて
手動で入れたPEARモジュールのディレクトリ指定して
PEAR_Infoの一覧にその手動で入れたモジュール一覧って表示できたっけなあと
PEAR_InfoってPEARのパッケージマネージャが作成する
レジストリファイルを参照してどんなPEARモジュールが入ってるかを
表示してたような気がする、、、って書いてて自信なくなってきたや

ええと、手動で入れたモジュールが表示されるかどうかは別として
ただ白紙とか動かんってことは何かミスがあるかと思う
動くのは動くはず
363359:2006/05/01(月) 04:52:20 ID:???
symfonyのJavascriptHelperが使えそ。
スレ違い、すま
364nobodyさん:2006/05/01(月) 12:43:13 ID:???
>>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);
}
ん〜どうしたもんかな・・・。
365nobodyさん:2006/05/01(月) 14:47:38 ID:???
再度、連カキコすません。
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
なんだそうで。手動インストした場合、なんのパスになるんでしょうか?

366nobodyさん:2006/05/01(月) 23:14:35 ID:???
なんでメモ帳にしてる奴がいるの?
367nobodyさん:2006/05/02(火) 12:40:26 ID:???
2chなんて馬鹿でかいソーシャルネットワークメモ帳みたいなもんだろ
368nobodyさん:2006/05/03(水) 21:31:31 ID: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];
}
369nobodyさん:2006/05/03(水) 22:43:29 ID:???
>>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];
}
370nobodyさん:2006/05/04(木) 02:46:46 ID:q11ggjCH
>>369
できました。ありがとうございました。
371nobodyさん:2006/05/04(木) 13:15:32 ID:???
HTML_QuickFormでのアップロードは今後推奨されないようなのですが、
HTML_QuickFormを使っている人はどのようにアップロードを実装したらよいですか?
372nobodyさん:2006/05/04(木) 15:40:50 ID:???
>>371
個人的にはQFを捨てるのがいいと思うけど
QF使ってた時はFileエレメント継承して
自前で拡張Fileエレメントを実装してた
373nobodyさん:2006/05/04(木) 16:10:53 ID:???
>>372
それ公開してもらえないですよね…?
374nobodyさん:2006/05/04(木) 19:09:05 ID:???
>>371
枯れてるし、特にこだわりや不具合がなければそのまま使ってもいいんじゃない?
今後っていっても大幅な改良があるか分からんし
結構好きなパッケージだったんだけどな
375nobodyさん:2006/05/04(木) 19:44:11 ID:???
>>373
公開するほどのもんでもないしさ
推奨されてないとはいえアップロード周りの処理自体は
QFのFileエレメントに元から実装されてるし
普通にFileエレメント使えばいいと思う
ただ元のままではfreezeできんから
そこは拡張したってだけで
376371:2006/05/04(木) 20:53:39 ID:???
推奨されていない理由ってセキュリティ的な問題ですか?

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

QFの説明をあちこちで読んだのですがfreezeってなんですか?
377nobodyさん:2006/05/04(木) 20:58:07 ID:???
動いたら撃つぞだっけ?
378nobodyさん:2006/05/04(木) 21:11:33 ID:???
つまんね
379nobodyさん:2006/05/05(金) 03:45:29 ID:???
>>372
371じゃないけどなぜQFを捨てた方がいいと思ってる??
他にいいのがあるなら知りたいと思って。

380nobodyさん:2006/05/05(金) 05:12:05 ID:???
>>378
わからずに死んだ奴もいるんだから、それで片付けるなよ
381nobodyさん:2006/05/05(金) 10:40:02 ID:???
>>376 >>380
>>377は俺じゃねえw
非推奨なのは将来的にサポートされないからだっけ
freezeは各エレメントのリクエストをhiddenで
埋め込んだ状態にする、確認画面とかで使う

>>379
うーん、多機能なだけに全部QFでやろうとすると
QFのコードがMVCの色んなとこに分散しちゃうような気がする
組み方が悪いだけかもしれないけど
チーム内全員がQFを熟知してるならいいけど
0の状態から完全になじむのには時間のかかるパッケージだと思う
382nobodyさん:2006/05/05(金) 16:48:20 ID:???
>>381
なるほど。細かい説明サンクス。

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

fileは、セキュリティ的に問題があるのかと想像していたのだが
そういう意味ではなかったのか。
383nobodyさん:2006/05/06(土) 00:29:52 ID:???
Maple で Filter_QuickForm なんてのを自作してやってるけど
分散するって感じにはならないなぁ
Filter で QF のオブジェクト自体と画面遷移を管理
エレメントはロジックの方で作成〜みたいな
まぁつまりやり方次第であって QF 使ったら必ず MVC が汚くなるとかそういうことじゃないぞと

学習コストがけっこうかかる点は同意
あとJSを自動で吐く魅力にも激しく同意w
384nobodyさん:2006/05/06(土) 22:04:49 ID:???
>>383
確かにうちでもMVC的には問題ない

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

ところでCSRF対策のトークンをhiddenに仕込んでいるのだが受け取り側で
hiddenだけチェックしてくれないのだけどどうしてる?
385nobodyさん:2006/05/06(土) 22:32:16 ID:???
情報はもうソース読むしかないってのがちょっとね……
まぁほとんどのPEAR物はそんな感じな気もするけど

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

ビミョーに意味がわからないが
フォームの hidden 要素に初めから固定で値を入れておきたい時は
setConstants() を使って入れてる
……ってそういう話じゃなく?
386nobodyさん:2006/05/06(土) 22:47:00 ID:???
addRule('hidden')って実装されていないらしいので、トークンの照合ができないのです。

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

これができなかったのです。
387nobodyさん:2006/05/07(日) 02:20:02 ID:dJnoXYUq
数値としてのminとmaxのチェックがデフォルトで無いのはなんとかならなかったんだろうか
388nobodyさん:2006/05/07(日) 11:38:03 ID:???
>>386
理解した
hiddenの値がどうこうというより,
固定値と入力値との数値比較チェックがデフォルトで Rule として搭載されていないってことね

HTML_QuickForm_Rule_Compare や HTML_QuickForm_Rule_Range をベースに
固定値との比較をするような Rule を作ってしまえば簡単なんだけど
いちいち addRule() するだけでも面倒だよね……
389nobodyさん:2006/05/07(日) 22:28:08 ID:???
むしろちゃんと説明してなかったかも

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

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

ということです。
addFormRule() を使うという手もあるかな?
うーん、よくわかんない...
390nobodyさん:2006/05/07(日) 23:03:47 ID:???
>>389
たぶんその通りに理解できてると思うが.
addFormRule() なら何でもアリだね.

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

みたいのを addFormRule() する,と.
(テキトーに書いたので動かして確認はしてません)
391nobodyさん:2006/05/07(日) 23:15:10 ID:???
>>390
早速試してみましたができませんでした…

マニュアル読んでもaddFormRule()の使い方がわからんのですよね。
引数のmixedはどう使うのかと…
392nobodyさん:2006/05/08(月) 00:01:43 ID:???
ソース見てやっとわかった。
マニュアル見ても書いてないんだもんなー。

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

オブジェクトとメソッドで渡せるようだ
393nobodyさん:2006/05/08(月) 07:44:43 ID:ZvSis4Rx
394nobodyさん:2006/05/08(月) 08:17:28 ID:???
流れぶった切ってすまんが、ドキュメントの有無も
そうなんだけど、Pear パッケージはテストを必ず
つけろってルールにしてくれんかなと思う。

CPAN とのいちばんの違いはもちろん量だけど、
質の違いはテストの有無に起因するんじゃないかと
思う今日この頃。
395nobodyさん:2006/05/08(月) 11:24:03 ID:???
>>393
Thanx. かなり検索しているけど知らなかったいい資料ですね

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

あー、QFってこういうところマンドクセ
396nobodyさん:2006/05/08(月) 12:54:43 ID:???
>>394
ん、テストは各パッケージについてるよ
397nobodyさん:2006/05/08(月) 18:05:21 ID:???
>>394

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

Spreadsheet_Excel_Writerで、データを落とし込んだファイルにパスワードをつけることはできますか?
要はSaveAsメソッドの設定ができるかどうかってことなのですが・・・
どうにも資料が見当たらないので、何か情報をお持ちの方がいらっしゃったら教えてください。
399nobodyさん:2006/05/11(木) 14:31:52 ID:???
ソース読んだらいいじゃない。
400nobodyさん:2006/05/11(木) 15:45:09 ID:???
>>398
ないよ
xlsのファイルフォーマット解析して自分で実装
401nobodyさん:2006/05/11(木) 17:32:00 ID:???
分からないなら答えなくていい
402nobodyさん:2006/05/11(木) 17:48:52 ID:???
【意味無し黄金パターン】

質問掲示板に

質問する

「自分で調べろ」

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

質問する

「ソース読め」
403nobodyさん:2006/05/11(木) 18:38:40 ID:???
>>402
どっちも同じだろ
得意げに知ったかぶりやがってワロス
404nobodyさん:2006/05/11(木) 20:31:52 ID:???
「PEAR入門」に乗っているQuickForm_Controllerの
wizard.phpの住所のところが文字化けする。

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

日本語関係だったらまだわかるんだが。
405nobodyさん:2006/05/11(木) 21:18:03 ID:???
ソース読んだらほんとにすぐにわかることって多いですよ。
初心者でもトライしてみる価値はあるんじゃないでしょうか。

とか書いてみるテスト
406nobodyさん:2006/05/11(木) 21:21:19 ID:???
>>405
いや、それマジで勉強になるよ。初心者こそやるべきだと思う。
スポーツの世界でもよく言うが、「見るのも勉強」ってほんとだと思う。
それに、書いてあることが解るようになるとなんだか嬉しいし。
407nobodyさん:2006/05/11(木) 21:35:10 ID:???
じゃあLinuxのソース読んでバグさがしてくれ。
408nobodyさん:2006/05/11(木) 21:40:27 ID:???
>>407
お前のような奴がいるからペチパーは馬鹿にされるんだよ・・・。
409nobodyさん:2006/05/11(木) 21:42:53 ID:???
ピーチクパーチクうるせーぞ
410nobodyさん:2006/05/12(金) 07:32:16 ID:???
>>407
CのソースでもPHPのソースぐらいならたまに見るけどLinuxは見る気もしないです
411nobodyさん:2006/05/12(金) 14:15:54 ID:???
ビーチクビーチクなめてーぞ
412nobodyさん:2006/05/12(金) 14:26:06 ID:???
>>398
そもそもファイルにパスワードを付ける必要性は?
それぞれにパスワードつけて管理できんの?
つーかファイルにつけなくてもいーんじゃね?
そんな大事なもんだったら別の面でセキュリティ考えた方がよくね?
とかどうだい
413nobodyさん:2006/05/12(金) 19:18:04 ID:???
>>412
念には念つー意味じゃありじゃね?
414nobodyさん:2006/05/13(土) 15:23:27 ID:???
Spreadsheet_Excel_Writerてもうメンテしてないんじゃなかったっけ

と思って見に行ったら年末にbetaが出てたのね
415nobodyさん:2006/05/15(月) 01:18:18 ID:???
PHPで片っ端からパスワード試すスクリプトでも書けば突破できそうな悪寒。
416398:2006/05/15(月) 10:16:25 ID:???
念には念を。で正解だと思います。

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


個人情報がどーだこーだといわれる時代ですから。
417nobodyさん:2006/05/15(月) 15:27:53 ID:???
まったく使ったことないけどWorksheet::protect()は?
418nobodyさん:2006/05/17(水) 23:56:50 ID:???
SSL証明は使わないんだね。何か根本的な所がダメな感じ。
419nobodyさん:2006/05/18(木) 11:32:52 ID:???
更新ping を送信、受信する専用パッケージってないですよね?

XML_RPCかな。
420nobodyさん:2006/05/20(土) 11:06:26 ID: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
421nobodyさん:2006/05/21(日) 00:35:31 ID:???
>>420
そうです。マニュアルぐらい読んだらどうかね
422nobodyさん:2006/05/21(日) 08:53:10 ID:???
>>421 いい加減なこと書かないで下さい。

自己レスですが、PEAR::DBのバージョンが古かったようで、
最新バージョンに上げてもらったら本来の動作になりました。
423nobodyさん:2006/05/21(日) 22:20:02 ID:???
>>422
いいかげんなのはお前。
自分でググレ。
このスレで質問なんかするな。

>>1-1000 全員な。
424nobodyさん:2006/05/22(月) 00:15:18 ID:???
>>422
こいつはひどい。釣りにしてもヒド過ぎるレスだ。
425nobodyさん:2006/05/22(月) 10:50:10 ID:???
PHP使ってる香具師って頭悪いなあ。
426nobodyさん:2006/05/22(月) 12:40:43 ID:???
ゴメンヨ・・・
427421:2006/05/22(月) 20:39:50 ID:???
初心者が背伸びしたかっただけなんだよ!
それをガタガタといちいちケチつけやがって!
初心者をなめてんじゃねーぞ!
かかってきやがれゴルア!
428nobodyさん:2006/05/22(月) 21:20:35 ID:???
ここは初心者を袋叩きにするスレですか?
429nobodyさん:2006/05/23(火) 03:59:01 ID:???
>>425
ぜひ頭いいとこ見せてください!
430nobodyさん:2006/06/02(金) 09:48:05 ID:???
phpspotの中の人が書いた本とか、このスレとか読んで
ADOdbを使おうと思うのですが、
> ADODBの最強な点はダイナミックリンク可能な点
この“ダイナミックリンク”って具体的に、どういう使いかたですか?
431nobodyさん:2006/06/02(金) 11:54:14 ID:???
adodbはPEARではないという件に関して

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

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

とやってみましたが、何か違うような気がしてきました。
433nobodyさん:2006/06/04(日) 20:07:36 ID:???
それでいけるはずだけどな
434nobodyさん:2006/06/05(月) 11:36:25 ID:Wgk7hZcJ
PEAR::DBのプレースホルダ ? の自動クオートってquotesmart()じゃないの?
ソース読んでる方おしえてくださいませ
435nobodyさん:2006/06/05(月) 13:00:34 ID:82tWBB6m
PEARをインストールしたいのですが、c:\php\go-pear.batを実行しても
ダンマリになります。何か考えられる原因が有ればおしえていただけ
無いでしょうか。。。

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

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

環境は、WindowsXP SP2、PHP5.1.4です。
436nobodyさん:2006/06/05(月) 13:12:43 ID:???
普通にネット繋がってないとか?
437nobodyさん:2006/06/05(月) 14:06:54 ID:???
セキュリティソフトとか?
438nobodyさん:2006/06/05(月) 16:15:22 ID:???
普通にファイヤーウォール機能が有効になってるんだろう。SP2だし。
許可しないと接続できないよ。

やりかたはウィンドウズ板で訊くか、メーカに訊くか、マイクロソフトにでも訊いてくれ。
439435:2006/06/05(月) 20:29:10 ID:???
SP2のファイアウォール忘れていました…

ひとまず go-pear.php というのがあったのでそちらを試したところ
インストールできました。
440nobodyさん:2006/06/06(火) 07:42:26 ID:???
go-pear.batの中身みた?
441nobodyさん:2006/06/06(火) 17:56:12 ID:???
Net_CDDBってご存じないですか?

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

ご存じの方は、どうやってCDDBにアクセスして出力するか
教えていただけないでしょうか?
442nobodyさん:2006/06/06(火) 20:09:51 ID:???
>>441
Net_CDDBはalpha版なんだよ。
alpha版ってのは開発途中で脆弱性なんかもはらんでいるし、
ある程度わかってる人間が試用してバグなんかをフィードバックするもんなんだよ。

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

それでも使いたいなら
http://pear.php.net/package/Net_CDDB/docs/latest/
を読んで頑張れ。
443nobodyさん:2006/06/06(火) 20:10:22 ID:???
そもそもCDDBってあんまり信用性ないけど大丈夫な用途なの?
444nobodyさん:2006/06/06(火) 20:58:04 ID:???
見た感じCDのdiscid?からデータを取得してるみたいだけど。
アーティスト名やアルバム名とかからも検索出来ないとあんまり使い道ないんじゃないの?
445nobodyさん:2006/06/06(火) 21:39:57 ID:???
CDDBの有用性や用途自体はここで議論する内容じゃないな
446nobodyさん:2006/06/07(水) 00:13:00 ID:???
あきらかに思いつきでCDDBに飛びつこうとしてる様には見える。
地道に手でデータ入力しないと使い物に成らないことは多い。
447nobodyさん:2006/06/07(水) 01:37:05 ID:y49n2VPp
>>430
adodb-extのこと
エンジン部分がcで書かれてる
448nobodyさん:2006/06/07(水) 09:50:37 ID:???
>>447
>>430ではないが、その拡張を使ったらどの位早くなるか知ってる香具師いる?
449nobodyさん:2006/06/07(水) 12:02:25 ID: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での書き方
を教えて頂きたく存じます。宜しくお願いします。
450nobodyさん:2006/06/07(水) 13:25:11 ID:???
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 )');
と書けば上手くいくと思う。

どうかな?
451nobodyさん:2006/06/07(水) 21:13:32 ID:Ho01fxGO
>>450

>>449です。出来ました!!ありがとうございます。
452nobodyさん:2006/06/09(金) 20:53:34 ID:???
少し質問させてください。

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

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

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

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

長くなりましたが、お答え願えれば幸いです。
最後に、もうひとつ質問なのですが、同システムをPerlでやろうとした場合、
PHPで行うより簡単になりますか?
453nobodyさん:2006/06/09(金) 21:06:47 ID:???
>>452
すれ違い
454nobodyさん:2006/06/09(金) 22:35:31 ID:???
455nobodyさん:2006/06/09(金) 22:38:54 ID:???
>>452
ぐぐれば腐る程サンプルでてくるよ
456nobodyさん:2006/06/11(日) 15:11:27 ID:???
>>453
すみませんでした。
457nobodyさん:2006/06/12(月) 02:35:54 ID:???
HTML_Quick_Form_Controllerが何もうれしくない件について
http://pear.php.net/manual/ja/package.html.html-quickform-controller.intro.php

これ理解するくらいなら、自分でコントローラ作った方がマシじゃない?
使ってるやついたらHQFCのいいとこを教えてくれ。
458nobodyさん:2006/06/13(火) 00:45:56 ID:???
世の中には自分で作れない馬鹿も存在するし(w
459nobodyさん:2006/06/13(火) 00:49:11 ID:???
コントローラを自分では作れないけど
この小難しい HQFC を理解して使える……ってのも
馬鹿の程度がかなーり微妙だよな
460nobodyさん:2006/06/13(火) 02:26:47 ID:???
>>459
同感。
小難しい HQFC を理解して使える馬鹿の登場を待とうか。
なんて、あおってみたりするテスト
461nobodyさん:2006/06/13(火) 09:36:39 ID:???
PEARってなんて読むの
462nobodyさん:2006/06/13(火) 09:48:21 ID:???
ドンブリ
463nobodyさん:2006/06/13(火) 12:09:51 ID:???
>>462
嘘教えちゃだめでしょ

>>461
クスコ
464nobodyさん:2006/06/13(火) 12:36:45 ID:???
>>461
サルスベリ
465nobodyさん:2006/06/13(火) 13:15:57 ID:???
Perl使いはPEARと書いてうんことよみます
PHP使いはPEARと書いてピアーとよみます
466nobodyさん:2006/06/13(火) 15:37:05 ID:???
ピアーだとpeerだけどね。和製英語じゃ恥ずかしいよ。
467nobodyさん:2006/06/13(火) 16:31:37 ID:???
洋ナシのことだから
ペアーでいいんじゃない

468nobodyさん:2006/06/13(火) 16:33:31 ID:???
どんなオチが来るのかと思ったら、普通に言っちゃったね・・・
469nobodyさん:2006/06/13(火) 17:48:06 ID:???
用無し
470nobodyさん:2006/06/13(火) 19:04:20 ID:???
誰がうまいことを言えと
471nobodyさん:2006/06/14(水) 11:24:21 ID:???
ペアはpairだが。ここの住人は英語が使えないな。
472nobodyさん:2006/06/14(水) 12:05:34 ID:???
きのうの昼下がり、対向車とすれ違うのが難しい狭い道路でのできごと。
対向車と鉢合わせ(↓な感じ)

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

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

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

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

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

   ∩___∩
   | ノ      ヽ
  /  ●   ● | ベア──!!
  |    ( _●_)  ミ
 彡、   |∪|  、`\
/ __  ヽノ /´>  )
473nobodyさん:2006/06/14(水) 16:59:31 ID:???
アイアムヒアー
474nobodyさん:2006/06/14(水) 19:17:59 ID:???
>>471
片仮名だとそれ以外言い方なかろう
475nobodyさん:2006/06/15(木) 10:33:44 ID:???
くるくるパー
476nobodyさん:2006/06/15(木) 13:37:41 ID:???
んで結局ピアー、ペアーどっちなの?
477nobodyさん:2006/06/15(木) 15:02:27 ID:???
>>476

ttp://pear.php.net/manual/ja/introduction.php
> 果物の梨と同じように(「ペア」と)発音します。

梨↓
ttp://dictionary.goo.ne.jp/search.php?MT=pear&kind=ej&mode=0&base=1&row=0
478nobodyさん:2006/06/15(木) 15:05:14 ID:???
漏れは ペア 派
479nobodyさん:2006/06/15(木) 15:49:12 ID:???
激しくDDI
480nobodyさん:2006/06/15(木) 18:03:54 ID:???
漏れは今poorだ。金くれ。
481nobodyさん:2006/06/15(木) 18:16:56 ID:???
480 nobodyさん sage 2006/06/15(木) 18:03:54 ID:???
漏れは今poorだ。金くれ。
482nobodyさん:2006/06/15(木) 21:20:04 ID:???
Spreadsheet_excel_writerを試用してるんですが、
セルに数値を入れるときカンマ区切りで表示する方法ないですかね?
NumFormatでもできないようなので、PHP側でnumber_formatして
代入しているのですが、office2003のexcelで開くと
文字列として認識され激しく鬱です。
当然関数も使えなくなりますし…
483nobodyさん:2006/06/15(木) 22:42:31 ID:???
>>482
void Format::setNumFormat (integer $num_format)
484482:2006/06/15(木) 23:35:37 ID:???
>>483
恥ずかしながらそのメソッドのマニュアルを見ても、
カンマ区切りのやり方が思いつかないんですが・・・。

ソース読まなきゃだめですか?
485nobodyさん:2006/06/16(金) 03:02:14 ID:???
PEARのライブラリって、Zendの人が作ったものの割合はどれくらいなんだろう?
なんかもうひとつイマイチなものが多かったりするんだが、
Zendの開発力ってあの程度のものなのかな。
486nobodyさん:2006/06/16(金) 03:34:33 ID:???
PEARの人って、
・元々PHP本体や拡張やってた人
・Zendの人でPHPの本体、特にZEやってる人
と余りかぶってない気がする。PECLの方は、元々は
拡張でやってたのをPECLに出したものが多いけどね。
487nobodyさん:2006/06/17(土) 13:02:44 ID:???
あれ、pear.php.netの鯖おちてるぞ
488nobodyさん:2006/06/17(土) 15:04:46 ID:???
>>487
日常茶飯事だからいちいち報告しなくてもいいよ。
489nobodyさん:2006/06/18(日) 15:11:03 ID:???
php使ってるからね。
検索エンジンが来たら落ちます。orz
490nobodyさん:2006/06/19(月) 16:42:02 ID:???
いつの間にかHTML_QuickForm2なんてのがある
491nobodyさん:2006/06/19(月) 16:46:27 ID:???
>>490
なにーーーーー
1との互換性はあるのか?
ファイルのアップロードはサポートされるのか?

ちょっといってくる
492nobodyさん:2006/06/19(月) 17:09:57 ID:???
http://pear.php.net/package/HTML_QuickForm2
The package development is currently in planning stage.

...orz

待つか
493nobodyさん:2006/06/19(月) 18:02:43 ID:???
1と同じ機能らしいけどどうだろ
欲しい機能ある?

one time token実装して欲しいなー
494nobodyさん:2006/06/21(水) 12:59:40 ID: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
というエラーが出てしまうのですが、どこのパーミッションを変えればよいのでしょうか?
495nobodyさん:2006/06/21(水) 13:20:26 ID:???
/usr/lib/php/ ディレクトリか、
/usr/lib/php/.lock のファイルのどちらか。

まずは .lock を消して試すことだね。
496nobodyさん:2006/06/21(水) 19:17:43 ID:???
レンサバでPEARを使うにはどうすればいい?誰か教えて
497nobodyさん:2006/06/21(水) 19:40:50 ID:???
>>496
管理にお願いするか

自分で書き込めるディレクトリ(DocumentRoot外が望ましい)に手動で置いて
includ_pathを通す。
498nobodyさん:2006/06/21(水) 21:32:47 ID:???
>>494
sudo
499498:2006/06/21(水) 21:37:25 ID:???
あ、ごめん。質問内容が違ってたね

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

$form->addGroupRule("pay", array(
"money"=>array(
array("金額は必須入力です。","required"),
array("金額は数字のみで入力して下さい。","numeric")
)
));
502nobodyさん:2006/06/22(木) 20:39:31 ID:5nFH6Fdq
>>496

telnetとかつかえる?

方法はいろいろあるみたい。
http://www.go-pear.org/manual/ja/installation.shared.php

さくらでは、普通にpear install  -o PAER でローカルコピーできた。
ほかのとこでは、
-bash-2.05b$ lynx -source http://pear.php.net/go-pear | php4
とかいう感じでいけそうだった。
503nobodyさん:2006/06/24(土) 08:49:42 ID:???
PEAR にもよるけど、
単純にファイルコピーで使えたりするしね。
504nobodyさん:2006/06/24(土) 14:46:40 ID:???
>>503
手動でコピー(展開)してパス通してたら使えないの有るの?
知ってるなら具体的に教えて。
なんかの参考になるかもしれんし
505nobodyさん:2006/06/24(土) 17:53:54 ID:???
>>504
単純に外部ライブラリに頼るものじゃね
GD前提のモジュール(あるか知らないけれど)とかがあるとして
シェル使えなくてGDがレン鯖にも入ってなくて、
サポートもされないならそれは使えない
もちろんそれはPEAR自体の問題ではないけどね
506nobodyさん:2006/06/25(日) 02:29:16 ID:???
pear installはできるのにpear list-allができん、今まで問題なかったのになんじゃこりゃ。
原因分かる方おしえてくだされ

XML error at line 1, check URL
Invalid return payload: enable debugging to examine incoming payload
507nobodyさん:2006/06/25(日) 13:35:09 ID:???
pear list-upgrades してみるとか。
508nobodyさん:2006/06/25(日) 14:48:24 ID:???
pear list -a
は出る?
509nobodyさん:2006/06/25(日) 15:59:40 ID:???
>>507,508
ありがとう、無事できました。
upgrade-allでupgradeできたと思ってたんだけど、list-upgradesしたらどれもアップグレードできてませんですた。
で、PEARとXML_RPCを個別で指定してアップグレードしたところchannelがなんたらかんたらと言われて、
それにしたがったところ動くようになりました。
510nobodyさん:2006/07/11(火) 19:31:23 ID:???
PEAR::DB
This package been superseded by MDB2 but is still maintained for bugs and security fixes

MDB2 使うぐらいだったら、PDO の方が良いような…。
511nobodyさん:2006/07/19(水) 02:41:49 ID:bvrYbrpe
Services_Amazon(ver0.5.0)使ってみたんですけど、
複数キーワードの場合どう指定すればいいのかわからんです。
おしえてえらいひと

ソースはこれまんま使わせてもらったです
ttp://dozo.rgr.jp/log/eid194.html
512nobodyさん:2006/07/19(水) 03:02:13 ID:???
自分で拡張しないとダメでしょ。自力で弄れないならver1.0まで待てば?
漏れなら単発で引いて、自分でマージ。
513nobodyさん:2006/07/20(木) 14:43:10 ID:9HfxuTZk
PEARインストールし、PEAR::DBを試そうとしています。
マニュアルで見ると、なにごともDB.phpのインクルードから的な感じで
説明なくそうなってますけど自分の環境にはDB.phpがありません。(インストール失敗してる?)
エラーもその旨出ます("DB.phpが見つからない")

おききしたいのは、インストール時に「DB.php」というファイルが生成されるのか、
phpをインストールしたときのように、なにか別のファイルの名前を変更するなどして自分でつくるとか、
そのあたりどういった具合になるんでしょうか。
環境はWinXPのsp1、phpは5.1.4です。
514nobodyさん:2006/07/20(木) 15:03:18 ID:???
>>513
どうやってインストールして、どのようにインストールが成功したと判断したの?
pear listで表示される?

表示されるなら、PEARのフォルダがinclude pathに含まれていないんじゃないかな?
515513:2006/07/20(木) 17:26:23 ID:???
>>514
ありがとうございます。
pear listではパッケージの一覧が表示されますし(すべて"安定"との表示)、
include_pathも確認済みです。

インストールはコマンドプロンプトからhttp://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が見つからない、という内容のままです・・・
516nobodyさん:2006/07/20(木) 17:55:03 ID:???
>>515
一見問題なさそうだけど・・・。

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

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

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

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

pear install --alldeps モジュール名

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

pear upgrade-all

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

この2つくらいは覚えとき。
519513:2006/07/20(木) 22:11:04 ID:???
>>518
たびたびすいませんー。そのコマンドが心に沁みまする^^
いろいろ学んでいきたいと思ってます。
520nobodyさん:2006/07/23(日) 04:35:31 ID:becjw5iF
横からすみません。
PEAR::Auth使ってるのですが、少し時間が空くとusernameが空になる現象に困っています。
$myAuth->username から $myAuth->getUsername()に変えても直りません。
お助けください><;;
521nobodyさん:2006/07/23(日) 04:43:40 ID:???
$myAuth->getAuth()はtrueが帰って来ています。
30分ぐらい(?)他っておくと(アイドルにしておくと)起こるようです。
PHP5で最近pear install Authしました。
522520:2006/07/23(日) 04:56:36 ID:???
訂正します。
時間が空かなくても、ページ移動するごとにログインしている状態(getAuthがtrue)なのにusernameが空になっているようです...
523nobodyさん:2006/07/24(月) 17:55:27 ID:WjQLi7Eq
HTML_Template_Flexy についての質問です。
自宅環境で正常に動作するスクリプトを作ったのですが、レン鯖にアップすると
コンパイルが正常に行われません。

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

このような場合、どのような原因が考えられますでしょうか?
チェックすべき項目などがありましたらご指摘お願いします。
524nobodyさん:2006/07/25(火) 09:30:59 ID:???
自宅環境とレン鯖環境ぐらい晒したら?
ちょっとチェック用のスクリプト作って動作チェックぐらいして無いの?
525nobodyさん:2006/08/02(水) 03:18:27 ID:aylqqE98
すみませんが教えてください。
PEARのDBを使って、DB側で設定されたシーケンス値を
インサート後に取得する方法ってありますでしょうか?

PEARのマニュアルの警告には、シーケンスはDBMS側を使わずに、
PEARの中で管理しろと書いてあるのですが、
やっぱりDB側のシーケンスは使ってはだめなんですかね・・・?
526nobodyさん:2006/08/02(水) 10:38:05 ID:???
>>525
INSERT 前に nextId() を使って、次のシーケンスを取得しておいて
それを INSERT して、その後参照する場面でもそのシーケンスを使いまわす。
527nobodyさん:2006/08/02(水) 12:41:04 ID:???
>>526
やっぱりその手しかないのですよね。
ありがとうございました。
528nobodyさん:2006/08/24(木) 23:34:20 ID: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です。
ご存知の方、いらっしゃいましたら教えてください。よろしくお願いいたします。
529nobodyさん:2006/08/24(木) 23:38:19 ID:???
>>528
t1.data AS t1_data, t2.data AS t2_data,
みたいにエイリアスで別々の名前つけてやって取得すればいけると思う
530nobodyさん:2006/08/25(金) 00:23:23 ID:???
>>529
そのとおりでした。
ありがとうございました。
531nobodyさん:2006/09/09(土) 15:30:02 ID:???
他スレに質問しましたが、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()をなげるしかないのでしょうか。
532nobodyさん:2006/09/09(土) 16:08:57 ID:???
>>531
DB_DataObject の update() は基本的にユニークキーを指定して行なうものだけど
そうでなく自前で WhereAdd() した条件で広範囲に update() する時には
引数に定数をつけて update(DB_DATAOBJECT_WHEREADD_ONLY) してやるとよろしい
533531:2006/09/09(土) 18:22:55 ID:???
どうもありがとです。
たったそれだけのことなのですね。
基本的に2つに一致する条件のものは1つのレコードだけなのですが
まぁこのやりかたで解決しました。
534nobodyさん:2006/09/09(土) 19:19:05 ID:???
解決おめ

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

開発工期を短く済ませるために DB_DataObject で扱いやすいテーブル設計をするとか
邪道っぽいけどとても効果的だったりw
535nobodyさん:2006/09/09(土) 19:34:57 ID:??? BE:340493748-2BP(200)
たしかに、設計としてはアレだけど全部のテーブルに"auto_id"みたいなauto_incrimentを作っとくと便利
536nobodyさん:2006/09/16(土) 22:13:02 ID:???
Requiring E_STRICT 通った
http://pear.php.net/pepr/pepr-proposal-show.php?id=419
PEAR新世紀幕開けか
537nobodyさん:2006/09/17(日) 02:30:59 ID:BzsrnxFm
今度PEARを使うことになったんだけど、PHP5だと
動かないやつとかあるのかな?

いまいち知らんけど、PHP4時代に作られたライブラリ
だと、PHP5で非互換な部分のせいで動かなかったり
するんかな。
538nobodyさん:2006/09/17(日) 16:20:16 ID:???
そんな心配はPHP6になったらまた作り直すことに成るから心配しなくても良いよ。
PHP5時代の資産が未来永劫使える保証すらないから。
539nobodyさん:2006/09/26(火) 16:24:45 ID:???
というけど今のPEARってほとんどPHP4で作られたものじゃないのか?
PHP5で作られたものなんでMDB2みたいな不安定なものばかりだし
540nobodyさん:2006/09/26(火) 17:00:15 ID:???
MDB2はPHP4ベースだし不安定でもない
541531:2006/10/01(日) 07:09:16 ID: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だと無理なのでしょうか。
542nobodyさん:2006/10/01(日) 09:25:45 ID:???
テーブル設計ぐらい示せよ。何となく設計がタコだと思う。
SQL直書きならできそうだけどな。
543531:2006/10/01(日) 11:29:45 ID: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;
544531:2006/10/01(日) 11:38:58 ID:Ge/0d2rj
`birthday` int(3) NOT NULL default '0',

birthdayもとりあえずintegerで。
545nobodyさん:2006/10/01(日) 11:54:05 ID:???
>>531
$hoge->age = DB_DataObject_Cast::sql('age + 1');
ってことかな?

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

とか書いてるけど試してないから実験は自分でやってみてね
546nobodyさん:2006/10/01(日) 12:04:49 ID:???
1レコード限定の更新じゃないUPDATEなら
SQL直書きにしといた方が、他の人が見たときに
ここは全体にかけるUPDATEなんだってわかりやすいと思うけどなあ
O/R mapperはSQL書かずにDB扱うためだけのもんじゃないのに
547nobodyさん:2006/10/02(月) 09:06:19 ID:???
そもそも「年齢」で管理しているのが良くないのでは?
普通は「生年月日」だね
548nobodyさん:2006/10/02(月) 14:32:51 ID:???
「生年月日」をDBに持っといて
「年齢」は取得するSQLだのプログラムだのでその時決定する
ってのがいいんでないかい
パフォーマンス要求厳しい場合は別だけど……
549531:2006/10/03(火) 01:49:42 ID:???
アドバイスありがとうございます。
num、age等はサンプルです。実際にやる場合は547氏のいうとおり
生年月日のほうがよいでしょう。

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

聞き方が悪くて申し訳ありません。
とりあえず試した方法でやってみます。
最悪SQL直で。
550nobodyさん:2006/10/03(火) 17:48:51 ID:???
うーん、例だと全然イメージ湧かないな。何をしたいの?
551nobodyさん:2006/10/03(火) 22:37:28 ID:???
pearのインストールに躓いたので質問させてください。

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

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

設定を間違えているんでしょうか?
552nobodyさん:2006/10/03(火) 22:43:50 ID:???
エラーメッセージは?
553551:2006/10/03(火) 22:55:42 ID:???
>>552
ERROR: The DSP xdebug.dsp does not exist

と表示されます
554nobodyさん:2006/10/03(火) 22:59:16 ID:???
>>553
そのメッセージでぐぐっただけだけどこれは?
http://it-laboratory.seesaa.net/article/20204067.html
555551:2006/10/03(火) 23:43:31 ID:???
>>554
ありがとうございます。これを試してみます。
ところでコンパイル版のインストールってどうすればいいんでしょうか?

installコマンドしか試したことがなく、
検索してもみつからないもので・・・
556nobodyさん:2006/10/03(火) 23:48:23 ID:???
557551:2006/10/04(水) 03:03:08 ID:???
>>556
ありがとうございます!
しかしいろいろ試してみた結果、
php5.1.6に対応したバージョンがないことに気づいてしまいました・・・
558nobodyさん:2006/10/13(金) 01:37:55 ID:???
PEAR::Net_UserAgent_Mobileの画面取得て
対応してないような新機種の時は
どうなるの?
559nobodyさん:2006/10/13(金) 01:50:29 ID:???
対応するの待つか自分でデータ追加しちゃうの
560nobodyさん:2006/10/14(土) 05:37:40 ID:???
まいっちゃう
561nobodyさん:2006/10/14(土) 19:41:11 ID:???
PEAR::Authを利用したログインシステムを作ろうと考えているのですが、
ブラウザを一度閉じても、次回アクセス時までログインを維持して自動ログインできるような機能
(mixiの「次回から自動でログイン」と同じ機能)は使えないのでしょうか?
$myAuth->setExpire(2000000);
$myAuth->setIdle(2000000);
とかやってみましたが、これではダメみたいですね。。。
562561:2006/10/14(土) 21:43:52 ID:???
すみません。その後調べていくうちに、サーバー側の設定が怪しいということがわかり、
php.iniを調べてみたら、session.cookie_lifetimeの値でいけました。
自己解決のスレ汚しすみません。
563nobodyさん:2006/10/16(月) 02:34:42 ID:???
pearコマンドでインストールする際、インストール先のパスって指定出来ないの?
スーパーユーザ権限が無いレンタルサーバなんだけど……。

自分でダウンロードしてホームディレクトリに書庫を展開するんじゃダメかな?
564nobodyさん:2006/10/16(月) 03:20:32 ID:???
スクリプト内でインクルードパスを追加するといい
565nobodyさん:2006/10/20(金) 10:20:50 ID:9mLjL02A
「IP,ユーザーエージェント等の環境変数を見て
検索エンジンクローラーかそうではない一般のユーザーかを
判別する」
といったクラスってPEARでありますでしょうかー。
色々調べたんですがみつからなくて。。。
あ。PEARじゃなくてもいいっす
566nobodyさん:2006/10/20(金) 17:39:42 ID:???
Spreadsheet_Excel_Reader/Writer の情報を追っているうちに
Excel_Reviser (既存のExcelファイルをテンプレートとして読み込んで値を書き換えられる)
の存在を知ったんですが、ダウンロード先がNot Foundになってました。
作者の連絡手段もどこにも見つかりません。(過去ログにあるメルアドは届かなかったし)
誰か持っている方いませんか??
567nobodyさん:2006/10/29(日) 20:36:01 ID:???
Spreadsheet_Excel_Writerでxls吐いてるとある程度の行数(っても30行やそこら)で
Excelが「メモリ不足です」ってダイアログ出して開けなくなる。
やっぱりBIFF8は実用段階じゃないって事なんだろうな。
同じような症状出た人いる?
568nobodyさん:2006/10/30(月) 17:42:07 ID:+kTSWHIU
どなたか xrea のサーバーに XML_sql2xml がインストールできた方いませんか?
どういう依存関係にあるのかわからず、どれをインストールすればいいのかわからないでいます。
どなたかご教授願います。
569nobodyさん:2006/10/30(月) 17:51:50 ID:???
>>568
今XML_sql2xmlのページ見たけど
Dependencies:
* PHP Extension: domxml
* PHP Version: PHP older than 5

PHP5以上でdomxmlが必要なだけみたいだが
570nobodyさん:2006/10/30(月) 18:36:37 ID:+kTSWHIU
>>569
php は 5 の環境で動いています。
domxml は phpinfo で調べたら
DOM/XML enabled
DOM/XML API Version 20031129
と、入っているようです。

http://lab.urume.net/2006,0529,447.html

http://blog.hawklab.jp/item-88.html
を参考にしています。

あと php を cgi モードで動くように .htaccess に
AddHandler application/x-httpd-phpcgi .php
の一行が入っています。

url から叩いて
http://www.example.com/index.php?command=install&pkg=XML_sql2xml&enableJS=1
とすると、

No releases for package "pear/XML_sql2xml" exist
Cannot initialize 'XML_sql2xml', invalid or missing package file

install failed

というエラーが出てしまいます。
571nobodyさん:2006/10/30(月) 19:02:38 ID:???
>>570
XML_sql2xmlがまだbetaだからじゃね?
自分で解決できなさそうだったら
サイトからtgz落としてinclude_pathにアップする方が早いよ
572nobodyさん:2006/10/31(火) 02:01:45 ID:???
>>567
おれもおれも
573nobodyさん:2006/10/31(火) 06:15:34 ID:???
>>572
あー、じゃあやっぱりうちの環境の問題とかではないわけだなぁ。
となるとPerlで出力するとか検討しなきゃ駄目か。
そこだけPerlにすると色々共用できなくなって面倒なんだが
574nobodyさん:2006/11/06(月) 23:55:00 ID:Z3fQNHJB
QFでQFCを使わずに
入力->確認->処理をしたくて

hiddenでmodeを入れたんだけど
同じ名前だとfreezeで前の値になっちゃうっぽいんだけど
「この要素はフリーズしないで」みたいな命令ってある?

QFCをつかうのも大げさかなとおもっただけなので
hidden使わない方法でもいいです。

おしえてくだしあ
575nobodyさん:2006/11/07(火) 02:58:06 ID:???
>>574
hidden で setConstants() とかそういう
576nobodyさん:2006/11/07(火) 11:02:29 ID:???
>>575
ありがとうございます。

setConstantsも試したんですけど
使い方が間違ってました(汗
577nobodyさん:2006/12/02(土) 22:00:57 ID:P18lXKYL
Win版5.2でpearのパッケージマネージャをインストールしようとgo-pear.batを実行したところ下記のエラーが出ました
対処法を伝授下さい。

Are you installing a system-wide PEAR or a local copy?
(system|local) [system] :  ここでEnter

Below is a suggested file layout for your new PEAR installation. To
change individual locations, type the number in front of the
directory. Type 'all' to change all of them or simply press Enter to
accept these locations.

1. Installation base ($prefix) : C:\php
2. Binaries directory : C:\php
3. PHP code directory ($php_dir) : C:\php\pear
4. Documentation directory : C:\php\pear\docs
5. Data directory : C:\php\pear\data
6. Tests directory : C:\php\pear\tests
7. Name of configuration file : C:\WINNT\pear.ini
8. Path to CLI php.exe : C:\php\.

1-8, 'all' or Enter to continue:    ここでEnter
Beginning install...
Configuration written to C:\WINNT\pear.ini...
Initialized registry...

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command.php on line 268

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command.php on line 268

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command.php on line 268
578577:2006/12/02(土) 22:01:31 ID:P18lXKYL
続き

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command.php on line 268

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command.php on line 268

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command.php on line 268
Preparing to install...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.1.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.2.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.4.11.tar...


Warning: Cannot use a scalar value as an array in phar://go-pear.phar/Archive/Tar.php on line 2334

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/Archive/Tar.php on line 2338
Could not get contents of package "". Invalid tgz file.
Cannot initialize 'phar://go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.1.tar', invalid or missing package file

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/Archive/Tar.php on line 2334

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/Archive/Tar.php on line 2338
Could not get contents of package "". Invalid tgz file.
Cannot initialize 'phar://go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.2.tar', invalid or missing package file

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/Archive/Tar.php on line 2334
579577:2006/12/02(土) 22:02:02 ID:P18lXKYL
続き

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/Archive/Tar.php on line 2338
Could not get contents of package "". Invalid tgz file.
Cannot initialize 'phar://go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.4.11.tar', invalid or missing package file

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command/Install.php on line 427

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command/Install.php on line 427

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command/Install.php on line 427

Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/Command/Install.php on line 429

install failed
続行するには何かキーを押してください . . .
580nobodyさん:2006/12/03(日) 00:30:08 ID:???
>>577
俺もgo-pear.batでをまともにインストールできた記憶がない。
素直に ttp://go-pear.org/ を保存して、
php.exe go-pear.org
と実行した方がいいかと。
581577:2006/12/03(日) 02:10:04 ID:???
>>580
うまく行きました。
582nobodyさん:2006/12/04(月) 17:31:22 ID:???
>>565
2,3行で書ける。
583nobodyさん:2006/12/06(水) 12:14:28 ID:gLCC1tJk
PHP4.4.4

PEAR::Mailで
smtp over sslなSMTPサーバを使ってメールを送りたいのですが
________________________
unable to connect to smtp server smtp.xxxx.xxx:465
________________________
となってしまいます。
同じマシン同じ設定ででメーラーで送信することはできます。
コードは下記のようにしてるのですが、
何か足りないのでしょうか。
お知恵をお貸しください。

______________________________________
//(略)
$params = array();
$params['host'] = 'smtp.xxxx.xxx';
$params['port'] = 465;
$params['auth'] = 'CRAM-MD5';//'DIGEST-MD5'や'LOGIN'や'PLAIN'もためしました
$params['username'] = 'xxxx';
$params['password'] = 'xxxx';

$mail =& Mail::factory('smtp',$params);
$res = $mail->send($to,$header,$body);

if ( PEAR::isError($res) )
{
echo $res->getMessage();
exit;
}
______________________________________
584nobodyさん:2006/12/07(木) 17:56:05 ID:???
class Auth における
getAuth() メソッドと checkAuth() メソッドの
違いはなんでしょうか?
585nobodyさん:2006/12/09(土) 08:29:00 ID:???
スパム防止で25番ポートが使えないのなら諦めるべき。
586nobodyさん:2006/12/10(日) 13:19:44 ID:???
PEARのQuickformで詰まってまして解決方法あれば教えてください。
プルダウンメニューの場合DBから引っ張ってきたValueをみて
Selectedされるのは確認したのですが、

DBの別テーブルからkeyで拾って表示させている場合、valueにはkey
がセットされてしまいselectedされないようです。

うまくできる方法はないでしょうか。
587nobodyさん:2006/12/10(日) 13:24:59 ID:u1GQNv5M
age
588nobodyさん:2006/12/10(日) 14:22:33 ID:???
select だったらきちんと key => value がセットされて setDefault() では key で指定できるはずだが
>>586が書いたコードを抜粋して晒してみ
589nobodyさん:2006/12/10(日) 15:19:43 ID:u1GQNv5M
■tableA
key name icon1
0 tanaka 2
1 tanaka 1
■tableB
autonum icon1
0 aaa
1 bbb
2 ccc

tableA 田中さんをDBから引っ張ってきた時
JOIN tableB i1 ON p.icon1 = i1.autonum としているため
 ['userdata']["name"]=> string(6) "tanaka"、 ['userdata']["icon1"]=> string(3) "ccc"
$form->setDefaults(array('icon1'=> $_SESSION['userdata']['icon1']));

テーブルBに登録されているデータをひっぱってきます。
$icon_array = db_get_field_data($conn);(中身:[0]=> string(3) "aaa" [1]=> string(3) "bbb" [2]=> string(3) "ccc")
$form->addElement('select','icon1','名前',$icon_array);
<select name="icon1">
<option value="0">aaa</option>
<option value="1">bbb</option>
<option value="2">ccc</option>
</select>となり、selectedをとれません。

ためしにTableAの値のまま
$icon_array2=array('aaa' => aaa,'bbb' => bbb,'ccc' => ccc);
$form->addElement('select','icon1','名前',$icon_array2);
この場合はselectedされました。当然ながらDB書き込み時に
valueがcccといってしまうので当てはまる物がなく0で更新されてしまいます。
なんとなくつかめていただいたでしょうか。
590nobodyさん:2006/12/10(日) 15:58:03 ID:???
icon1 って名前が数値(0〜2)だったり文字列('aaa'とか)だったりする場合があるのは
QuickForm 云々以前にコードの見通しとかの面でも問題あると思う.

SELECT する時に tableB.icon1 AS icon1_name みたいな感じで別名付けてやるとよかろう.
そうすれば icon1 フィールドは tableA.icon1 が入るので
$icon_array で select 作ってもきちんと setDefaults() が効くはず.
591nobodyさん:2006/12/10(日) 17:07:19 ID:u1GQNv5M
んんん 今こんな感じです。
基本的な事を間違えてるのかな・・

【profile_tbl】
[id][name1][name2][icon1][icon2][icon3]
0 nuko tan 1 2 0
1 oka hatirou 3 2 2

【icon_tbl】
[id][icontype]
0 aaa.gif
1 bbb.gif
2 ccc.gif
3 ddd.gif

[クエリ]
SELECT
p.name1 as name1,
p.name2 as name2,
i1.icontype as icon1,
i2.icontype as icon2,
i3.icontype as icon3,
FROM profile_tbl p
JOIN icon_tbl i1 ON p.icon1 = i1.id
JOIN icon_tbl i2 ON p.icon2 = i2.id
JOIN icon_tbl i3 ON p.icon3 = i3.id

[表示]
nuko tan bbb.gif ccc.gif aaa.gif
oka hatirou ddd.gif ccc.gif ccc.gif
592nobodyさん:2006/12/10(日) 18:01:53 ID:u1GQNv5M
なんとかわかった気がします。phpの処理の中で値を使うとき
profileから引っ張った際、$icon=$data['user']['icon1']で2が入るため
<img src="$icon">が<img src="2">になるので、
リレーションつかってccc.gifをひっぱって表示させてました。
その辺が駄目だったのかもしれません。
593nobodyさん:2006/12/10(日) 18:39:59 ID:???
>>592
そういうこと

そもそもの良くない点は「icon1」というひとつの名前が複数の意味を持ってしまっていることだと思うので
DB から SELECT する際に別名付けてやることで
違う意味のものには違う名前を付けてやると良い,って話やね.

同じ名前(icon1)のまま違う意味(コードだったりファイル名だったり)に使いたいからって
違う内容を入れて使うって発想はよろしくないので,
違う意味のものなら面倒でも違う名前を付けて使い分けるようにしないと.
594nobodyさん:2006/12/10(日) 21:47:57 ID:???
あんまり関係ないけど、
Quickformってライブラリに使われてるって感じがするよねぇ。
595sage:2006/12/12(火) 14:05:01 ID:???
Pagerでページ変更時に変数を保持したいんですが、可能でしょうか?
596nobodyさん:2006/12/12(火) 14:23:36 ID:???
>>595
extraVars
597595:2006/12/12(火) 15:09:53 ID:???
>>596
ありがとうございます。

$params = array(
'itemData' => $myData,
'perPage' => $perPage,
'delta' => 8,
'append' => true,
'clearIfVoid' => false,
'urlVar' => 'start',
  'currentPage' => $start,
'useSessions' => true,
'closeSession' => true,
'mode' => 'Jumping',
'extraVars' => $num,
);
という感じで指定して、$numを使うために途中で

$nownum = $params['extraVars'];

別の変数に格納しました。
ですが、ページ変更後には$nownumが空になってしまいます。
urlには test.php?0=1&start=1という感じで$numは格納されています。
extraVarsから再利用はできないんでしょうか。
598nobodyさん:2006/12/12(火) 16:30:16 ID:???
なんか使い方を間違えてる気が

> ttp://pear.php.net/manual/ja/package.html.pager.intro.php
> クエリ文字列に変数を追加する

Pager が生成する URL の引数に入るだけで
変数への設定は $_GET とかから自前でやらないとだめよ
599595:2006/12/13(水) 09:52:06 ID:???
何度もすみません。

formでpostした$numを

'extraVars' => array('n' => $num),

という感じでパラメータに置いて
$_GET['num']で使おうとしていますが、
post直後はURIにもtest.php?n=1という風になりますが
ページングされたページに飛ぶと変数を保持しておけません。
600nobodyさん:2006/12/13(水) 11:37:43 ID:???
array('n' => $num) なら $_GET[ 'n' ] じゃないの?
もしかして Pager とか以前に根本的なパラメタ渡しとかが理解できてない?
601595:2006/12/13(水) 11:52:52 ID:???
すみません自己解決しました。

if(isset($_POST['num'])){
$_SESSION['num']=$_POST['num'];
}
$num = isset($_SESSION['num']) ? $_SESSION['num']: "";

で、やりたいことが出来ました。

>>600
>array('n' => $num) なら $_GET[ 'n' ] じゃないの?
そうですよね。本来のコードから書き換えて投稿していたので
ミス入力してしまいました。
602nobodyさん:2006/12/13(水) 20:36:35 ID:WrZMw5hy
PearDB使って他のサーバーで動いているOracleに接続したいのですがうまくいきません。

・Web鯖
OS:WindowsXP
httpd:Apache1.3.35
php:5.2.0
pearDB:最新

・DB鯖
OS:CentOS
Oracle:10.2.0

・コード
$this->db =& DB::connect( "oci8://ID:PASS@tcp(IP)/DBNAME" );

・エラーメッセージ
C:\Software\php\PEAR\DB\oci8.php:240 oci_connect() [function.oci-connect]: ORA-12154: TNS:could not resolve the connect identifier specified

phpの吐くエラーをみてるとDB鯖にコネクションできないって感じに思えるのですが…。
sqlplus使っての接続はWeb鯖マシンからできるので、Oracleの設定及びネットワークの問題はないと思います。
php側に外部のホストにつなぎに行く制限をする設定項目なんかがあるんでしょうか?
603nobodyさん:2006/12/13(水) 20:40:01 ID:???
sage忘れスマソ
604nobodyさん:2006/12/13(水) 21:13:07 ID:???
そもそもoci8っつー名前でOracle10サポートしてるかどうか微妙
DBよりMDB2の方がいいかも
605nobodyさん:2006/12/13(水) 23:40:31 ID:???
>>602
hosts にSIDと鯖のIP登録してWin再起動してみ。
606nobodyさん:2006/12/14(木) 22:39:50 ID:nK4PeE4Y
>>604
DB鯖の中で動いてるhttp鯖からは動くんでそれは問題ないかと思います。
下請けでPearDB指定なので…どうしてもダメなら検討します。

>>605
やってみます。環境が会社じゃないと無いので、明日やってみます。
ありがとうございます。
607nobodyさん:2006/12/15(金) 18:47:01 ID:cnQJoip3
>>605
見事に接続できました!!
ありがとうございます。
608nobodyさん:2006/12/16(土) 00:53:19 ID:???
よかったね。
なんで hostsに書かないと接続出来ないのか判らんが、いつもこれにハマる。
教えてエロイ人。
609nobodyさん:2006/12/16(土) 19:59:14 ID:???
ウェブ鯖もリナックス(ユニックス)にしとけば良いのに。
610nobodyさん:2006/12/16(土) 21:05:10 ID:???
なんか頭悪そうだなぁ…
611nobodyさん:2006/12/17(日) 04:01:25 ID:???
リナクス使ってる時点で負けだよ。
612nobodyさん:2006/12/17(日) 10:23:51 ID:???
       プ、プ、プギャープギャプギャプ♪
      \   ププププギャプギャププギャプギャ/
         ♪  (^Д^) ♪
          _m9   )>_ キュッキュ♪
        /.◎。/◎。/|
  <(^Д^)> | ̄ ̄ ̄ ̄ ̄|  |    ヽ(^Д^)ノ
    )  )  |       |/    ノ ノ
((((  > ̄ > )))) <(^Д^)9m ((( < ̄< )))) 
              )  )
         (((  > ̄ > ))))
613nobodyさん:2006/12/17(日) 13:31:55 ID:???
Tronが勝ち組
614nobodyさん:2006/12/19(火) 03:53:23 ID:???
PEARて重くなるだけじゃん
いわゆる手抜きでしょ
バカじゃねーの
しんでこい
615nobodyさん:2006/12/19(火) 03:58:24 ID:???
がんばれや
616nobodyさん:2006/12/19(火) 06:55:14 ID:???
軽くて使いやすいフレームワークって何?
617nobodyさん:2006/12/19(火) 07:53:04 ID:???
まさかAPCも使わずに重いとか言ってるんじゃ無いだろうな?
618nobodyさん:2006/12/19(火) 09:06:47 ID:???
APC 使ったぐらいで軽いとか言えるお前が羨ましいな
619nobodyさん:2006/12/19(火) 09:27:00 ID:???
APC重い。足の上に落としたことあるよ(T_T)
620nobodyさん:2006/12/19(火) 09:38:14 ID:???
えー!
621nobodyさん:2006/12/19(火) 10:18:47 ID:???
小指ぶつけたことがあるな。
622nobodyさん:2006/12/19(火) 14:25:10 ID:???
そういやそろそろバッテリ交換しないとなぁ……
623nobodyさん:2006/12/19(火) 17:56:52 ID:G+HsmUGP
QuickFormのcheckboxのvalueってどのようにして設定すればいいのでしょうか?
624nobodyさん:2006/12/19(火) 18:28:48 ID:???
>>623
「QuickFormのcheckboxのvalue」でぐぐる
625nobodyさん:2006/12/20(水) 23:11:53 ID:???
pearってセッション管理が楽になったりはしないね。
諦めて他の方法使います。
626nobodyさん:2006/12/21(木) 00:46:59 ID:???
PHPに最初から備わっているセッション管理機能ではダメ?
627nobodyさん:2006/12/22(金) 02:45:39 ID:???
pear/PHPの下見たら、Session.phpが居ませんよ。orz
628nobodyさん:2006/12/22(金) 12:39:04 ID:ujx0PyDC
結構簡単そうなことなんですけどググッても見つからないので助けてください
QuickFormで'test'にデフォルトの値を渡したい時
例えば
$form->addElement("text","hoge","コメント",array("size"=>80,"value"=>"デフォルトのコメント"));
とやれば出来るのですが
textareaのときは、どうするのでしょうか?
textareaってvalueじゃなくタグの中身じゃないですか?<textarea>ここ</textarea>
attributesで指定できるのでしょうか?

お願いいたします。
629nobodyさん:2006/12/22(金) 12:52:53 ID:???
>>628
addElementのあと、setValueでどう?
630628:2006/12/22(金) 14:17:26 ID:???
>>629
できました!
setValueでは、何故か分かりませんがうまくいかず
setDefaultsでできました。

この辺を参考にしました。
ttp://www.bnote.net/php/pear/p_07_setdefaults.shtml

おかげさまでぐぐって見つけることが出来ました。
ナイスヒント
631nobodyさん:2006/12/22(金) 14:30:40 ID:???
PEARのアーカイブを解凍してinclude_pathを通して使う場合

/include_path/ ┳ PEAR/ ディレクトリ以下全部
.         ┣ PEAR.php
.         ┗ System.php

追加したいパッケージは解凍後
/include_path/ or /include_path/PEAR/
にブチ込む感じで大丈夫でsぢょうか?
632nobodyさん:2006/12/22(金) 23:08:18 ID:???
>>631
include_pathの直下の方でOK
633nobodyさん:2006/12/23(土) 02:04:58 ID:???
pear自体寄せ集めだからねえ。

それより自分でまともなスクリプト書いて、path通せば問題ない。
所詮、プログラムできないウェブデザイナ向けの釣り餌でしょ。
634631:2006/12/23(土) 02:14:55 ID:???
>>632
そーすか。ありがと。
とりあえず自分の使ってみた感じではweb interfaceが使えない以外には
これで問題ない気がするんですが、これでマズイというか問題になるような
点とかってありますかね?
インストーラを使うより解凍して設置してパス通して、の方が正直楽なような気がして。
635631:2006/12/23(土) 02:39:07 ID:???
>633
なるほど。
> 手動インストールを行うためには パッケージがどのようにして生成され、
> インストールの際にどのようなプロセスが 実行されるかについての詳しい
> 理解が必要となるからです。
ってあったので気になったのですが、パスさえ通ってれば実行には問題なさそうですね。
ありがと。
636nobodyさん:2006/12/27(水) 00:47:24 ID:???
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
★☆チェ・ジウについて語るPart179☆★ [海外芸能人]
一時間阻止されなかったらキャラを持ち帰る 361人目 [ゲームキャラ]
コンパクトフラッシュ(CF)は何処のが良い パート19 [デジカメ]
637nobodyさん:2006/12/27(水) 10:19:40 ID:???
>>636
アマゾンさんには程遠い検索結果ですねw
がんばつてくらはい。
638nobodyさん:2006/12/28(木) 01:11:57 ID:???
HTTP_Requestのタイムアウトバグってまだ直ってないの?
639nobodyさん:2006/12/28(木) 01:12:27 ID:sdbBpoeX
>>638
kwsk
640nobodyさん:2006/12/28(木) 01:30:54 ID:???
>>639
ttp://sandman.s6.xrea.com/nucleus/index.php?itemid=48
1年半前だからさすがに直ってるだろうと思ったら、まだ直ってなかったのかタイムアウトできない。
641nobodyさん:2006/12/28(木) 12:44:31 ID:s71HHmdJ
>>640
作者に通報したら?
642nobodyさん:2006/12/28(木) 17:58:25 ID:???
やっぱバグだったのかー。結局wgetに逃げたよ。。
643nobodyさん:2006/12/28(木) 20:22:13 ID:???
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
★☆チェ・ジウについて語るPart179☆★ [海外芸能人]
一時間阻止されなかったらキャラを持ち帰る 361人目 [ゲームキャラ]
コンパクトフラッシュ(CF)は何処のが良い パート19 [デジカメ]
644nobodyさん:2006/12/29(金) 04:44:23 ID:???
ミクシ以下って評価が嫌なFOX。
645nobodyさん:2006/12/29(金) 16:01:50 ID:???
QuickForm_ControllerのActionProcessで最後に
$page->controller->container(true);
みたいにセッションをクリアすると、
submitを2回以上クリックした場合1ページ目が表示されちゃう・・・
646nobodyさん:2006/12/29(金) 17:00:33 ID:2C2HG/T8
>>642
kwsk
647nobodyさん:2006/12/29(金) 22:42:09 ID:???
>>645
QFCの方はよくわからんけど
それむしろ正しい動作じゃね?
submit2回連続でそうなるのが嫌なら
javascriptでonsubmit時にdisabったりすればいいんじゃね?
648nobodyさん:2006/12/30(土) 11:57:35 ID:???
確かに正しい動作だよね。
JavascriptはUAに依存するからあまり使いたくないす。
なにかいい方法はないものか・・・
649nobodyさん:2006/12/30(土) 12:02:33 ID:???
>>648
依存性を吸収するライブラリ使えば実用上差ほど問題ないと思うが
650nobodyさん:2006/12/30(土) 13:02:25 ID:???
pear upgrade-allが失敗してしまう。
651nobodyさん:2006/12/30(土) 15:43:46 ID:???
>>649
Javascriptをオフにしてる人もいると思うんで

>>650
鯖落ちてたっぽい
652nobodyさん:2006/12/30(土) 15:49:39 ID:???
>Javascriptをオフにしてる人もいると思うんで

っていう言い訳よく聞くんで鵜呑みしてたけど、
Google Analytics使うようになって、そういう人が2%くらいだって
知ったので、なんか微妙…。切捨てちゃってもいいかなぁ…て最近思う。
653nobodyさん:2006/12/30(土) 20:25:05 ID:???
>>652
わかってて切ってるやつがほとんどだから、noscriptで注意書き書いて切り捨てればいいだろ
654nobodyさん:2006/12/31(日) 00:13:26 ID:???
>>652
仮に2%の人がjsを切っていたとしたら
一万人の会員がいるサイトの場合200人は意図しない動作をさせる可能性があるわけで。
もし1ページ目に戻されたユーザーがもう一度送信したら困るっしょ。
クレームの処理は金と時間がかかるから(ry

>>653
フォームに毎回noscriptで注意書き書くくらいならサーバーサイドで処理した方がスマートでは?

で、一応できました。
ページを一つ多くして最後のページの中から
$this->handle('process');
みたいにプロセスを呼び出せば最初のページに戻されない。
もっといい方法ないすかね・・・
655nobodyさん:2006/12/31(日) 15:32:47 ID:???
jsが動かなくしてるブラウザを使ってる香具師も居るからねえ。
おまいのサイトでは2%でも世の中のサイトが2%とは言えない。
656nobodyさん:2006/12/31(日) 23:56:13 ID:ZQTWDF0T
http://pear.php.net/ が見えないよ。
楽しくプログラム書いてたのに、足りないコンポーネントがだうんろーどできないよ。
かなしい。
657nobodyさん:2007/01/01(月) 00:26:17 ID:???
>>656
普通に見えるよ!
658nobodyさん:2007/01/01(月) 06:05:26 ID:QzpvCD4L
pear upgrade-all すると

Fatal error: Call to undefined method
PEAR_PackageFile_v1::getProvidesExtension()
in /usr/share/php/PEAR/Downloader/Package.php on line 963

って怒られるんですが・・・どうすりゃいいでしょうか?
Debian GNU/Linux etch です。
659658:2007/01/01(月) 06:10:53 ID:QzpvCD4L
http://www.pear-forum.de/ftopic1468.html
ここの情報をさんこうに、Auth だけ別に
pear upgrade Auth したらウマくいきました。
何が起こってたんだろうか。
660nobodyさん:2007/01/01(月) 06:13:32 ID:QzpvCD4L
ところで、PHP スクリプトを php script.php として実行した場合、
その戻り値はどうやってきめているのでしょうか?
661660:2007/01/01(月) 06:20:42 ID:???
exit(123) でいいんですね。
662nobodyさん:2007/01/06(土) 16:31:13 ID:sgvu7Tt8
PEARの自動インストール環境って何かが大きく変わったのでしょうか?
欲しいパッケージがことごとくinstall failedになって、
list-allしたらWarningで「channel -update pear.php.net」しなさいみたいに言われた気がしたので
「pear channel -update pear.php.net」ってやったら
「Update of Channel "pear.php.net" succeeded」と成功したかの様な表示がされました。

でも、その昔「pear list-all」の結果を保存した時にはファイルサイズ40kくらいあったのに
今は17kで、MDB2_Driver_pgsqlとかXML/Parserとかが見当たらない…。

何がどーなったの?何をどうしたらいいの?(;;)
663nobodyさん:2007/01/06(土) 16:47:56 ID:sgvu7Tt8
list-upgradesしたらArchive_Tar、Console_Getoptがupgrade可能と表示されました。
さっきlist-allした一覧を眺めていたら、
PEAR自体も新しいの(1.5.0RC2)が出ている様子(今1.4.11)。
その昔installしたArchive_Tar、MDB2、MDB2_Driver_mysql、XML_RPCは
一覧上ではLATESTのバージョン値が表示されていないの。

とりあえずPEARをupgradeしたら全て元通りになるのでしょうか?
664660:2007/01/06(土) 18:25:39 ID:???
Debian 使ってる俺もなんか変になった。
アップグレード対象になっているパッケージを
落ち着いてひとつひとつ指定してアップグレードしたら
正常になったっぽい。
665nobodyさん:2007/01/06(土) 22:48:10 ID:sgvu7Tt8
tgz落としてきて半自動インストールで対処できました。
list-allしたリストにも追加されてるし、
完全自動インストールしたのと変わらない?っぽい状態になったのでいいかな、と^^;
お騒がせしましたm(_ _)m
666nobodyさん:2007/01/10(水) 23:24:01 ID:MZg1Wlme
ちょっと質問させてください。
今、生まれて初めてQuickFormを使ってるんだけど、
レンダラ(HTML_QuickForm_Renderer_Default)を用いてHTMLタグをカスタマイズする際って
デフォルトの出力HTMLテンプレートを丸ごと書き換えるしかないの?

固定テキスト(static)の文字色を赤にしたいだけなんだけど
「赤にするタグを追加」みたいな加えていくとかできなくて、
デフォルトのHTMLコードを全部手打ちした上で赤にするタグを追加する、でFAでつか?
667nobodyさん:2007/01/11(木) 11:40:36 ID:???
Defaultレンダラならそうじゃないかな
だからArrayレンダラなりArrarSmartyレンダラなり
使うのが常套手段じゃないかな
668666:2007/01/11(木) 12:25:16 ID:???
ご返答ありがとうございます。
まずは基本・・って事で参考にしている書籍にならってDefaultレンダラを使い始めましたが
Arrayレンダラ等なら望みが叶うって事なのですね。
Arrayレンダラ等については書籍には書いてなかったのでマニュアルをあたってみます。
ども。

>>666
自己レスですが、\PEAR\HTML\QuickForm\Renderer\Default.phpを開いて
該当HTMLタグをコピペすればさほど手間ではなかったです。
669nobodyさん:2007/01/12(金) 15:41:32 ID:???
MDB2(MySQL)についてなんですが
DBパッケージでいうプレイスホルダ的な事はできないんですかね?

このように(↓)書いてみたのですが、
 $sql="INSERT INTO `user` (user_account, user_password, user_mail) VALUES (?,!,?)";
 $affected =& $mdb2->exec($sql, array('$tmp_account', '$tmp_pass', '$tmp_mail'));
 if(MDB2::isError($affected)) die('失敗:'.$affected->getDebugInfo());
  (※元ソースは長いので要素の数とかを適当に省きました)
こんな(↓)エラーメッセージが返ってきてしまいますorz
 Error message: Could not execute statement
 Native message: You have an error in your SQL syntax;
            check the manual that corresponds to your MySQL server version
            for the right syntax to use near '?,!,?)' at line 1

syntaxがどうのこうのって書いてあるので、このやり方はダメないのかなと・・・
ちなみにプレイスホルダ使わないで書いた方では正常に動作してます。
よろしくお願いします。
670nobodyさん:2007/01/12(金) 17:36:36 ID:2nrbZFx0
すいません、PEAR Mail_Queueの質問です。ご存知の方がいれば教えてください。

Postgresqlにてmail_queue、mail_queue_seqテーブルを作成して、キューを追加しようとしてる
のですが、下記のようなエラーが出てしまいます。

$result=$queue->put("[email protected]","[email protected]",$headers,$body);

Mail Queue Error: unknown error [userinfo] => Cannot create id in: mail_queue
- FILE: /usr/share/pear/Mail/Queue/Container/db.php, LINE: 192

idが生成できないよといっているようなのですが。PostgresにてMail_Queueって難しい
のでしょうか?ご存知の方がいれば教えてください。
671nobodyさん:2007/01/12(金) 19:18:47 ID:???
標準のMySQL関連の関数よりも便利?
672nobodyさん:2007/01/12(金) 20:44:16 ID:???
673669:2007/01/13(土) 14:01:31 ID:???
おぉ!プリペアドステートメント!
参考にしてるDBレイヤの解説ではプレイスホルダとは分けて説明されてたのでスルーしてた(汗
このプリペアド経由のプレイスホルダも内部でエスケープ処理されるのかな。
早速試してみようと思います。
ありがとうございました。助かりました。
674551:2007/01/13(土) 20:07:08 ID:???
HTML_QuickFormの
”日付のセレクトボックスの生成”
dateフォーム使ってる人います?
年しか初期値設定できなくて微妙なんだけど・・・

setDefaultsで無理やり設定する方法とかありませんか?
675nobodyさん:2007/01/13(土) 21:35:24 ID:???
>>674
setDefaultsでdateエレメントの初期値にY,m,dみたいなキーの配列で設定できるはず
UNIXタイムスタンプでもおk
676551:2007/01/14(日) 17:44:09 ID:???
>>675
ありがとうございます!
dateは便利でどうしても使いたかったので
助かりました!
677nobodyさん:2007/01/16(火) 06:37:44 ID:???
PHP の拡張って Windows 上では開発できないんだろうか。
いま Linux 上で phpize などを使って拡張を作ってるんだけど、
Windows 上の PHP で使えるバイナリくれといわれて途方に暮れる。
Windows には phpize も autoconf も m4 もないし・・
Cygwin で作るの?
678nobodyさん:2007/01/16(火) 06:46:23 ID:zR0oRC8J
うむむしかし PECL for Windows なんてのがあるようだぞ?
Creating Extensions の vijay によるコメントでは
http://php.benscom.com/manual/en/zend.creating.php
config.js が用意されていて、m4 で記述された config.m4
の代わりに JavaScript (JScript ?) で記述された
config.w32 が必要なのだそうだ。いずれにしろできないことはないらしい。
679nobodyさん:2007/01/18(木) 01:48:09 ID:3ixzqDHl
すいません、ちょっとお知恵をお借りしたいのですが。。。

HTTP_Clientにて

$client =& new HTTP_Client();
$client->get($url);
$response = $client->currentResponse();

こんな感じで、指定URLでのレスポンスが取得出来ると思うのですが
取得した先のURLを得ることは可能でしょうか?
680nobodyさん:2007/01/18(木) 02:08:14 ID:7qn+G2a8
echo $url;
681nobodyさん:2007/01/18(木) 09:59:01 ID:???
PEAR DBについてなんですがデータベースへの接続に失敗します

echo "1";
$this->db = DB::connect($dsn);
echo "2";

if(DB::isError($this->db)){
$this->error = $this->db->getMessage();
return false;
}

とかやっても 2 が出る前に死んでしまって何も表示されません
どんな原因が考えられるでしょうか?詳しい方ご教授お願いします
682nobodyさん:2007/01/18(木) 10:51:18 ID:???
>>681
・$dsnが通ってない
・$this->db=&DB::connect($dsn);じゃない?
683679:2007/01/18(木) 11:15:02 ID:???
>>680 さん

すいません、説明が足りませんでした。
$urlに入ったURLで別のページにリダイレクトされるのです。
そのリダイレクト先のURLを取得したいなと思っています。

リダイレクト先のBODYは取得できるのですが。。。
684nobodyさん:2007/01/18(木) 16:56:34 ID:???
>>683
http header でリダイレクトされるんなら $response['headers']の中に入ってんじゃね?
metaタグなら$response['body'] の中を探すしかないだろうね。
685nobodyさん:2007/01/18(木) 18:29:17 ID:???
PEAR:Authを使って、ユーザ認証させようとしています。
ストレージドライバがDBの場合は、問題なくできていました。
が、今回、Fileを使う必要がで出てきたんですが、これがうまくできません。

$params = array("type"=>'Cvs',"file" => "/hoge/hoge/passwd.txt");
$mymyAUTH = new Auth( "File", $params, "myLOGIN" );
$mymyAUTH->start();
$loginStatus = $mymyAUTH->getAuth();
としてるんですが、AUTH_WRONG_LOGINが戻ってきます。

passwd.txtの中身は、File_Passwdにあったデフォルト、
ユーザ,パスワード
にしてます。
パスワードは、md5ではダメで、
File_Passwd_Cvs::generatePassword( $_POST[ 'passwd' ] );
でもダメでした。。

ぐぐっても、AuthはDBについての情報は多いけど、Fileの情報は見つけきれま
せんでした。

686nobodyさん:2007/01/18(木) 18:59:50 ID:???
username,password って、 その形式は CVS ではなくて CSV ではなかろうか。
書式を直すか、type'=>'Cvs' の代わりに Authbasic、Authdigest、Custom、Smb、Unix のどれかを使ってみたら?
どのみち書式もそれに合わせる必要があるけど。
687nobodyさん:2007/01/18(木) 19:10:14 ID:???
>>685
か、か、解決しますた!!
$mymyAUTH = new Auth( "File", $auth_params );
$res = $mymyAUTH->addUser( $_POST[ 'user' ], $_POST[ 'passwd' ] );
で、ユーザー登録したら、認証できた。

ということでお騒がせしますた。
688nobodyさん:2007/01/20(土) 14:44:06 ID:???
カンマセパレートバリュー。
689nobodyさん:2007/01/24(水) 21:46:52 ID:cqEVnQIF
age
690nobodyさん:2007/01/25(木) 13:17:04 ID:diFouhBc
PEARってなんで大文字なんだよ!
ホントうんこすぎ
pearのライブラリをディレクトリに移動しようとしたら小文字のファイルにリネームしちまうし、
php.iniはみにくいし、そこでのincludepathも大文字小文字間違って書き直しだし
もう氏ねやうんこ言語
691nobodyさん:2007/01/25(木) 13:28:10 ID:???
>>690
それは鯖がクソなだけ。
692nobodyさん:2007/01/25(木) 14:08:06 ID:???
ファイル名のケースを区別するかどうかなんて
PEARやPHPどころかOSの問題じゃん
これをプログラム言語のせいにしてる奴とかもう呆れる他ないな
693nobodyさん:2007/01/25(木) 22:57:10 ID:???
GDをラップしたライブラリってないの?
GDいじるの結構面倒くさい(><)
694nobodyさん:2007/01/25(木) 23:03:10 ID:???
>>693
いや・・・あの・・・
まっいいか・・・
695nobodyさん:2007/01/25(木) 23:10:41 ID:???
>>693
PEAR行ってImage_ってプレフィックスがつくパッケージ当たってみ
696nobodyさん:2007/01/26(金) 10:53:30 ID:???
はやくかけや。
こまってんだよ!
697nobodyさん:2007/01/26(金) 13:24:07 ID:PVZRthFQ
はじめてPEARを使おうと思っているんですけども、
レンタルサーバでも使えるのでしょうか?
インストールされてなければ無理なのかな・・?
それと、ダウンロードしてきたファイルの使い方がわかりません。
Image-Graphというのが使いたかったのでダウンロードし、解凍したところ、
Image-Graph-0.7.2というファイルがでてきました。
これはいったいどうすればいいのでしょうか?
698"""""""""":2007/01/26(金) 13:34:58 ID:???
希少もの:中国製無修正
某大陸高校トイレ盗撮ビデオ
http://www.google.co.jp/search?hl=ja&q=%E3%82%A2%E3%82%A4%E3%83%89%E3%83%AB+torrent+uppics&lr=
699nobodyさん:2007/01/26(金) 15:56:55 ID:???
>>697
PEARはPHPで書かれてるから適当なバージョンのPHPが動くサーバなら使える。
依存関係とか自分で解決してやらなきゃならないが。
Image_Graphだと
Image_Canvas
Image_Color
Extension gd
が必要。
全部そろえばincludeとかrequireすることで使える。
700nobodyさん:2007/01/27(土) 05:02:52 ID:???
701nobodyさん:2007/01/30(火) 11:27:14 ID:We8vUN44
pearのインストールをしようとgo-pear.batを起動しましたが何も表示されず何度かEnterキーを押すと
「PHP Warning: Cannot use a scalar value as an array in phar://go-pear.phar/PEAR/
Command.php on line 268」
のような表示がたくさん出てインストールが完了できませんと表示されます。どうやったら改善されるのでしょうか?超初心者ですのでわかりやすく説明くださると大変ありがたいです。よろしくお願いします。

PHPは5.2.0を使ってます。
702nobodyさん:2007/01/30(火) 11:35:02 ID:???
>>701
自分で超初心者とか言うアホにPEARは100年早い。

「俺は超初心者だから、調べるの面倒だし、お前ら!丁寧に分かりやすく解決方法を教えろ!」

って言ってるのか?死ねよ!カス
703nobodyさん:2007/01/30(火) 11:59:16 ID:We8vUN44
>>702
「超初心者ですのでわかりやすく説明くださると大変ありがたいです。」そういう言い方をしましたので>>702さんのような捕らえ方をされても仕方ないかもしれません。
ですが昨日から解決方法を調べましたが未だに解決できずにいます。ですので救いの手をいただければと思いますのでどうかよろしくお願いします。
704nobodyさん:2007/01/30(火) 12:12:05 ID:???
>>701
5.2.0のgo-pear.batは壊れてる
ttp://d.hatena.ne.jp/shimooka/20061105/1162714257
705nobodyさん:2007/01/30(火) 12:15:45 ID:???
706nobodyさん:2007/01/30(火) 22:37:40 ID:bW5fYcLi
PEAR :: DB のパッケージをインストールしたのですが
「tests」というディレクトリがありました。

これは動作に必要なのでしょうか?

必要ないのであれば消したいのですが。そもそも消す必要もありませんかねぇ。
よろしくお願いします。
707nobodyさん:2007/01/30(火) 22:45:17 ID:???
>>706
何故、消そうと思うのだ?
別にあってもよくないか?
708nobodyさん:2007/01/30(火) 22:47:55 ID:bW5fYcLi
>>707
そうですね。
そのまんまにしておきます。ありがとうございました。
709nobodyさん:2007/01/31(水) 10:55:32 ID:???
必要ないから消してもOK
710nobodyさん:2007/01/31(水) 11:58:58 ID:???
虫垂だの農家の四男坊なんてのはやたらに切るもんじゃないだろう
711nobodyさん:2007/02/01(木) 12:15:21 ID:PAIOYH/b
PECL には GNU libidn を使うための拡張があります。
http://pecl.php.net/package/idn
同様の拡張が別の場所でも開発されているようです。
http://php-idn.bayour.com/
インターフェイス(提供される関数)はほぼ同じようです。
これら二つの拡張の間には何か関係があるのでしょうか?
712nobodyさん:2007/02/06(火) 15:58:18 ID:rVKmLMVv
もう1日かけて調べたり試行錯誤したけど、全然うまくいきません。

環境:
OS WindowsXP Home
鯖 anhttpd 142p
PHP 5.2.0(cgiの方使ってます)

ソース:
<?
require_once "HTTP\\Request.php";

$req =& new HTTP_Request("http://yahoo.co.jp/");
if (!PEAR::isError($req->sendRequest())) {
echo $req->getResponseBody();
}
?>

結果:
Warning: require_once(Net/Socket.php) [function.require-once]: failed to open stream: No such file or directory in C:\httpd142p\php5\PEAR\HTTP\Request.php on line 47
Fatal error: require_once() [function.require]: Failed opening required 'Net/Socket.php' (include_path='.;C:/httpd142p/php5/PEAR/') in C:\httpd142p\php5\PEAR\HTTP\Request.php on line 47

INIファイルの該当箇所の設定:
; Windows: "\path1;\path2"
include_path = ".;C:/httpd142p/php5/PEAR/"

該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。
もう疲れて吐きそうです。。。
713nobodyさん:2007/02/06(火) 16:22:33 ID:???
>>712
ディレクトリセパレータでは?

include_path = ".;C:\httpd142p\php5\PEAR"
714nobodyさん:2007/02/06(火) 16:30:00 ID:???
"/" を "\" に変えてやってみました。。。
Warning: require_once(Net/Socket.php) [function.require-once]: failed to open stream: No such file or directory in C:\httpd142p\php5\PEAR\HTTP\Request.php on line 47
Fatal error: require_once() [function.require]: Failed opening required 'Net/Socket.php' (include_path='.;C:\httpd142p\php5\PEAR\') in C:\httpd142p\php5\PEAR\HTTP\Request.php on line 47

ふぅ〜。。どうしたもんですかね
715nobodyさん:2007/02/06(火) 16:42:08 ID:???
require_once 'Net/Socket.php';
これ一行だけのソースでもNo such 〜になる?

C:\httpd142p\php5\PEAR\Net
でアドレスバー叩いてちゃんとSocket.phpはあるかい?
716nobodyさん:2007/02/06(火) 17:02:55 ID:???
あー Socket.phpありませんでした。。。
Socket.phpとURL.phpダウンして入れたところ正常に動きました。
ふぅ〜。ありがとうございましたm(_ _)m。
717nobodyさん:2007/02/06(火) 17:22:12 ID:???
>該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。
>該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。
>該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。
>該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。
718nobodyさん:2007/02/06(火) 17:54:04 ID:NJuIco/q
if ( $_SERVER["REQUEST_METHOD"] != "POST" )
{
exit( "不正なリクエストでおじゃる" );
}
$hoge = $_POST["hoge"] ? $_POST["hoge"] : "";

こういうソースがあったのですが、リクエストのメソッドを調べる
意味ってあるのですか?

万が一、引数が GET で渡されてたとしても、それが $_POST に代入される
ということがありえるのでしょうか。
719nobodyさん:2007/02/06(火) 17:56:37 ID:???
ねーよww
720nobodyさん:2007/02/06(火) 20:46:38 ID:???
むかーーーしのバージョンのPHPで
GET引数に "GLOBALS[_POST][hoge]" とかそんな感じで
外から $_POST に値を入れられちゃう糞バグがあったような気がしんぐ
721718:2007/02/06(火) 21:33:11 ID:NJuIco/q
すみません。
>>718は誤爆です。
722718:2007/02/06(火) 21:36:03 ID:NJuIco/q
>>720
そうだったのですか。
もうちょっと調べてみます。ありがとうございました。
723nobodyさん:2007/02/14(水) 07:44:29 ID:HWr8LnC4
質問です。
今html_ajaxでいろいろやってるのですが、
html_ajaxでプロキシアクセスをしてる場合のpostで通信してるのですか?getですか?
access_logをみてみると、両方のような気がするのですが。

またpostの場合、sessionでの接続ができますか?どのようにsidを送るのでしょうか?

よろしくお願いいたします。
724nobodyさん:2007/02/14(水) 16:20:33 ID:pTwqj5vm
pearのアンインストール方法を教えてね。
725nobodyさん:2007/02/15(木) 01:48:19 ID:???
まず、どのようにインストールしたかかけや
726nobodyさん:2007/02/15(木) 02:10:56 ID:202bzPy7
go-pear.orgからインストールしたのよ。
727nobodyさん:2007/02/15(木) 17:56:46 ID:kYaagmVU
おまえらどんなPEAR使ってるか教えろ。
728nobodyさん:2007/02/15(木) 18:18:00 ID:???
インフラとして必要で、実用的で、枯れてて、
誰でもすぐに馴染める使いやすいパッケージは

・PHPUnit
・PhpDocumentor
・PEAR
・MDB2(+Driver)
・HTTP_Request
・Cache_Lite
・Log
・Mail

あたりとか?
もうPHP4でしか使う機会がないな
PHP5でいいならフレームワークに付属ので間に合わすか、
ZFのライブラリを使う
729nobodyさん:2007/02/15(木) 19:29:34 ID:???
Pagerも結構よいよ
730nobodyさん:2007/02/15(木) 21:50:13 ID:l05otmqr
まだHTTP_Requestしか使ったことないや。
731nobodyさん:2007/02/16(金) 09:32:26 ID:???
Cache_Liteはめちゃくちゃ重宝する。
732nobodyさん:2007/02/17(土) 12:31:18 ID:???
HTML_QuickFormで確認ページって出せますか?
入力→確認→登録みたいな感じです。
出せる場合はどのようにしたら良いのでしょうか、、?
733nobodyさん:2007/02/17(土) 12:33:24 ID:???
freeze使え
734nobodyさん:2007/02/17(土) 14:54:17 ID:???
確認画面用に freeze() 使う時は hidden 要素に setPersistantFreeze(true) も忘れないように
735732:2007/02/21(水) 05:59:51 ID:???
>733,734
やってみる!ありがとう。
736nobodyさん:2007/02/22(木) 14:28:49 ID:3Rwtxk4J
PEAR のコーディング規約って、
Java でよく使われているもののほぼコピー?
737nobodyさん:2007/02/22(木) 18:02:36 ID:???
PHPUnit PEARから外れちゃったんだよなぁ。
PHP4でFirebirdのある限り
DBを使いつづける選択肢しかないんだよなぁ。
738nobodyさん:2007/02/22(木) 22:53:30 ID:Ua9elyJa
MDB2( http://pear.php.net/manual/ja/package.database.mdb2.php )についての質問です。

スクリプトでMDB2を用いる際に、いちいちDSNやエラーチェックをすると
コードが冗長になってしまいます。

みなさんはどうしていますか?
私が考えたのは、例えば 'DataBase' というクラス(MDB2のクラスを継承)を定義して
そこから使うのがよいかと思っています。

これについて何か参考になるドキュメントがありましたら
ぜひ教えてください。よろしくお願いします。
739nobodyさん:2007/02/23(金) 23:08:52 ID:yQax9a0k
無駄なものを覚えるとかえって時間がかかる
何を学ぶかの取捨選択が大事だと思います
HTML_QuickFormのほかに、これには手を出すなというのはありますか?
740nobodyさん:2007/02/23(金) 23:33:13 ID:???
>>739
HTML_QuickForm_Controller/DB/DB_DataObject/Auth/Auth_HTTP/Cache_Lite
このくらいかな…
741nobodyさん:2007/02/24(土) 05:53:48 ID:UYU7E5V9
Authについて質問です。
MySQLにパスワードと名前を入れておいて、そこを読み取って認証するという
単純な認証を試しに作ってみたのですが、どうも巧く行きません。

具体的には、どのような入力をしても、以下の「MyAuth.php」のswitch($status)でdefaultが選ばれてしまうので、困っています。
どなたか、アドバイスをください。

以下、ソースコードです。
742これらは、全て同じ階層のフォルダに入ってます:2007/02/24(土) 05:57:38 ID:UYU7E5V9
//MyAuth.php
<?php
$documentroot=dirname(__FILE__) . '/';
require_once($documentroot . 'config.php');
require_once ('Auth/Auth.php');

function loginFunction ($usr,$status){
switch($status){
case AUTH_IDLED :
case AUTH_EXPIRED :
$err='ログイン期限が切れています。再ログインしてください';break;
case AUTH_WRONG_LOGIN :
$err='メールアドレス/パスワードが間違っています';break;
default:
print ("default");
}
require_once('login.php');
}

$params=array(
'dsn'=> _DSN,
'table'=>'member_table',
'usernamecol'=>'userxxxx',
'passwordcol'=>'password',
'cryptType' => 'MD5',
'db_fields'=>'*');
$myAuth=new Auth('DB', $params, 'loginFunction');
$myAuth->start();
if(!$myAuth->getAuth()){
exit();
}
?>
743これらは、全て同じ階層のフォルダに入ってます:2007/02/24(土) 05:59:12 ID:UYU7E5V9
//login.php
<html><head><title>ログインページ</title></head>
<body>
<form method =" POST" action ="<?php print ($_SERVER ['PHP_SELF']) ?>" >
<table border="0">
<tr><th alight="right">メールアドレス</th>
<td><input type="text" name="username" size="30" maxlength="50" /></td></tr>
<tr><th alight="right">パスワード</th>
<td><input type="password" name="password" size="30" maxlength="50" /></td></tr>
<tr><td colspan="2"><input type="submit" value="ログイン" /></td></tr>
</table>
<font color="Red"><?php print($err); ?> </font>
</form></body></html>


//config.php
<?php


define("_DB_USER", "db_user");
define("_DB_PASS", "pass");
define("_DB_HOST", "localhost");
define("_DB_NAME", "db");
define("_DB_TYPE", "mysql");

define("_DSN", _DB_TYPE . '://' . _DB_USER . ':' . _DB_PASS . '@' . _DB_HOST . '/' . _DB_NAME);
?>

以上です。長々とスミマセン。
744nobodyさん:2007/02/25(日) 00:45:14 ID:???
>>741
PHPの質問スレ行った方がいいんじゃね?
745>>741-743:2007/02/25(日) 01:10:29 ID:???
>>744
おっしゃる通りですね。
PHPの下質のスレに行きます。
お目汚し失礼しました。
746nobodyさん:2007/02/28(水) 08:54:35 ID:ZY+YimwX
SQLビルダーが欲しくて色々さがしてます。
DB_DataObjectがよさげだとおもって、ちょっと読んで
軽く使ってみたのですが
これってSQLだけgetすることは出来ないのでしょうか?

接続にはDBとかMDBは遅いのでPDOを使いたいのですけど・・・

良いのありませんかね?
dinolibっていうのも使ってみたけど、古いし、イマイチ。

DB_DataObjectはマジで便利そうなんだけど・・・
747nobodyさん:2007/02/28(水) 14:56:36 ID:???
流れはORマッパーなので。
748nobodyさん:2007/02/28(水) 20:30:47 ID:???
>>746
おれも以前に似たような要求で色々と調べたけど
"_" から始まる名前の(PEAR規約で private 扱いの)メソッドやら変数やらをアレコレしないと
生 SQL のみを取得することはできなかったっす
749745:2007/02/28(水) 21:39:38 ID:???
ソース見たら出来なさそうですね。

SQL生成から実行まで、一つのメソッドでやってた。

あれを改造しちゃうか・・・
DBかMDB2を使うか
他のSQLビルダを探すか

自分で作っちゃうか

とりあえずここ過疎化してるので
PHP版に移住します。お騒がせしました。
750745:2007/02/28(水) 23:20:38 ID:ZY+YimwX
>>748
すいません。板のURLが変わってたんですね
2chブラウザ使ってるのでレスが付いてないのかと思っちゃいました。

SQLビルダ作るかな〜
751nobodyさん:2007/03/01(木) 01:32:14 ID:???
DB_DataObjectはORマッパであってSQLビルダでない件に関して
752745:2007/03/01(木) 10:39:52 ID:vEHHBeZ0
>>751

純粋にクエリーを発行して配列にオブジェクトを格納するところまでの時間を計測したんですけど
PDO::FETCH_CLASSとかpg_fetch_object(postgresqlなら)を使うと
シチュエーションによっては10倍近い速さなんですよね。

だからSQLビルダだけ使えないかと思ったわけでして。
ただ、取得するデータ件数が少ないと、速度差はごくわずかなので
LIMITで絞ってページングすればほとんど変わらない気もするし・・・

DB_DataObject使うとSQLインジェクションとかプレイスフォルダ使わなくて
ばっちり対策済みなんでしょうか?

もうちょっと色々試してみます・・・

すごい良く出来てると思うので、気になるのは速度だけなんだよな〜
753nobodyさん:2007/03/01(木) 11:20:12 ID:???
今更DB_DataObjectもないだろう
PHP4しか使えませんな環境ならしょうがないかもしれんが
最近のフレームワークのO/Rマッパの実装を調べた方がいいと思うよ
ZFやsymfonyで使ってるpropelとかもPDOのアダプタが用意されてるだろう

SQLビルダならPEARにもDB_QueryToolとかあるけど
SQLビルダっつー仕組み自体が古いというかいけてないと思う
基本O/RマッパでシンプルなDBアクセスは
SQLなんて一切気にすることなく操作できて
3つも4つもJOINするような複雑なクエリになる場合は
SQL書いて取得するっていうスタイルが今の流れで
それは理にかなってると思う
実際WEBアプリで必要になるSQLなんてのは
大抵の場合7〜8割方定型でシンプルなクエリだから
複雑なSQLはビルダで組み立てなくても直で書けばいい
ビルダでどうやって複雑なSQLを組み立てるか考えるのは本末転倒

オレオレO/Rマッパ書くためにSQL組み立てる層を書くのが面倒だから
SQLビルダだけ欲しいみたいな感覚ならまあわかるが
INSERT/UPDATE/DELETEは割と簡単に書けるし
SELECTはZFのZend_Db_Selectあたりを参考にするといいんじゃない
754nobodyさん:2007/03/01(木) 11:23:12 ID:???
>>753
あなたの言っている全ての機能はDB_DataObjectにも実装されていますが?
それにフレームワーク固有のコードを書いていたら汎用性が全く無くなってしまう。

それこそ、自己満足の時代に逆境したプログラミングでしかない。
755nobodyさん:2007/03/01(木) 11:29:52 ID:???
じゃあDB_DataObject使えばいいじゃんw
756nobodyさん:2007/03/01(木) 11:45:56 ID:???
PEAR::DB が遅いってのは抽象化インタフェースなんだからある程度は仕方ないと思うが
pdo がいいなら PEAR::DB とインタフェース互換で pdo 直接叩くようなのを書けばいいんじゃないかな
てか書いたら公開してくれw
757nobodyさん:2007/03/01(木) 12:33:14 ID:???
>>754
別にDB_DataObjectが機能不足だなんて書いてないし
俺もDBやDB_DataObjectを経て来た上で書いている
あとZend_Dbやpropelにフレームワーク固有のコードとかない
それぞれ独立したライブラリとして作られている
てかDB扱うライブラリに普通FW固有のコードなんて書かない
もうちょっと色んなライブラリ見渡してみてもいいと思うよ
758nobodyさん:2007/03/01(木) 12:37:31 ID:???
>それにフレームワーク固有のコードを書いていたら汎用性が全く無くなってしまう。
フレームワークをなんだと思ってるんだ?
759nobodyさん:2007/03/01(木) 15:51:00 ID:???
DBからMDB2に移ろうとしているんですが、
MDB2って、なんかDBに比べて不便になってる
気がするんですが、気のせいでしょうか?

insertやupdateの手順がまんどくさくなってるよな。。。
760nobodyさん:2007/03/08(木) 12:27:01 ID:???
Html_QuickFormでprocess()を2回使用しようとするとエラーになります。
Fatal error: Cannot redeclare callback1() (previously declared in c:\path\file.php:100)

以下のようにしたい場合はどうすればいいでしょうか?
if($objForm->validate()){
    $objForm->process('callback1');
    $objForm->process('callback2');
}
761nobodyさん:2007/03/08(木) 12:31:50 ID:???
単にcallback1()を2回定義しちゃってるだけじゃないの?
762760:2007/03/08(木) 14:00:23 ID:???
>761
仰る通りでした。ありがとうございました。

補足としては、実はと言っては怒られそうではありますが、
クラス内にprocess()を呼び出すメソッドを作り、その中にコールバック関数を定義しておりました。
このような感じ。
class Form extends HTML_QuickForm{
    function actProcess($callbackFuncName){
        function callbackFunc1(){...}
        function callbackFunc2(){...}
        return $this->process($callbackFuncName, false);
    }
}
ですので、actProcess()を2回目に呼び出すと、
callbackFunc1(),callbackFunc2()がもう一度定義されエラーになっていた模様です。

調べたところ、コールバック関数をprocess()呼び出しのメソッド外に置き、
process()の第一引数をarray(&$this, 'callbackFuncName')のようにすると良い事が分かりました。
以下のような感じ。
class Form extends HTML_QuickForm{
    function actProcess($callbackFuncName)
    {
        return $this->process(array(&$this, $callbackFuncName), false);
    }
    function callbackFunc1(){...}
    function callbackFunc2(){...}
}
763nobodyさん:2007/03/09(金) 15:56:39 ID:???
RedHatES上のPHP-4.3.2で
$pear upgrade PEAR
をやったら
PEAR 1.5.1 stable
に無事アップデートできたみたいなんですが、良く見ると
/usr/bin/pear
が無くなってしまった様です。

/usr/share/pear/pearcmd.php
を直接実行しようとしてもエラーが出て、中身を見てみると
<?php
//
// +----------------------------------------------------------------------+
// | PHP Version 5                                                        |
// +----------------------------------------------------------------------+
//....'
になっています。

一旦phpを再インストールするしか復旧する方法は無いでしょうか?
764nobodyさん:2007/03/09(金) 16:07:36 ID:???
今俺も試しにアップグレードしてみたが特に問題ないな
whichとfindで探しても全くでてこない?
765nobodyさん:2007/03/09(金) 16:18:35 ID:???
Html_QuickFormのselectあります。
これにmultiple属性を設定するにはどんな書式にすればいいんでしょうか?

$QuickForm->addElement('select',);

みたいな書式でできるんでしょうか・・・?
766763:2007/03/09(金) 19:18:19 ID:???
>>764
取り合えず、同一構成の別サーバからpearコマンドとpearディレクトリごと持ってきて入れ替えたら

$pear list
INSTALLED PACKAGES:
===================
....
PEAR           1.1     stable
....
となっていて、ここから再度アップグレードして見ました

$sudo pear upgrade PEAR
downloading PEAR-1.5.1.tgz ...
...done: 290,252 bytes
upgrade ok: PEAR 1.5.1

$pear list
pear: Command not found.
Exit 1
で、
$find / -name "pear"
してもコマンドは見つからないですね・・・家の環境だけなのか?
767nobodyさん:2007/03/09(金) 21:25:55 ID:???
pearディレクトリ毎持ってきたりして入れ替えたら
そりゃ消えようがしゃあないな
アップグレード時にbinにコピーできなかったとか
go-pearでPEARだけ入れ直したらいいんじゃね
768nobodyさん:2007/03/09(金) 22:48:15 ID:???
>>767
おお、go-pearなんて便利なものが・・・
これで無事再インストール出来ました。
769nobodyさん:2007/03/09(金) 23:08:13 ID:bGciLmRc
Windowsの話?
770nobodyさん:2007/03/11(日) 00:25:48 ID:???
>>765
ttp://www.townmedia.org/tips/PEAR/HTML_QuickForm.html
2-2 addElementで使える要素一覧
をみるかぎり、select のarg5に入れればなんでもアリじゃないでしょうか?
771nobodyさん:2007/03/13(火) 18:35:18 ID:???
PEAR::Auth を便利に使っています。
別の場所で別の人が同じ ID/PW でログインできますが、
これを拒否する方法はどういうものがあるでしょうか。
( 後からログインした人を拒否できると嬉しいです )
772nobodyさん:2007/03/13(火) 20:09:42 ID:???
ログインユーザをセッションIDと一緒に、DBなりファイルに書き出しとけばいいんじゃないの。
同一ユーザ名ログインの時には、それに対応するセッションIDが残ってるかどうかチェックして
なきゃそれでOK。
でも同一ユーザ名・パスワードの複数保持なんていうのがそもそもセキュリティ的にラフすぎ。


773nobodyさん:2007/03/14(水) 09:34:15 ID:???
>>772
ありがとうございます。

何かの拍子に ID/PW が漏れた場合、
同時にアクセスされたら漏洩発覚!としたかったんです。
774nobodyさん:2007/03/14(水) 09:44:37 ID:???
>>773
そんなのWWWでやるシステムじゃない
775nobodyさん:2007/03/14(水) 12:37:17 ID:???
どうやってログアウトをシステム側で察知するかだな。
操作ミスなり回線不良なりでCookieあぼーんすると
直ぐにログインできないってことになる。
776nobodyさん:2007/03/14(水) 12:59:55 ID:???
つかブラウザ二個起動した時点で終了
777nobodyさん:2007/03/14(水) 14:20:57 ID:???
>>774
ネットバンクとかで無いか?
778nobodyさん:2007/03/14(水) 14:35:20 ID:???
779nobodyさん:2007/03/14(水) 14:41:52 ID:???
>>778
意味ワカラン
780nobodyさん:2007/03/14(水) 14:43:11 ID:???
分かった
781nobodyさん:2007/03/14(水) 14:46:43 ID:???
>>776
同じIPならセーフとかは?
782nobodyさん:2007/03/14(水) 14:57:05 ID:???
>>781
ルータ経由はどうすんの。
783nobodyさん:2007/03/14(水) 19:03:09 ID:???
やっぱり難しいさね。
ストリーミングサイトだったら通信継続してるから
感知して第二ユーザはキック出来るけど、そうじゃなきゃ>>775のような
ケースでクレーム来るほうが怖いからなあ。
784nobodyさん:2007/03/14(水) 19:07:01 ID:???
ログイン画面で固定のキーを与えるのどうだろう。
785nobodyさん:2007/03/14(水) 19:12:34 ID:???
トークン使う
786nobodyさん:2007/03/14(水) 19:21:48 ID:???
明示的なログアウト送信がない限り全部一緒の問題を抱える
787nobodyさん:2007/03/14(水) 23:04:39 ID:???
まあセッションクッキーのexpire時間を金融サイトみたいに10分とか短く設定しておいて、
10分以内に通信無きゃ強制ログアウトっていうのが許されるサイトなら問題が少なくなる。
最大10分の再ログインラグが出るけどね。
788nobodyさん:2007/03/15(木) 00:52:45 ID:???
昔やったサイトというかWebアプリでは
・ユーザは出来るだけ明示的にログアウトするようお願いする
・メインウィンドウがクローズされる時にログアウトのURLを叩くJavaScriptを仕込んでおく
・最終アクセスを全ユーザの全アクションで記録しておいて、ログアウトなしのユーザがログインしようとしたら最終アクセスが10分以内の場合は弾く

イントラ用のアプリケーションだったから負荷とかも考慮した上でここまでやったけど
一般向けのWebサイトじゃどこまでやるかは難しい判断だろうなぁ
789nobodyさん:2007/03/15(木) 09:27:34 ID:???
>>787
それは、パスワード漏洩時の対策にはならんのではないか。
まあそもそもの話として同時アクセス=漏洩なのかというか、常時使うシステムでもない限り使う時間がぶつかることがあるのか疑問。
漏洩するとしたら、内部からユーザ情報持ちだしとか、パソコンに付箋紙貼ってある時だと思うんだが、
したら不正利用する人が夜中とかに使えばまあ、システム上はほとんど不正利用にならないだろうし。

>>788
ログアウトするようにお願いするったって
不特定多数のコンピュータリテラシーがまちまちなユーザじゃ無理。
メインウィンドウをクローズしないかもしれないし。

夢を見すぎじゃないかと。
ユーザに過去のログイン・ログアウト情報を提示して、変だったら通報してもらうほうがいいんじゃねえの。
過去にどういう行動をしたのか知ってるのは本人しかいないわけだし。
790nobodyさん:2007/03/15(木) 10:01:20 ID:???
>>789
世の中には「テメエにしか分からないこと」を
自動的に論理矛盾なくプログラム側で判断しろ、
という輩もいるわけでwww
791nobodyさん:2007/03/15(木) 11:54:09 ID:???
生体認証かな
792nobodyさん:2007/03/15(木) 12:14:00 ID:???
>>789
お願いするだけじゃ無理なのが解ってるから2番目・3番目の仕組を入れてるわけで
無理じゃなけりゃJavaScriptだの全アクセス記録だの不要だろw
あと「イントラ用」って書いたんで不特定多数ではない時の話だってのも読み取ってほしいところ

>>791
ログインには使えるけどログアウトしてくれるかどうかは別問題だねそれはw

PCの不意のハングアップまで考慮しようとすると
それこそJavaScriptか何かでサーバとハートビート交換しまくって
途切れたらログアウト処理にするとかまでやらないと難しいだろうなぁ
793nobodyさん:2007/03/15(木) 12:35:50 ID:???
>>792
目的が漏洩対策ならいいんじゃない?<生体認証
794nobodyさん:2007/03/15(木) 13:00:52 ID:???
>>792
と言われても、話の元の人はイントラ用とは言ってないわけだし、実際採用されたらどうかなあと思うわけで。


結局のところ、普通に当たり前のことをやっとけばいいと思うよ、としか言えないな。
一応法整備されたからパスワードだけかけておけばノーガードでもいんじゃねという話もある。
795nobodyさん:2007/03/15(木) 13:58:14 ID:???
>>787
>それは、パスワード漏洩時の対策にはならんのではないか。
元ネタが同時ログインをキックしたいということだけであって、どこに問題がある?
796nobodyさん:2007/03/15(木) 14:21:29 ID:???
>>795
>>773
> 何かの拍子に ID/PW が漏れた場合、
> 同時にアクセスされたら漏洩発覚!としたかったんです。

>>771だけ見ればそんなもんかって感じだが。
797nobodyさん:2007/03/15(木) 15:40:15 ID:???
同時アクセス「ゆえに」漏洩発覚というロジックはむちゃくちゃだから
どうでもいいじゃん。同時アクセスキックできる方法だけ話してればいい。
798711:2007/03/15(木) 17:59:45 ID:???
元質問者です。
両方再ログイン促すので十分です。
それで漏洩か運用で分かると思うので。
なんだかいろいろと考えることが多いのですね ^^;
どこかにいい実装例はないでしょうか。
( コードがあると嬉しいです )
799nobodyさん:2007/03/15(木) 18:50:39 ID:???
>>798
仮に漏洩してたとして、同時アクセスと思える範疇でアクセスがある、漏洩と判断できる確率って少ないんじゃね。
あれこれ仕掛けてユーザビリティ低下でクレームが発生するほうが高そうに思えるのだが。

まぁどこまでコストをかけるかは措いといて、
>>775で「どうやってログアウトを...」って書いたけど、Cometならできるかもしんない。
Cometシステムを構築したことどころか、lingrさえしたことないので、
どこまで実用的に漏洩を察知できるシステムができるどうかは知らんが。

これでも、ユーザが会社でブラウザを開いたまま帰宅、自宅でログイン出来ねーって言うかもな。
800nobodyさん:2007/03/15(木) 21:24:01 ID:fuFXgue7
>ユーザが会社でブラウザを開いたまま帰宅、自宅でログイン出来ねー
イントラ想定してしながらそうじゃないケース想定してるのが痛い
801799:2007/03/15(木) 21:34:56 ID:???
>>800
え〜と、俺はイントラなんて想定しとらんが?
元質はイントラネタだったのか?
802nobodyさん:2007/03/15(木) 21:35:01 ID:???
Cometならできるかもしんないwww
803nobodyさん:2007/03/15(木) 22:37:02 ID:???
昔、椅子に座ったらログイン、椅子から立ったらログアウト、
っていう仕組みを作ろうかとか考えたことある。
実用性が無さそうなんでやめたけど。
804nobodyさん:2007/03/15(木) 22:44:26 ID:???
あきらめたらそこでログアウトだよ
805nobodyさん:2007/03/15(木) 23:51:51 ID:???
>>801
元質はイントラじゃない
イントラ云々はおれが>>788
「イントラだったからここまでやったけどそうでなければどれくらい手間をかけたもんかな」的に書いただけ

>>803
迂闊にトイレにも行けねーなw
806nobodyさん:2007/03/15(木) 23:57:38 ID:???
実際は、イントラ以外使えないというところではそんなもんだろ
807nobodyさん:2007/03/15(木) 23:58:51 ID:7hzpmvYO
でも同じユーザーが同時期にアクセスできないようにするってことは、魅力があるね。
なんか旨い方法ないのかな?
808nobodyさん:2007/03/16(金) 00:07:36 ID:???
IPとかUAは?
809799:2007/03/16(金) 00:15:29 ID:???
う〜ん、マジでCometで出来ない?
Cometって時間的にどのくらいコネクションを握ったままできるのかしらんだけど、
擬似サーバプッシュでクライアントからの返答(再リクエスト)がなければログアウト状態と判断できると思う。
保存期間なしのCookieも併用して。

Apacheにmod_cometみたいなモジュールが出てきたらいろいろ面白そうだけどなぁ。
で、PEARとはまったく関係ない話になってしまった。
810nobodyさん:2007/03/16(金) 00:55:14 ID:???
>>802が良いこと言ったな。
811nobodyさん:2007/03/16(金) 00:56:45 ID:???
プロセス単位じゃなくて、スレッド単位でコネクション維持してくれるモジュールが
無いと、すぐに鯖がパンクするな。
812nobodyさん:2007/03/16(金) 04:10:01 ID:???
後のログインを優先させれば解決
813nobodyさん:2007/03/16(金) 07:13:07 ID:???
>>812
おまえ脳みそ使ってないだろw
814nobodyさん:2007/03/16(金) 09:00:07 ID:tL5WlbtE
で無理やりPHPの話に戻すと、
ttp://hain.jp/index.php/tech-j
にFlashのSocketライブラリを利用してPHP(鯖)+FLASH/JavaScript(客)で
通信を行うという話がのっている(socketjs→ttp://dev.dschini.org/socketjs/)。
これが出来るならなんとかなるんじゃないの。
815nobodyさん:2007/03/16(金) 09:32:57 ID:???
>>814
Ajaxでいいじゃないか。
816nobodyさん:2007/03/16(金) 15:00:47 ID:???
>>807
利用できる端末を登録制にする。
登録は自分で出来るけど、登録用には別のパスワードを用意して、全てが漏れないと使えないようにする。
端末の登録が変更されると、指定したメールに通知。
たしかソニバンがこれ。
登録済み端末が操作されてしまうのは防げない。
817nobodyさん:2007/03/16(金) 15:25:46 ID:???
>>815
Ajaxは、クライアント側の制約(DHTML)がありすぎだからなあ
818nobodyさん:2007/03/16(金) 15:27:39 ID:???
>>816
「端末」の同定はどうしてるのだろう?<ソニバン
819nobodyさん:2007/03/16(金) 15:52:41 ID:???
>>818
同じPCでブラウザ変えると別端末という認識をされた。
クッキーとかかな。
820nobodyさん:2007/03/16(金) 16:48:41 ID:???
>>798
>元質問者です。
>両方再ログイン促すので十分です

これ意味あるかな?
1.そもそも先にログインしている方が「正規ユーザ」とは限らない。
2仮にそうだとしても、.クラックした方が先に再ログインすることも出来る

実際は、こういう事態がおこったら、そのユーザアカウントは仮停止すべきでしょう。
821nobodyさん:2007/03/21(水) 18:47:33 ID:78nxSnEz
vistaでpearコマンド、CLIがntdll.dllのエラーで停止しない?
822nobodyさん:2007/03/22(木) 14:53:02 ID:???
sage
823nobodyさん:2007/03/23(金) 14:24:37 ID:cotQkCWi
すいません

PearでQuickFormを使ってページを作成しています。
controllerを使ってウィザード式にしたいのですが
前のページでデータベースからの検索結果(不特定多数)があり
その結果それぞれにリンクを貼りクリックするとその情報を持って
次のページに行きたいのです。
色々調べたのですがフォームボタンを使ったものしかなく
困ってます。

参考になるページなどありましたら教えてください
よろしくお願いいたします。

824nobodyさん:2007/03/23(金) 18:09:38 ID:???
それはQuickFormとかと関係ない。
a href 要素・属性で、POSTで送信したいってことでしょ?
javascriptを使えばいい。
’リンクでPOST’
とかググればすぐ
825nobodyさん:2007/03/25(日) 05:11:07 ID:2BiXNRYt
http://pear.php.net/ や http://pear.php.net/
アクセスしようとしてもできないのはなんで?

 時間が悪いのかな?
826nobodyさん:2007/03/25(日) 10:38:49 ID:???
そうみたいよ。
今は普通にできるから。
827nobodyさん:2007/03/28(水) 09:11:39 ID:???
ブラウザ閉じるだけでもセキュリティ的には問題ないしなあ。
ステートレスのHTTPでは無理。

社員にICタグつけておいて、部屋に入ってきたらアクセス許可、退室したらアクセス拒否でいいかと。
828nobodyさん:2007/03/28(水) 17:44:14 ID:OFFYL5la
Auth のLoginCallback, postUsername を使ってログインしたユーザーのログを取りたいのですが、
具体的なやり方が分かりません。参考になる書籍かページを教えていただけないでしょうか。
829828:2007/03/28(水) 18:55:20 ID:???
その後いろいろ試して、
function LoginLog( $user, $params) {
    $usrname = $user;
    $etc_value = $params->post['postしたname'];
    ログ書き込み;
    ・
    ・
}
 ・
 ・
$a = new Auth("DB", $params);
$a -> setLoginCallback("LoginLog");
$a -> start();
 ・
 ・
ってな感じでlogincallback を使うことが出来るようになりました。
postUsername の使い方は分かりませんでしたが、とりあえず上で行こうと思います。
お騒がせしました。
830nobodyさん:2007/04/08(日) 03:01:58 ID:n+ShWf8j
>>95
>キャッシュをメモリに置けばお手軽に負荷テストの結果を一桁あげられる

cacheLiteってメモリ云々とかしてたのか
単にキャッシュを作ってreadfile()で表示してるだけなのかと思ってた

ってか、ふーん楽勝〜車輪の再発明でもいいもんね〜とか調子にのって
myCacheSystemを作ってしまったんだが、単にreadfile()で表示するだけでも効果あるよね
携帯3キャリアごとの絵文字が入ったページの表示切り替えなんだが
(いちいち変換するより作りおきと思って)
今は一つのファイルで3キャリア分岐(if...else if...)のPHPコード交じりの静的?に書き出しているんだけど、
アクセスが集中すると、ロックが変になるのかファイルが途中で途切れてパースエラー頻発
おまけにパースエラーはハンドリングできない?ので目視でエラーチェックorz
831nobodyさん:2007/04/10(火) 10:33:43 ID:???
別名で作った後リネームでもだめぽ?
832nobodyさん:2007/04/10(火) 13:41:55 ID:???
>>830
横レスごめんなさい。携帯3キャリアの絵文字のコード(変換コード?)って
どうやって手に入れたんですか?
それと、最近の携帯は3社共通仕様になってますが、そこのコードも手に入りますか?
将来的に携帯を視野に入れてるので、是非お聞かせ下さい。
833nobodyさん:2007/04/11(水) 04:58:32 ID:xStB8qdy
共用サーバ(ロリポ)で、PEARのCache(Cache_Liteじゃない)
で作成されたキャッシュデータがファイルの所有者がapacheになっちゃうので
FTPソフトでは消せないんですが、全て削除するような関数はありますか?
(Cache_liteでいうclean関数みたいな)
834nobodyさん:2007/04/11(水) 05:00:07 ID:xStB8qdy
ぬあ、日本語変、ごめんなさい。

共用サーバ(ロリポ)で、PEARのCache(Cache_Liteじゃない)
で作成されたキャッシュデータの所有者がapacheになっちゃうので
FTPソフトでは消せないんですが、全て削除するような関数はありますか?
(Cache_liteでいうclean関数みたいな)

まだ変、ごめんなさい(´;ω;`)
835nobodyさん:2007/04/11(水) 06:30:50 ID:???
そのキャッシュディレクトリをブラウザから消すPHPプログラム作ればいいんでない?
そうすればapacheのUIDで消す事ができるでしょ?
836nobodyさん:2007/04/11(水) 11:14:51 ID:???
そりゃそうだが PEAR 側でサクッと解決したいからここで訊いてるんだろうなぁと思った
837nobodyさん:2007/04/11(水) 12:40:28 ID:???
Cacheのクラス遷移みろ。
コンテナのFILEのクラスをextendsしてsaveメソッドあたりの時にchmodすればいいだけだ。
838nobodyさん:2007/04/11(水) 15:29:36 ID:???
そうすると他のユーザでも消せるけどね。
共有鯖使うなって感じ。占有鯖使えば?
839nobodyさん:2007/04/11(水) 18:00:02 ID:???
そうするともなにも、前提がそれでもいいという前提だろ。
840nobodyさん:2007/04/11(水) 18:00:33 ID:???
>>835
ディレクトリ内のファイル一覧出してunlinkにぶち込んだら綺麗に消えました!
所有者が「apache」ってのに尻込みして、PHPプログラムじゃ消せないだろうと
先入観を持った私がバカでした。
ありがとうございました、本当に助かりました。

>>836
おっしゃるとおり、サクッと消したい気持ちもあったんですが、
純粋にPHPプログラムで消せると思ってなくて・・・ゴメンナサイ、ありがとです。

>>837
私には難しくてよく分かりませんでしたが、優しさは伝わりました、ありがとです。

>>838
貧乏でゴメンナサイ(´・ω・`)
841nobodyさん:2007/04/12(木) 09:52:37 ID:???
>>840
>ディレクトリ内のファイル一覧出してunlinkにぶち込んだら綺麗に消えました!

Cache/Container/file.phpを勉強のつもりでいいから読め。
flushで一発だろ。
$cache = new Cache('file',なんたら);
$id = $cache->generateID('なんたr');
ってやってるんだろうから
$cache -> flush($id);
で消えるはずだ。やってないけど。
842nobodyさん:2007/04/12(木) 11:08:01 ID:???
>>841
で消えるはずだ。やってないけど。
843nobodyさん:2007/04/12(木) 11:17:40 ID:???
844nobodyさん:2007/04/18(水) 10:27:31 ID:???
QuickFormで

$tmpArray = array();
foreach ($list as $row) {
$tmpCheckBox =& $form->createElement('checkbox');
$tmpCheckBox->setName($i);
$tmpCheckBox->setText($row['name']);
$tmpCheckBox->updateAttributes(array(
'value' => $row['id'],
'id' => 'check_'.$i
));
$tmpArray[] = $tmpCheckBox;
$i++;
}
$form->addGroup($tmpArray, 'ques_01', '', '');

こんな感じで checkbox の value の値は変えられるようになったのですが
freeze() すると値が1に戻ってしまいます。
何とか freeze() を経由しても、継承する方法はないのでしょうか?
845nobodyさん:2007/04/18(水) 12:30:05 ID:???
チェックボックスはvalueの値をどうこうするよりも
nameを foo[] とか foo[$i] にした方がいいと思う
846nobodyさん:2007/04/18(水) 12:33:12 ID:???
PHP5ベースのQF2きたよー
http://pear.php.net/package/HTML_QuickForm2/
847844:2007/04/19(木) 11:31:58 ID:???
>>845
name は修正しました。ご指摘ありがとうございます。
いろいろとやってみてるんですが setPersistantFreeze(true) 指定してもだめ。
$_POST の値では渡っているんですが…。
848nobodyさん:2007/04/22(日) 19:06:46 ID:???
>>847
だからfreezeしてvalueの値が変わる変わらないに関わらず
該当チェックボックスのnameのPOSTがあるかないかで
判断するようにロジックを組め
チェックボックスってのはチェックするためのボックスのことだ
849nobodyさん:2007/05/07(月) 22:53:29 ID:???
HTML_Page2ベータのままで終わってるけど
XHTMLヘッダ部分を生成するPEARって他にないのですか?
850nobodyさん:2007/05/10(木) 17:54:10 ID:???
PEAR::Mail が 1.1.9 くらいから RFC822 のチェックをはじめ、
○○○ <[email protected]>
の○○○の部分に []()<>@,;\:". があると送れなくなりました。

mb_encode_mimeheader() は、英数字だけだと
=?ISO-2022-JP〜 のようにしてくれないためメール送信できません。

英数字だけでも =?ISO-2022-JP〜 にしてくれる
関数なりモジュールはないでしょうか?
851nobodyさん:2007/05/10(木) 19:40:51 ID:???
自前でやりゃいいんじゃないのかい
$to = '=?ISO-2022-JP?B?' . base64_encode($name) . '?=' . '<' . $to_addr . '>';
みたいな感じで
852850:2007/05/11(金) 10:05:20 ID:???
>>851
おお、なるほど!ありがとうございます。
853nobodyさん:2007/05/11(金) 10:38:49 ID:???
>>851 の件ですが、
MIME は 74 文字で折り返します。

その実装例はないでしょうか?
# メールに関することなので、
# 自分がコードを書くより、
# 実績のあるコードがあるとうれしいです。
854nobodyさん:2007/05/11(金) 15:36:48 ID:???
>>853
こんなのはどうだろう?
修正よろしく>PHP ハッカーたち江

<?php
$string = 'あいうえお かきくけこ さしすせそ たちつてと なにぬねの はひふへほ まみむめも やゆよ';

$fold = 24;

$MIME = array();

$indent = '';
$line = 0;
$start = 0;

for ($i = 0; $i < mb_strlen($string, 'ascii') + 2; $i += $fold) {
$from = mb_strcut($string, $start, $fold);

if ($line > 0) {
$indent = ' ';
}

$MIME[] = $indent . '=?ISO-2022-JP?B?' . base64_encode(mb_convert_encoding($from, 'JIS', 'EUC-JP')) . '?=';

$start += mb_strlen($from, 'ascii');
$line++;
}
?>
855nobodyさん:2007/05/11(金) 16:25:45 ID:???
>>850
> mb_encode_mimeheader() は、英数字だけだと
> =?ISO-2022-JP〜 のようにしてくれないためメール送信できません。

そうだっけ? ちょっと試してみたが、

$ php -r 'echo mb_encode_mimeheader ("あいうえお かきくけこ さしすせそ たちつてと なにぬねの はひふへほ まみむめも やゆよ");'
=?ISO-2022-JP?B?GyRCJCIkJCQmJCgkKhsoQiAbJEIkKyQtJC8kMSQzGyhCIBskQiQ1GyhC?=
=?ISO-2022-JP?B?GyRCJDckOSQ7JD0bKEIgGyRCJD8kQSREJEYkSBsoQiAbJEIkSiRLGyhC?=
=?ISO-2022-JP?B?GyRCJEwkTSROGyhCIBskQiRPJFIkVSRYJFsbKEIgGyRCJF4kXyRgGyhC?=
=?ISO-2022-JP?B?GyRCJGEkYhsoQiAbJEIkZCRmJGgbKEI=?=
856nobodyさん:2007/05/11(金) 17:33:32 ID:???
857nobodyさん:2007/05/11(金) 17:38:04 ID:???
ていうかそもそも英数字だけなら
mimeエンコードしなくていいんじゃないの?
だからmb_encode_mimeheaderは変換せずに返すんじゃないのか
858nobodyさん:2007/05/11(金) 19:02:14 ID:???
859855:2007/05/12(土) 00:43:49 ID:???
ゴメソ、スマソ、寝起きでボケてた...orz
860nobodyさん:2007/05/13(日) 16:24:10 ID:???
この手の正しい実装はjcode.plの人がやってたよ
今読むとなかなか大変だけど…
まーbase64とjisですましちゃうお手軽でinvalidなコードはよくないとおもうよ
861nobodyさん:2007/05/13(日) 17:12:19 ID:???
日本語禁止にしてしまえば楽じゃね?
862nobodyさん:2007/05/13(日) 22:27:06 ID:???
pearに繋がらない…
ひょっとして落ちてる?
863850:2007/05/14(月) 10:05:14 ID:???
>>854,860
いろいろありがとうございます。
jcode.pl の移植は私の手に余ります…。
皆さん、どうしているんでしょうね。
864nobodyさん:2007/05/20(日) 21:58:47 ID:???
英語を使っている。英語圏相手にした方が需要は倍以上有るし。
865nobodyさん:2007/05/21(月) 16:48:40 ID:???
英語圏相手にできるだけの語力がありません><
866nobodyさん:2007/05/28(月) 13:54:38 ID:???
pear.php.net に繋がらんヽ(`Д´)ノ
867nobodyさん:2007/05/28(月) 14:01:21 ID:???
NYは深夜だしな
868nobodyさん:2007/05/28(月) 15:36:20 ID:???
落ちてるじゃねーかYO!
869nobodyさん:2007/05/31(木) 11:01:08 ID:???
いまはさすがに繋がるな
870nobodyさん:2007/05/31(木) 20:11:10 ID:???
PEARってフレームワーク?
871nobodyさん:2007/05/31(木) 20:24:41 ID:???
      , イ)ィ -─ ──- 、ミヽ
      ノ /,.-‐'"´ `ヾj ii /  Λ
    ,イ// ^ヽj(二フ'"´ ̄`ヾ、ノイ{
   ノ/,/ミ三ニヲ´        ゙、ノi!
  {V /ミ三二,イ ,  /,   ,\  Yソ
  レ'/三二彡イ  .:ィこラ   ;:こラ  j{
  V;;;::. ;ヲヾ!V    ー '′ i ー ' ソ
   Vニミ( 入 、      r  j  ,′
   ヾミ、`ゝ  ` ー--‐'ゞニ<‐-イ
     ヽ ヽ     -''ニニ‐  /
        |  `、     ⌒  ,/
       |    >┻━┻'r‐'´
      ヽ_         |
         ヽ _ _ 」

  ググレカス [ Gugurecus ]
  ( 2006 ? 没年不明 )
872nobodyさん:2007/06/01(金) 01:17:38 ID:???
まだ赤ちゃんか
873nobodyさん:2007/06/02(土) 20:43:13 ID:???
PEARってつええな
俺の身の丈以上のことがひょいひょい出来るぜ
感動した
874nobodyさん:2007/06/03(日) 02:29:57 ID:???
>>873
恥を知れ
875nobodyさん:2007/06/16(土) 18:54:07 ID:???
どんだけ低身長なんだよ(w
876nobodyさん:2007/06/26(火) 23:35:41 ID:X+qRiCvs
installで分からないところがあります。

ローカル環境にXML_RSSをインストールしようと思っているのですが、以下のようなエラーが出てしまいます。

C:\xampp\php>pear install xml_rss
Did not download dependencies: pear/XML_Tree, use --alldeps or --onlyreqdeps to
download automatically
pear/XML_RSS requires package "pear/XML_Tree"
No valid packages found
install failed

xml_treeが必要とのことなので、以下のも実行して見ました。

C:\xampp\php>pear install xml_tree
pear/xml_fastcreate requires package "pear/XML_Tree" (version >= 2.0b2), downloa
ded version is 1.1
pear/XML_Tree cannot be installed, conflicts with installed packages
No valid packages found
install failed
__________

conflicts with installed packages から既にインストールされているパッケージとの依存関係からエラーが起こると思うのですが、原因が分かる方いたら教えてください。
ちなみにxml_fastcreate はインストールされています。
877nobodyさん:2007/06/26(火) 23:47:32 ID:???
pear install --alldeps XML_RSS
で依存パッケージも勝手に入れてくれるはずだけど
confilictしててよくわからなったらとりあえず依存してるっぽいやつ
一旦全部uninstallしてみてalldepsでいれてみな
878nobodyさん:2007/06/27(水) 00:32:02 ID:hFOZBWIz
>>877
素早い対応ありがとうございます。無事インストールできました。
インストールする前の環境は

PACKAGE VERSION STATE
Archive_Tar 1.3.2 stable
Auth 1.5.2 stable
Auth_HTTP 2.1.6 stable
Console_Getopt 1.2.3 stable
DB 1.7.11 stable
PEAR 1.6.1 stable
Structures_Graph 1.0.2 stable
XML_Beautifier 1.1 stable
XML_FastCreate 1.0.3 stable
XML_Feed_Parser 1.0.2 stable
XML_Parser 1.2.8 stable
XML_Serializer 0.18.0 beta
XML_Util 1.1.4 stable

でした。いくつか消せなかったのですが、
Auth_HTTP 2.1.6 stable
ML_FastCreate 1.0.3 stable
XML_Feed_Parser 1.0.2 stable
XML_Serializer 0.18.0 beta
を消してからpear install --alldeps XML_RSS を実行すると出来ました。
879nobodyさん:2007/06/28(木) 17:13:50 ID:???
PEARってインストールしなくても使えるよね?
880nobodyさん:2007/06/28(木) 20:36:46 ID:???
えっ
881nobodyさん:2007/06/29(金) 00:48:22 ID:???
(^ー^)
882nobodyさん:2007/06/29(金) 09:54:58 ID:???
( ゚д゚ )
883nobodyさん:2007/07/03(火) 10:55:42 ID:RDWGqtzx
超初心者的な質問ですが
PEARにライブラリ?をインストールって言うのは
インクルード指定してあるフォルダにそのファイルを置けばいいだけですか?


884nobodyさん:2007/07/03(火) 11:20:41 ID:???
>>883
依存関係とか全部自分でやればOK
pear コマンド使った方が楽だと思うけど
885nobodyさん:2007/07/03(火) 14:54:43 ID:RDWGqtzx
コマンドの使い方がいまいちわからないので
886nobodyさん:2007/07/03(火) 15:09:10 ID:???
>>885
pear install ライブラリ名
887nobodyさん:2007/07/05(木) 20:01:16 ID:???
php5 + postgresql8を使用しています。

pearのDBにあるautoexecuteでバイナリデータをinsertさせようとしてるんですが、
autoexecuteってbyteaのデータをかってにクオートしちゃうっぽいんです。

この辺の動作について知ってる人or良い解説ないですか?
888887:2007/07/05(木) 20:35:08 ID:???
自己解決。

common.php内、関数buildManipSQLにて、
$values .= '?';
となっているためprepareされるqueryが?しか生成されない。
マニュアルにその辺は適宜変換されるとあったが、それは単純にprepare側にて
?で渡されたqueryの解釈を良いように行う、との事だった模様。

* + <kbd>?</kbd> scalar value (i.e. strings, integers). The system
* will automatically quote and escape the data.


うーん日記ですまん。
889nobodyさん:2007/07/06(金) 10:07:28 ID:???
それ英語の読めてないだけやん。マニュアルのせいじゃない
890nobodyさん:2007/07/11(水) 14:54:17 ID:PnaVaP5y
質問です。

postgreSQL + PHP + PEAR::DB をどうしても使わないと行けない環境で
開発してるんですけど、
データベースからのデータ削除時に実際にDBMSが削除したデータ
件数を取得したいんですけど、
PEAR::DB を使って出来ますでしょうか?
(パソコンからだと投稿できないので携帯から書いてます。。。)
891nobodyさん:2007/07/11(水) 15:08:18 ID:???
>>890
PEAR::DBっていうか、RETURNINGを使えば分かるかと。
892nobodyさん:2007/07/11(水) 17:04:49 ID:???
>>890
全ての環境で同じかどうかは断言できないが
仕様としてはいちおう DB_Common::affectedRows() で取得できる.
pgsql ドライバは正しく pg_affected_rows() を叩いてるので大丈夫だと思う.
893nobodyさん:2007/07/16(月) 00:35:42 ID:OjCJuTb6
質問させてください
今回初めてpearを導入しようと思ってるものです。
それで、インストールについてですが Auth などの各モジュールは
そのフォルダごと(Authフォルダ) include/pear/ に入れればいいんでしょうか?
「Auth 1-3」などのバージョン部分「1-3」を削除して?
参考として
http://www.phpbook.jp/pear/pear_auth/index1.html
を見ているのですが、念のため確認させてください

あと、雑誌についてたpagerモジュールとjpgraphモジュールは、それぞれのフォルダの外の
package.xml というファイルとセットになっています。
これだと各フォルダ+xmlをpearディレクトリに入れたときに一方のpackage.xmlが上書きされますが、、
どうしたらいいのでしょう?
よろしくおねがいします。
894nobodyさん:2007/07/16(月) 01:36:24 ID:???
include_pathが通ってるディレクトリなら基本どこでもいい
package.xmlはPEARパッケージ用のファイルだから
ただライブラリとして使う分には必要ない消しても構わん
895nobodyさん:2007/07/16(月) 02:05:23 ID:OjCJuTb6
>>894
ありがとうございます!
いろいろ試してみます
896nobodyさん:2007/07/18(水) 04:28:26 ID:vE6tBjuq
すみません 質問です
pearをインストールしたらコマンドプロンプトに次のような文章が現れました

php.ini <C:\PHP\php.ini> include_path updated.

Current include path : .;C:\php5\pear
Configured directory : C:\PHP\pear
Currently used php.ini (guess) : C:\PHP\php.ini
Press Enter to continue:
** WARNING! Old version found at C:\PHP, please remove it or be sure to use the
new c:\php\pear.bat command

phpをインストールした時、php.iniはwindowsフォルダの中に編集した上で入れたんですが、
オリジナルのphp.iniは元の場所に置いたままでした
上のメッセージはそのオリジナルを編集したってことでしょうか?
では、もう一度手を加えてwindowsフォルダに入れなおしたほうがいいですか?
環境は winXP php5.2.3 apache2 です
ご意見いただきたいです よろしくおねがいします
897nobodyさん:2007/07/18(水) 08:56:29 ID:???
C:\PHP\php.iniの方のinclude_pathを更新したよってことだな
phpinfoで今ロードされてるphp.iniのパスを確認して
とりあえずロードされてない方は消しといた方がいいだろうな
んでinclude_pathを更新
898nobodyさん:2007/07/18(水) 11:23:22 ID:vE6tBjuq
>>897
了解です サンキュ
899nobodyさん:2007/07/18(水) 11:48:15 ID:???
SQLiteとAuthを使ってログイン認証をしたいのですが、何度やっても認証失敗になってしまいます。
http://dozo.matrix.jp/pear/index.php/PEAR/Auth/drawLogin.htmlの方法でやるには(SQliteで)、どうすればいいでしょうか?
900nobodyさん:2007/07/19(木) 13:11:39 ID:???
・ID出せ
・sqliteのDB作れてるのか
・dsnの記述は
情報なしで質問出来ると思うのか?
901nobodyさん:2007/08/01(水) 16:44:37 ID:1HTj5yh2
Spreadsheet_Excel_WriterでExcelファイルに出力する方法は、
新規にファイルを作って書式設定しながら出力するサンプル
ばかり見かけます。
あらかじめ作っておいたひな型を開いて、そのファイルの
必要項目のセルに出力することはできないのでしょうか。
902nobodyさん:2007/08/01(水) 18:43:55 ID:???
>>901
object The Spreadsheet_Excel_Writer::Spreadsheet_Excel_Writer ([string $filename=''])
string $filename - オプションで、ワークブックのファイル名を指定します。
って書いてあるから出来るんじゃないの?
903nobodyさん:2007/08/06(月) 10:58:11 ID:KGjjzVca
AUTHで認証成功して、
他のファイルに、認証情報を引き継ぐ事って可能なのでしょうか?
どなたかご教授下さい。
904nobodyさん:2007/08/06(月) 11:18:37 ID:???
意味不明
とりあえずセッション、クッキーについての知識はあるのか?
905nobodyさん:2007/08/06(月) 11:27:36 ID:KGjjzVca
ちょっとだけ。
906nobodyさん:2007/08/06(月) 14:31:34 ID:???
じゃ、その認証情報はどこに保存されてると思う?
907nobodyさん:2007/08/06(月) 14:34:46 ID:KGjjzVca
[PHPSESSID] => 63c7231fb0f2ed84663d75b260ad8287
908nobodyさん:2007/08/06(月) 15:55:14 ID:???
どうしてそんなことしたいんだ>他ファイルに引き継ぐ
909nobodyさん:2007/08/06(月) 17:47:19 ID:KGjjzVca
1枚で処理しきれないんです。
910nobodyさん:2007/08/06(月) 20:47:25 ID:???
そろそろえすぱーさんの出番ですよ
911nobodyさん:2007/08/07(火) 12:11:31 ID:nqMZFXTj
質問です  winXP+Apache2+PHP5.2.3 で
PEARの各モジュールをインストールしてるんですが、以下のエラーがでます。

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\Program Files\PHP\
ext\php_zip.dll' - 指定されたモジュールが見つかりません。
in Unknown on line 0

php_zip.dllに限らず、ものすごい数のエラーが出るんですが、確認すると/extディレクトリには
該当ファイルが存在します。
おまけに、PEARモジュールのインストール事態は成功と表示されるし、
(install ok: channel://pear.php.net/Pager-2.4.4)
実際に機能もしています。

上記のエラー、気にしなくていいんでしょうか?
なにが原因かなどわかる方いたらよろしくお願いします。
912nobodyさん:2007/08/07(火) 13:32:02 ID:???
php.iniのextension_dirが適切に設定されてるいるか?
913nobodyさん:2007/08/08(水) 03:31:53 ID:???
>>912
>適切に設定

されてるんですよ
動作もちゃんとするし 何だコリャ?って気分、、
914nobodyさん:2007/08/08(水) 10:08:27 ID:???
php.iniがちゃんと読み込まれてるか確認
pearのext_dir設定も確認
不要なモジュールはちゃんとコメントアウト
915nobodyさん:2007/08/08(水) 11:31:31 ID:???
まずそのコード内で phpinfo() して
実際に適用されてる extension_dir の値をチェックすべき
916nobodyさん:2007/08/10(金) 17:16:59 ID:Zwzs53gD
PHP+MySQLをある程度使えるようになったので、
PEARの勉強をしようと思うのですが、何か参考になるサイトはないでしょうか?
917nobodyさん:2007/08/10(金) 17:58:01 ID:???
PHP+MySQLをある程度使えるなら
自分でぐぐるくらいできるだろ
918nobodyさん:2007/08/10(金) 20:33:20 ID:???
919nobodyさん:2007/08/11(土) 07:28:06 ID:???
PEARの使い方を知るにはクラスとか勉強してからのほうがいいですか?
920nobodyさん:2007/08/12(日) 05:03:10 ID:???
クラスライブラリだからな
使うだけなら"おまじない"的でいいのかもしれんが
921nobodyさん:2007/08/14(火) 14:55:54 ID:???
>>919
PEARでクラスの使い方を覚えればいい。
922nobodyさん:2007/08/16(木) 11:48:57 ID:nF87VTmb
autoExecuteを以下のようにして使うとDB Error: syntax errorが返ってきます。
$nameと$ageにはそれぞれPOSTされたデータが入っていて、idはauto_incrementなフィールドです。
$table_name = 'Test';
$insert = array(
'id' => NULL,
'name' => $name,
'age' => $age
);
$res = $db->autoExecute($table_name,$insert,DB_AUTOQUERY_INSERT);
if(PEAR::isError($res)) {
die($res->getMessage());
}
マニュアルも読んでみたのですが、これで合ってるような気がしてしまって余計に分からなくなってしまっている状況でs。
何かこのコードに問題があったら教えて欲しいです。
923nobodyさん:2007/08/16(木) 13:07:19 ID:???
'id' => NULL は、いらないんじゃんね?
924nobodyさん:2007/08/16(木) 14:59:31 ID:nF87VTmb
>>923
レスありがとうございます。
その部分を消して再度試してみましたがやっぱりSyntax Errorです。
マニュアルだとSyntax Errorはモードの指定が間違っているときに出るらしいんですがモードはこれで間違い無いはず・・・orz
925nobodyさん:2007/08/16(木) 15:26:44 ID:???
とりあえず die($res->getMessage()); のとこを一度var_dump($res)にしてみ
user_infoにDBが返したネイティブな詳しいエラーが入ってるはずだから
そのエラーを貼ってくれDBのエラーだけじゃよくわからん
926nobodyさん:2007/08/16(木) 15:50:19 ID:nF87VTmb
orz
スイマセン自己解決しました私の勘違いみたいでした。
927nobodyさん:2007/08/16(木) 15:58:33 ID:???
ところでさ、PEARなんか覚えても、
結局PEARを使わずに、PEAR使うよりも
簡単に便利に開発できるCakePHPを使うんだから
意味なくね?w
928nobodyさん:2007/08/16(木) 16:47:08 ID:???
夏休み中にライブラリとFWの違いについて勉強しておくようにな
929nobodyさん:2007/08/17(金) 11:23:26 ID:???
CakePHPならフレームワークに、ライブラリ相当の
機能が含まれているのでPEARはいりません。
知らなかったの?
無駄な努力しちゃったねw
930nobodyさん:2007/08/17(金) 12:58:09 ID:???
( д)      ...。。
931nobodyさん:2007/08/17(金) 13:58:02 ID:???
夏だしよくあることだと思ったが、
CakePHPで検索して一番最初に出てくる
CakePHP Usersのページのdescriptionで
Cake自身のページが「PEARの必要のない」って謳ってるのに驚いた

ライブラリ集の総称なのにそれが必要あるとかないとか
っていう売り文句はどうなのよCake(.jpの管理者)さん、と思った
932nobodyさん:2007/08/17(金) 14:19:30 ID:???
Net_UserAgent_MobileとかServices_AmazonとかMP3_IDv2とかに至るまで
全部Cakeが実装してくれるんなら文句もないが……
でもその実装するって行為自体がまさに「無駄な努力しちゃったね」になりそうだ
933nobodyさん:2007/08/18(土) 07:34:23 ID:???
>>931
これのこと?
>CakePHPは外部ライブラリ(PEARなど)を必要としない、PHP4とPHP5で利用できる
>高性能PHPフレームワーク(PHP Rapid Development Framework)です。

これってCakeはPEARなくても動くよってことじゃないの?
934nobodyさん:2007/08/19(日) 04:46:18 ID:???
PEARライブラリに依存してないよって意味だよね(笑)Ethnaみたいにさ。
しかも、うたってるのは本家の人だよね。
恥ずかしい人だね(笑)
935nobodyさん:2007/08/19(日) 11:13:12 ID:???
PEARライブラリに依存したフレームワークって何かあったっけ
Mapleなんかはライブラリ的なものが何もないから必然的にPEARでも何でも必要になるけど
依存してるってわけじゃないよな
936nobodyさん:2007/08/19(日) 12:08:18 ID:???
PieceはPEAR,Cache_Lite,Net_URL(Piece_Unity),MDB2(Piece_ORM)に依存してるね。
あとPEAR Installerでインストールできないspycにも。
937nobodyさん:2007/08/20(月) 15:29:02 ID:3dZ3yJyV
実環境でPEARを使ってみようと思ったのですが、PEARのインストールで悩んでいます。
go-pear.orgをアップロードし、実行したのですが、tempディレクトリのパーミッションが777じゃないと何回やっても怒られます。
手動でtempを作成し、パーミッションを777にし再度インストールしてもgo-pear.phpが755のtempを作ってしまうみたいで・・・
これはどうにかならないんでしょうか?

一応、エラーメッセージはこれです。
FATAL ERROR! This directory exists, but we have no write permission in it.
You can grant this permission by logging on to the server and issuing the following command:
chmod 0777 home/.../my_pear/temp
938nobodyさん:2007/08/21(火) 14:48:40 ID:pHyzkn8s
任意のurlへpost投稿する時の質問なのですが
inputテキスト系以外の
アップロードのフォームへはどういう記述をすればいいのでしょうか?
自サイトの保管画像などを渡したいのですが…

require_once "HTTP/Request.php";
$req =& new HTTP_Request("フォームのページ");
$req->setMethod(HTTP_REQUEST_METHOD_POST);

//POSTデータセット
$req->addPostData("ネーム属性", "バリュー" );



$req->addPostData("ネーム属性", "バリュー" );
//送信
$response = $req->sendRequest();
939nobodyさん:2007/08/21(火) 15:19:38 ID:???
>>937
レン鯖とかの設定によると思うけど、どうにもならない場合もあるかもしれないので
ローカルでパッケージをインストールしてライブラリだけアップしたらいい

>>938
man嫁
http://pear.php.net/manual/ja/package.http.http-request.file-upload.php
940nobodyさん:2007/08/21(火) 15:30:18 ID:pHyzkn8s
>>939
$req->addFile("johndoe-txt.pdf", "/home/johndoe/text.pdf");

謎なのがアップロードフォームタグにもnameはありますよね?
そのせいか画像はスルーされてテキスト部分だけの投稿になってしまいます…
941nobodyさん:2007/08/21(火) 15:54:00 ID:???
>>940
第1引数がフィールドのnameっぽいな
マニュアルのミスかな
http://pear.php.net/package/HTTP_Request/docs/latest/HTTP_Request/HTTP_Request.html#methodaddFile
942nobodyさん:2007/08/21(火) 17:42:57 ID:pHyzkn8s
>>941
ありがとうございます。試してみますね
943nobodyさん:2007/08/21(火) 18:31:22 ID:???
(name名,ファイル指定,ファイル属性)ですね
無事に投稿できました!
944sage:2007/08/23(木) 05:55:41 ID:yo6Adycn
Calendarにバグ発見。$mはmonthだから$sの状態見て$m弄ってるのはおかしいと思うんだがどうよ?

--- Calendar/Engine/PearDate.php.orig 2007-08-23 05:50:53.000000000 +0900
+++ Calendar/Engine/PearDate.php 2007-08-23 05:50:53.000000000 +0900
@@ -161,11 +161,11 @@
function adjustDate(&$y, &$m, &$d, &$h, &$i, &$s)
{
if ($s < 0) {
- $m -= floor($s / 60);
+ $i -= floor($s / 60);
$s = -$s % 60;
}
if ($s > 60) {
- $m += floor($s / 60);
+ $i += floor($s / 60);
$s %= 60;
}
if ($i < 0) {
945944:2007/08/23(木) 05:57:29 ID:???
げ!sage入れ間違えてる上にdiff張りつけてもインデント消えるの忘れとったわ……
946nobodyさん:2007/08/23(木) 09:15:22 ID:???
>>944
おかしい
レスの時間がおかしい
947nobodyさん:2007/08/23(木) 11:50:33 ID:???
Spreadsheet_Excel_WriterでExcelを新規作成した時ときのパーミッションなんですが
linux側でumask 000 に設定しても644で作成されてしまいます。
(touchで作成したファイルはきちんと666になります)

666で作成するにはどうしたらよいのでしょうか?
948nobodyさん:2007/08/23(木) 12:01:12 ID:???
>>944
そういうことはPEAR::Bugsに報告しろや。
949944:2007/08/24(金) 19:25:49 ID:???
>>946
レスありがとう。
独りデスマーチで徹夜してたんで、あの時間だった。(デスマ中の息抜きというか)
そのデスマでカレンダー絡みのモノがあったんで、今まで使ったこと無いPEAR/Calendar見てたら、
たまたま記述ミス見付かったという。

>>948
レスありがとう。
英語でコミュニケーションするの苦手だし、無言でいるよりかはここにでも書いとけば
いずれGoogleでも引っかかるようになるだろうし、自然に広まるかなと。
PEAR::Bugsに報告するのが一番なのは>>948さんの仰る通り。
950nobodyさん:2007/08/26(日) 17:50:52 ID:aCWzzRM0
MDB2とかのbuildManipSQLでフィールド名をクォート済みで出力させるのって出来ますか?
951950:2007/08/26(日) 18:06:13 ID:aCWzzRM0
buildManipSQLの後クォートしても
execParamのときにはずれますね・・・。
MDB2系でフィールド名クォートして実行する方法あればお願いします。
952nobodyさん:2007/08/26(日) 18:14:32 ID:THPLCEUI
初心者ですがpear.batが実行できません。どうすれば宜しいでしょうか?
色んなサイトの方法を訳も分からずやってしまい、益々訳わからなくなりました。

c:\php内のgo-pear.batを実行
PEAR_ENV.regを実行
現在php.iniが

; Windows: "\path1;\path2"
;***** Added by go-pear
include_path=".;C:\php\pear;c:\php\includes"
;*****
include_path = ".;C:\php\includes;C:\php\pear"
; The root of the PHP pages, used only if nonempty.

と、こんな感じになってしまってます。

MS-DOSプロントでC:\>pearと打つと「コマンドまたはファイル名が違います」
C:\>php\pearと打つと「コマンドまたはファイル名が違います。PHP_PEAR_INSTSLL_DIR is not set correctly.
Please fix it using your enviroment variable or modify the default value in pear.bat.
953950:2007/08/26(日) 18:54:02 ID:???
すみません、自己解決しました。
$mdb2->setOption("quote_identifier", true);
ですね。
954nobodyさん:2007/08/27(月) 11:33:08 ID:???
>>952
拡張子まで入力してやってみろ
955nobodyさん:2007/08/27(月) 11:35:16 ID:ICxB7mvC
今、初めてPEARのDB使ってるんだけど、
これもしかして文字コードの項目ない・・・?
DBにアクセスすると同時に文字コードを設定したり、
fetchでセットを取得して配列に格納するときに文字コードの変換を行いたいんだけど
全て手動でしないといけないのかな?
956nobodyさん:2007/08/27(月) 11:40:35 ID:???
957nobodyさん:2007/08/27(月) 11:41:46 ID:ICxB7mvC
>>956
英語読めないからこっち見てるwww
http://pear.php.net/manual/ja/package.database.db.php

ここ見たうえで文字コード関係の項目が見つからないんだけど
こっちはバージョンが古かったりする?もしかして・・・
958nobodyさん:2007/08/27(月) 11:48:31 ID:???
>>957
This package has been superseded, but is still maintained for bugs and security fixes. Use MDB2 instead.
959nobodyさん:2007/08/27(月) 11:50:42 ID:ICxB7mvC
他のライブラリと併用ですね、わかりました
960nobodyさん:2007/08/27(月) 13:34:02 ID:ICxB7mvC
再度質問させてください

PEAR/Net/UserAgent
に、Detect.phpしか入っていなかったので、
Mobile.phpをインストールしたいのですが、
コマンドプロンプトで「cd\xampp\php\pear.bat」と打ったところ
DB2CLI.dllが見つかりません
isqlt09a.dllが見つかりません
などのエラーが出て、「CLIは動作を停止しました」となり、強制終了されていまいます。
どのようにしてインストールすれば良いのでしょうか?

Windows Vista
XAMPP1.6.2
961nobodyさん:2007/08/27(月) 13:50:32 ID:???
962nobodyさん:2007/08/27(月) 13:58:14 ID:ICxB7mvC
>>961
ありがとうございます。
php.exeとgo-pear.batを上書きし、
pear.iniを削除して、同じく実行してみたのですが、同じエラーになってしまいます。

もしかして、PEARをzipで配布していたりするのでしょうか?
もしそうなのでしたら、zipを解凍してpearフォルダに入れようと思っているのですが、
これは正しい手順ですか?
963nobodyさん:2007/08/27(月) 14:10:02 ID:???
ちょ、読めよ
964nobodyさん:2007/08/27(月) 14:12:55 ID:ICxB7mvC
自分の症状は(1)で、
「それはXAMPPが使っているPHPがヘンなんだよ。ZIPから解凍して上書きしてごらん」
ということで、php.exeを上書きしてみたのですが、同じでした。
この場合の「PHP」というのは、PHPフォルダにある全体を指しているのでしょうか。
それとも、php.exe単体を指しているのでしょうか?
フォルダごと上書きしてしまうと、後々何か不具合が起きるのではないかと思うと躊躇ってしまい上書きできません。
965nobodyさん:2007/08/27(月) 14:34:56 ID:???
えーっと、リンク先が参照してるXAMPPのフォーラムは読んだのか?
XAMPPの1.6.2ってPHPのバージョン幾つだ。5.2.3ならする必要がない。
つか、XAMPPはどこにインストールした?
966nobodyさん:2007/08/27(月) 14:37:09 ID:ICxB7mvC
PHPのバージョンは5.2.2です。
インストール先はC:\xampp\です。

5.2.3を丸々上書きしてみたのですが、5.2.2のままになっています。
(ちなみに、OSやApacheの再起動はしました。)
967nobodyさん:2007/08/27(月) 14:45:28 ID:???
>>966
simply download the latest PHP binaries (5.2.3 or later) and replace it into your XAMPP's php folder..
968nobodyさん:2007/08/27(月) 15:05:22 ID:???
XAMPP1.6.3aのアップデータでバージョン上げたら?
PHPのバージョン5.2.3だし
969ミューズイングリッシュ:2007/08/27(月) 16:21:13 ID:???
みなさんこんにちは
小さな英会話教室をしていて、ホームページを作っています。
そこでスケジュールカレンダーをphpで、できるとのことだったので、
友人からもらったプログラムをリンクさせましたが、
ログインすると、
Parse error: parse error, unexpected T_STRING in /www/a-mail/muse-eng.jp/public_html/schedule/Calendar.class.php on line 85

と、このようにでます。
ド素人なのでプログラムの書き換えもわかりません。
デザインは出来ていています。
phpプログラムを見て適正に修正して頂ける方探しています。
もちろん謝礼贈呈します。予算がないので10,000円で考えていますが、
お力添えいただける方、宜しくお願いいたします。
対象のホームページ www.muse-eng.jp
ご連絡先メールアドレス [email protected]
宜しくお願いいたします。
970nobodyさん:2007/08/27(月) 16:33:11 ID:???
>>969
老婆心ながら、
あなたが書かれている情報はクラッカーに狙ってくれといっているようなものですよ。

PHPがわからないといっているのに、アドレスまでのせて・・・。
しかもエラーメッセージにディレクトリまでご丁寧に。
971ミューズイングリッシュ:2007/08/27(月) 16:37:38 ID:???
悪意がある人ばかりとは思っていません。
972nobodyさん:2007/08/27(月) 16:38:47 ID:???
悪意がある人が10人中8人くらいなら構わないっての?
973nobodyさん:2007/08/27(月) 16:40:25 ID:???
2ちゃんにのせるような情報じゃないってことです。
親切心で言ってます。
974ミューズイングリッシュ:2007/08/27(月) 16:41:39 ID:???
他のところでもあまりいい反応もらっていませんが、
ホントにあてがなかったので、
ここならどなたか、いるかなと思いました。
すみませんでした
975nobodyさん:2007/08/27(月) 16:48:37 ID:???
なぜその友達に聞かないの
976nobodyさん:2007/08/27(月) 17:36:09 ID:???
だよな、そのプログラムを持ってきた友人とやらに相談しろよ
大体、スレ違いだ
977nobodyさん:2007/08/27(月) 19:18:07 ID:???
10000円あるならその辺のASP屋に相談しなはれ
978nobodyさん:2007/08/27(月) 19:28:45 ID:???
スレ違いのネタはスルーしろよ
979nobodyさん:2007/08/30(木) 11:43:49 ID:???
そうだそうだ
980nobodyさん:2007/09/01(土) 17:09:59 ID:???
すみません、PEARのインストールを行ったのですが、
Mail_Mimeだけどうしても入れられません。
詳しい方いらっしゃいましたら、ご教授お願いできないでしょうか。

//////////////////////////////////////////
サーバー:さくらインターネット
PHP Version 5.2.3(別途インストール)

---------------------------
%pear install -a Mail_Mime
pear/Mail_Mime requires PEAR Installer (version >= 1.6.0), installed version is 1.4.11
pear/Mail_mimeDecode requires PEAR Installer (version >= 1.6.0), installed versi on is 1.4.11
pear/Mail_mimeDecode requires package "pear/Mail_Mime" (version >= 1.4.0, exclud ed versions: 1.4.0)
No valid packages found
install failed

---------------------------
%pear list-upgrades
PEAR.PHP.NET AVAILABLE UPGRADES (STABLE):
=========================================
CHANNEL PACKAGE LOCAL REMOTE SIZE
pear.php.net Mail_Mime 1.3.0(stable) 1.5.2 (stable) 22kB

---------------------------
%pear list
..
PEAR 1.6.1 stable
..
--------------------------
問題点の参考blog記事
ttp://fdays.blogspot.com/2007/06/pearmailmimedecode.html
ttp://darts-bar.info/test/enviroment/test11(Apache%20PHP%20MySQL)%20.php
981nobodyさん
PEARの1.6.0以上が必要って言われるけど
pear list ではPEARは1.6.1になってるってことかな?
とりあえず pear upgrade PEAR ってみてからもう一回チャレンジしてみ