【PHP】PEAR Part3
at PHP
1:nobodyさん
07/09/03 12:15:51 l6O4U4Dh
■PEAR
URLリンク(pear.php.net)
■PEAR マニュアル 邦訳
URLリンク(pear.php.net)
■PEAR オフィシャル blog
URLリンク(blog.pear.php.net)
■前スレ
【PHP】PEAR Part2
スレリンク(php板)
■過去スレ
Pear
スレリンク(php板)
2:nobodyさん
07/09/03 13:16:17
Pear2Pearを語るスレ
3:nobodyさん
07/09/07 16:39:26
MDB_QueryToolで3つのテーブルをJOINしたいんだけど、
どうやったらいいのか分かりません。
表A
Id,a_name
1,name1
2,name2
表B
Id,b_name
1,name1
2,name2
表c
Id,c_name
1,name1
2,name2
A.id = B.id and A.id=C.id and B.id =C.idの条件で結合して
Id,a_name,b_name,c_name
が欲しいんだけど、どうやって3表をJOINしたらいいのか、
JOINの条件はどう指定したらいいのか分からないので、
教えてください。orz
4:nobodyさん
07/09/07 16:57:00
select * from A natural join B natural join C
でどうかしら?
5:nobodyさん
07/09/07 17:32:08
>>4
d。
でも可能な限りMDB_QueryToolでやってみたいのです。
SQLなら
select A.Id,A.a_name,B.b_name,C.c_name from A,B,C
where A.id = B.id and A.id=C.id and B.id =C.id
でも良いと思うのです。
MDB_QueryToolじゃJOINの入れ子は無理かなぁ。
出来たとしても、インラインビューとかサブクエリの使えない
MySQL3.23では実行できない可能性も高いけど・・・orz
6:nobodyさん
07/09/07 17:56:07
>>5
URLリンク(pear.php.net)
ドキュメント見る限りsetJoinでテーブル名3つと条件まとめて指定か
addJoinでテーブルと条件をそれぞれ追加していけばいいんじゃないか?
QueryTool使ったことないのでなんとも言えないが
7:nobodyさん
07/09/07 19:09:08
>>6
d
setJoin(Array('A','B','C'),'A.id = B.id and A.id=C.id and B.id =C.id');
とかやってみればいいのかな。
最初にsetJoin + addJoinでやってみたけど、
getQueryStringが戻ってこなかったんだよ。orz
とりあえず、QueryTool使わずに
目的の戻り値は得られたんだけど、
もうちょっと精進してみるわ。
8:nobodyさん
07/09/14 10:00:28 ri4+Axdv
sendmail_path 『/usr/sbin/sendmail -t -i』
$params['sendmail_path'] = "/usr/sbin/sendmail";
$params['sendmail_args'] = "-t -i";
$mail =& Mail::factory('sendmail', $params);
を行うと、PEARで下記のエラーが返ってきます。
Unable to find class for driver sendmail
サーバーではsendmailが使えるはずなのに、sendmailへのパスが見つからないということでしょうか?
9:8
07/09/14 12:49:35 ri4+Axdv
解決しました。
原因はMailディレクトリをアップロードしていませんでした
10:nobodyさん
07/09/14 14:09:12 sjZ28MC/
テラアホス
11:nobodyさん
07/09/20 18:39:15
query()とexecute()の違いが良く判りません
日本語マニュアルだとquery()は
>パラメータ $params を指定しており、クエリ内で プレースホルダを使用している場合に、 prepare() および execute() の代わりに使用されます。
とのことなんですが、execute()でもプレースホルダは使えますよね・・・
query()を使った方が性能がいいんでしょうか。
12:nobodyさん
07/09/21 12:37:06 bsogWMXa
くだ質にいけよwww
13:nobodyさん
07/09/21 13:30:24
>>11
DBはもう使うなMDB2使え
で、MDB2ではSELECTする時はquery、INSERT/UPDATE/DELETEする時はexecだ
データを要求して受け取るのかDB内部でデータ操作を行うのかの違いだ
14:nobodyさん
07/09/22 16:54:38
ありがとうございます
MDB2の学習をしてみようと思います
15:nobodyさん
07/09/28 17:36:14
こんにちは
追加インストールした二つのモジュールについて質問です。
-------------------------------------------------
require_once "HTTP/Request.php";
require_once "HTTP/Client.php";
-------------------------------------------------
Request.phpは読んでくれるのですが
Warning: main(HTTP/Client.php) [function.main]: failed to open stream: No such file or directory となります。
HTTPディレクトリには両方とも入っており(その下のクッキーマージャーも)正常だとは思うのですが…
.httには「php_value include_path ".:/home/ああああ/pear/PEAR"」と書いてあります
何かコンフィグを編集しないといけないのでしょうか?
16:nobodyさん
07/09/30 13:12:18
include_pathの通ってるところにファイルが無いだけ
17:15
07/10/01 09:17:14
別のディレクトリに再インストールして
改めてパスを通したら動作しました。
どうしてRequestは動いてclientは見つけてくれなかったんだろう…
18:nobodyさん
07/10/01 10:36:58
PEARのDB使うとクエリ実行のときに勝手にSQL分がエスケープされてるの?
19:nobodyさん
07/10/02 22:02:51
>>18
日本語でOK
20:nobodyさん
07/10/04 17:31:17
Spreadsheet_Excel_Writerで、日本語データをxlsで書き出すと、セル内の改行に♪が加わってしまうことがあります。
このような場合、一度セルを編集状態にすると♪が消えるのですが、この時フォント欄が文字化けしとります。
setFontFamilyの値は英語フォント前提のようなのですが、これって指定した方がいいですか?
21:20
07/10/05 17:48:55 t2aNP1T+
____
/ ─ ─\
/ (●) (●)\ どれ、そろそろ回答が…
| (__人__) | .________
\ `⌒´ ./ .| | |
ノ \ | | |
____
/::::::─三三─\ 華麗にスルーー
/:::::::: ( ○)三(○)\
|::::::::::::::::::::(__人__):::: | ________
\::::::::: |r┬-| / | | |
ノ:::::::::::: `ー'´ \ | | |
22:nobodyさん
07/10/05 18:05:03
>>21
∧__∧
( ´・ω・)∧∧l||l
/⌒ ,つ⌒ヽ )
(___ ( __)
"''"" "'゙''` '゙ ゙゚' ''' '' ''' ゚` ''"" "'
23:nobodyさん
07/10/05 23:41:50
Spreadsheet_Excel_Writerって使い物になるのかな?
Readerの方は使えんね。
日本語入れてちょっと複雑にしたら
すぐに読めなくなる。
この間は途中のシートを削除したら
シート情報が正しく読み取れなくなった。
いったん、Exce95形式で保存したりして復旧させたが。
まあ使えんといいながら、開発ツールとして使ってはいるわけだが。
24:nobodyさん
07/10/06 06:59:12
>>20
PHP Excel Creator Libraryがいいんじゃね?
URLリンク(pizzaseo.com)
個人的にはExcel_Reviserがオススメだけど。
25:nobodyさん
07/10/06 12:18:52
xoops界隈の開発者のソースに、何かを期待している方が間違っているってことが
まだ分からないのかw
26:nobodyさん
07/10/09 09:44:45
WindowsのPHPだとネイティブにExcelを扱えなかったっけか。
27:nobodyさん
07/10/09 13:51:03 VJHsqwfQ
/( ^o^ )\
28:nobodyさん
07/10/09 14:26:03
>>26
COM使えばできる。
29:nobodyさん
07/10/15 14:57:58 KaWp73zK
(○`O´○)カァーッ(○ ` .´○)ペッ
30:nobodyさん
07/10/17 19:00:50 ZPSnIgH0
pearを使ってみたいのですが、どうすればインストールできるのかわかりません。
ネットにあるようにやってみましたが、自分が何か間違っている様で、動いてくれません。
MS-DOSでphp\pearと入力すると
PHP_PEAR_INSTALL_DIR is not set correctly
please fix it using your environment variable or modify the default value in pear.bat
the current value is:
となります。
注意する点としてPATHがどうのこうの書いてあったので、setで見てみると
PATH=C:WIN〜;C:\php
”PHP_PEAR_INSTAL_DIR=C:\php|pear”
"PHP_PEAR_BIN_DIR=C:\php"
"PHP_PEAR_PHP_BIN=C:\php\.\php.exe"
となっています。
何か問題があるでしょうか?また、他に確認しないといけない点はどこでしょうか?
31:nobodyさん
07/10/18 09:24:50
PATHって、%PATH%とか入れといた方がいいんでないの?
ユーザ側の環境変数で追加する場合は。
32:nobodyさん
07/10/19 03:01:11
msconfigでやってみようと思ったのですが、サイトに書かれていた状況と違ったので断念しました。
ただ、PATH=C:WIN〜に「;C:\php」しろって書いてあったのですが、setで見てみると既にあるっぽいので良いかと…
というか、書かれてた状況になってないのが既に問題なんですけどねw
でもどうやってもその通りにならないのです。ver.が違うからだとは思うのですが…
33:nobodyさん
07/10/19 18:09:38
>>32
で、バージョンはいくつよ。
経験上、4.3以降ならgo-pear.bat実行した後、
出来たregファイルをダブルクリックして、
レジストリ登録すれば滅多なことはないはずだが。
34:nobodyさん
07/10/23 22:19:40
>>33
出先から失礼します。php5 の初期ver.です。
go-pear.batに問題がある(今は新しいのになってるらしい)と書いてたサイトがあったので、
最初のパッケージに入っていたのと、新しいgo-pear.batを試しましたがダメでした。
regファイル実行するとOKみたいな表示は出るのですが…なりません。
35:nobodyさん
07/10/29 21:54:34
HTTP_Request を使い始めたんですが、これってメモリリークしてませんか?
36:nobodyさん
07/11/01 00:20:40
Pagerのリンクに出てくるindex.phpって消せないんですかね?
37:nobodyさん
07/11/02 19:40:08
PEAR DBのプレースホルダに
?と|と&があるみたいなんだけど
|ってmysqlの生sqlでも意味ある文字でしょ?
まずくないの?
38:nobodyさん
07/11/02 20:37:48
| じゃなくて ! じゃね?
39:nobodyさん
07/11/05 22:09:00 ktD3JA9h
PEARのパッケージにソースコードをハイライトしてhtmlに変換するものはないんですか?
欲しいもの
・PHPのソースコードをhtmlで読めるようにする。(例えば開始タグを<phpにする)
・ついでにソースコードに色をつける(例えば<span class="method">print</span>('hogehoge');)
40:nobodyさん
07/11/05 23:09:04
PEARの前にマニュアル探そうぜ?
URLリンク(jp.php.net)
41:nobodyさん
07/11/06 02:00:29
>>35
そのままだと、読み込んだページを全部保持してるんだよ。
解除するオプションがあったはず。名前は自分で調べてくれ。
42:nobodyさん
07/11/06 02:14:06
EventDispatcherてだれが使ってんだ?
43:nobodyさん
07/11/12 02:50:52
>>39
手軽さなら>40だな
PEARにこだわるなら
URLリンク(pear.php.net)
だな
性能の高さならGeshiだな
URLリンク(qbnz.com)
上から順に生成HTMLが汚いかな
44:nobodyさん
07/11/12 18:57:08
PEAR::DB使ってみたのだが、メモリリークが激しい・・・
使い方間違っているのか・・・
45:nobodyさん
07/11/12 19:15:59
俺は何度でも書くぞ
PEAR DBはもうバグFIXしかされねてねーんだ
速くて便利で現在もアップデートされているMDB2使え
46:nobodyさん
07/11/12 19:35:12 KZwgk9tb
>>45
ちなみに今PEAR DB使ってる場合、
乗り換えって結構簡単?
47:nobodyさん
07/11/12 21:11:13
少し見てみればいいのに
48:nobodyさん
07/11/12 21:12:50
>>46
簡単だ、DB使ってるなら機能的には同じ機能がMDB2にもある
メソッド名が変わってるものは URLリンク(www.phpied.com) で対応がわかる
「DB MDB2 移行」あたりでぐぐれば他の情報も出てくるだろう
よっぽど変なことしてない限りは既存のソースの
名前を一括リプレースしていくだけでほぼ移行できるはずだ、
まあもちろんテストは必要だが
49:nobodyさん
07/11/15 10:05:46
HTTP_Clientでhttpsにログインしたいんだけど、無理ですか?
50:nobodyさん
07/11/15 11:08:50
>>49
--with-openssl で可能と思いますが。
51:nobodyさん
07/11/20 21:58:04
PEARのMDB2+php4.4.7を利用してMySQL4.0.26(日本語に最適だと思って)に接続しています。
テーブルのカラム名にふんだんに日本語を利用しているのですが、
@php標準のmysql_field_name関数でカラム名を取得した場合
APEAR::MDB2のarray_keys($inQueryResult->getColumnNames())にて取得
(カラム名の取得方法が分からないので苦肉の策;)した場合
@だと正確に日本語を取得できるのですがAだと一部(だから厄介)日本語が化けますし、大文字の英字が小文字になります。
例:ユーザID → ユーブid
パスワード → パベワード
レコード → レビード
分かる方いらっしゃいましたら回避方法をお教えいただけますでしょうか。
また、まだ使い始めなのですがPEAR::MDB2はこういう症状は多いのでしょうか?
52:nobodyさん
07/11/20 22:07:49
まず相談内容が文字化けしてる点ね。
パベワード
レビード
は、かわいいから許してやって。
53:nobodyさん
07/11/20 22:50:08
>>51
カラム名にマルチバイト文字なんて使うなよ
どうしてもって言うならMDB2の場合
Reverseモジュールをloadしてtableinfoメソッドで取ってみるとか
ていうかカラム名にマルチバイト文字なんて使うなよ
54:nobodyさん
07/11/21 06:35:27
> 分かる方いらっしゃいましたら回避方法をお教えいただけますでしょうか。
> また、まだ使い始めなのですがPEAR::MDB2はこういう症状は多いのでしょうか?
こんな事言ってるってことは、このデータベースをセットアップしたのは 51じゃないんじゃないか?
恐らくセットアップした本人がバックれて、尻拭いさせられてるんじゃw
55:nobodyさん
07/11/21 22:38:49
52-54さん
回答ありがとうございます。
DBですが、先輩の引退につき、まったく部署や開発チームは違ったんですが
私が引き継ぐことになったものです。
PEAR自体は私の独断で使ってみようかなと思った次第です。
あれからも色々と調べたのですが、文字化け以前に53さんのおっしゃる
TableInfo()すらCallできずundefined methodやfunction on a non-object
も回避できない状態でしたので、自分にはまだクラスまわりの勉強が不足
していると判断しました;
納期の関係もあるので現在上手くいっているphp標準関数で取り合えずは
処理し、しかし気になるのでPEARは個人的に気長に追いかけるとします。
そしてやっと今から個人的なPEARを追う時間です。
$mdb2->loadModule('Manager');でManagerのロードには成功し、
listTables()などをCallできるのですが
$mdb2->loadModule('Reverse');でReverseのロードに失敗しているのか
分かりませんがTableInfo()がundefined methodとなってしまいます。
Managerがロードできているので環境や設定ファイルは大丈夫だと思うの
ですが、また、ディレクトリやそれぞれのmysql.phpと中身のメソッドは
存在するのですが、何が原因かどなたか分かりますでしょうか。
56:nobodyさん
07/11/21 23:22:13
>>55
ManagerはロードできるのにReverseだけうまくいかないのかあ
とりあえずloadModuleは失敗してたらPEAR_Errorを返すから
$result = $mdb2->loadModule('Reverse');
if (PEAR::isError($result)) {
echo $result->getMessage();
exit();
}
してみてReverseのloadModuleが失敗してないか調べてみるとか
57:nobodyさん
07/11/21 23:47:30
51=55です、55の補足です。
●Manager
$mdb2->loadModule('Manager');
$buff = $mdb2->manager->listTables();
var_dump($buff);
→成功(php4では「manager->」必須のようです
URLリンク(manual.jpnote.net))
「manager->」を除いた場合
buff = $mdb2->listTables();
→Call to undefined method: mdb2_driver_mysql->listtables() ・・・
●Reverse
$mdb2->loadModule('Reverse');
$buff = $mdb2->TableInfo();
var_dump($buff);
→Call to undefined method: mdb2_driver_mysql->tableinfo() in ・・・
「Reverse->」を足した場合
$buff = $mdb2->Reverse->TableInfo();
→Call to a member function on a non-object in ・・・
いまいちphpのエラー内容は解釈苦手なのですがReverseの2つのエラー
はどちらも解答に近づいていない気がします。
58:nobodyさん
07/11/21 23:48:53
>>56さん
返信ありがとうございます、確認してみましたところとくに表示は出てきませんでした。
『Reverse モジュール (API) - スキーマのリバースエンジニアリングを
MDB2_Reverse_Common クラスで抽象化します。』
という記載がマニュアルにあったので
@スキーマを別途インストールして検証してみます。
また、どうにもMDB2+php4でそもそも動くのかというところから検証すべく
Aphp5+MDB2で検証してみます。
会社の環境は変更できないため自宅で環境を作ってからの検証
になりますので気長にやります。
他、なにかヒントになるような確認事項等ありましたらお願いします。
あと、回答遅くなりましたが日本語でのカラム名ですが、
たしかにおっしゃる通りです。私もこれまで思ってはいましたが実際挑戦する
ことになったのは今回が初です。
しかしながら、「もしも気兼ねなく日本語使えたら」という思いで頑張ります。
オープンソースの世界では無謀な挑戦かもしれませんが。
59:nobodyさん
07/11/22 08:38:13 nlNH1bOE
日本語でカラム名をつける発想は無かったわ。
60:nobodyさん
07/11/25 15:12:08 mmjJDucQ
pear つながらん
go-pear.org 自体がなくなってるって、あかんやろ!
んで、 URLリンク(pear.php.net) もつながらん!
PEARインストールできひんやんけボケ
61:nobodyさん
07/11/25 15:17:37
PHP6でpearがコアに統合されたから役目が終わったんだろ
62:nobodyさん
07/11/26 11:14:04
>>60 今調べたらアクセスできたよ。
63:nobodyさん
07/11/29 15:59:33 5JTcagKP
「下らねぇ…」スレが荒れてますので、こちらで質問させてください。
特段の変更無く PHP をインストールした場合、pecl は勝手にインストールされるものですか?
それとも、設定の変更や、PHPとは別に後で追加する必要があるものですか?
(PHP 5.2.4、Apache/2.2.6、FreeBSD 6.2-RELEASE)
64:nobodyさん
07/11/29 16:11:42
>>63
peclはインストールされません
URLリンク(jp.php.net)
65:nobodyさん
07/11/29 19:23:28 5JTcagKP
回答ありがとうございます。
リンク先のマニュアルは先日読んだのですが、イマイチ理解できませんでした。
ここで説明しているのは PECL 拡張モジュール のインストール方法ですよね?
pecl の実行プログラム(管理プログラム) のインストールはどうなのでしょうか?
「PECL は PHP 拡張モジュールのリポジトリで、 PEAR パッケージシステムを経由して使用可能です。」
とありますが、PEARを使って、PECL をインストールするという意味でしょうか?
66:nobodyさん
07/11/29 19:24:53
【誤】 とありますが、PEARを使って、PECL をインストールするという意味でしょうか?
【正】 とありますが、PEARを使って、PECL の管理プログラムをインストールするという意味でしょうか?
67:nobodyさん
07/11/29 20:24:27
イマイチ理解できませんでしたじゃなくて
自分の全能力をかけて理解しろ。
68:nobodyさん
07/11/29 20:35:01
翻訳が下手なんだろ。
原文読んでみたら。
69:nobodyさん
07/11/30 11:53:24
それだと英語は読めませんっていいそうだな
70:nobodyさん
07/11/30 12:03:53
>>65
まずpeclコマンドがあるか調べる
$ which pecl
パスが出てくるなら入ってる、not foundなら入ってない
特段の変更無くインストールしたって言ってもソースから入れたのか
ディストリのパッケージシステムで入れたのかconfigureでも色々変わってくる
pearを入れたらpeclコマンドも付いて来たと思う
ソースからphpを入れてる場合、configureでpearインストールを
offにしてない限りはpearが入るので普通はpeclも入る
パッケージでphpを入れただけの場合はおそらくpearは入らない、
debianではphp-pearというpearのパッケージにpeclコマンドが同梱されている
俺はdebianを使っているのでBSDのportsが
どういうパッケージ構成かは知らないが
おそらくportsでも同じようにpearのパッケージに含まれてるんじゃないかと思う
なのでパッケージで管理してるならpearのパッケージを入れてやれば良い
基本的にこういうのはUnix/Linux周りの話だ
これという回答は環境によるのでこれくらいしか答えられん
71:nobodyさん
07/11/30 12:14:41
俺はportsでpear入れるの嫌だなぁ。
pearがパッケージになってるのに、
それをさらにportsするってあんまり意味がない。
72:71
07/11/30 12:16:31
>>71はPEAR自体ではなく、PEAR内の様々なパッケージにおいて。
73:70
07/11/30 12:55:41
勘違いされてるとアレなので、
>>70でpearのパッケージと書いてるのは
「PEAR自体(PEARインストーラ)」のこと
あとそれが良い悪いの話じゃなく
あくまでpeclインストールにおける説明の話
>>71
もちろん俺も「PEARモジュールのパッケージ」はPEARで入れている
aptでPEARモジュールを入れたりはしないし俺も嫌だ
74:nobodyさん
07/11/30 13:09:33 BdEY/zDV
>>70
現時点で、pecl コマンドは存在しています。
そのコマンドがどの時点でインストールされたのかを把握したいのです。
サーバ管理者と pecl について認識の違いがありまして。
> ソースからphpを入れてる場合、configureでpearインストールを
> offにしてない限りはpearが入るので普通はpeclも入る
まさに知りたかった核心部分です。ありがとうございます。
75:nobodyさん
07/11/30 17:17:27 BdEY/zDV
> PHP5の仕様としてpecl(の管理プログラム)が導入されますが、
> peclの拡張モジュールを導入しなければ、
> 正常に動作することは御座いません。
というのは、正しいのでしょうか?
76:nobodyさん
07/12/03 14:41:35
ローカルではPEARのインストールできたのですけど、レンサバではインストールできないってことはありますか?
ちなみに候補はロリポ、ハッスル、tok2です。
77:nobodyさん
07/12/03 18:37:46 L6QEctwt
そんな高度なこと聞くな
78:nobodyさん
07/12/03 18:44:44
レンサバによるんだろうが、最悪
ローカルでインストールしたPEARをフォルダごと、
レンサバに転送すれば使える
79:nobodyさん
07/12/08 01:05:05 RahyBUvh
>>76
go-pearでインストールするのが楽だとおもう。
URLリンク(www.google.co.jp)
80:nobodyさん
07/12/10 09:19:37
>>76
共有ホストでの PEAR のローカルコピーのインストール
URLリンク(pear.php.net)
81:nobodyさん
07/12/13 20:23:04 cpa1InAO
携帯サイト用にKemp上でNet_UserAgent_Mobileを使ってるんですが
Fatal error: Call to a member function getModel() on a non-object in Net/UserAgent/Mobile.php on line 170
となってはまってしまってます。同じ症状なった方いますか?PHPは5.2.5です。
82:nobodyさん
07/12/18 12:08:19 BXvnHaJk
最近pearはじめました
$DB = NewADOConnection(_DB_TYPE);
$DB -> pconnect(_DB_HOST, _DB_USER, _DB_PASS, _DB_NAME);
$table = _DB_SALOON_KIHON_TB;
$sql="select * from ".$table." where uId = ".$_SESSION['uId'];
$sqlResult = $DB -> Execute($sql);
$obj = $sqlResult->fetchnextObject();
として、以下を実行しても値が取れないんだけどどこが問題ですか?(接続などはOKです)
echo $obj->Fields[loginPass];
83:nobodyさん
07/12/18 12:31:36
print_r($obj->Fields);
の結果は?
84:nobodyさん
07/12/18 12:48:58 BXvnHaJk
>>83
ありがとう それの結果は戻ってきません
print_r($sqlResult); は配列?で大量に戻ってくるんですが…
85:82
07/12/18 18:37:51
解決しました 解決じゃないんだけど、
$obj->カラム名というやり方で目的は達成できたということで…
>>83 ありがとう
86:nobodyさん
07/12/18 22:06:17
>>84
var_dump($obj);の結果は?
87:nobodyさん
07/12/31 15:45:26
peclのid3を
pecl install id3
ってやって全部うまくいって入ったんだけど
入れた後はどうやったらその関数使えるようになるの?
インストールしたあとすぐにつかえるとおもって
<?php
print_r(id3_get_tag("test.mp3"));
?>
ってファイル作ってもなにも動作しないや・・・
なんか設定必要?
一応アパッチの再起動かけたけど駄目だった
88:nobodyさん
07/12/31 16:08:48
>>87
php.ini に直接か php.d/id3.iniを作って
extension=id3.so //id3.soであってるかどうかは知らん。
と書かなきゃいけないんじゃね。
その後、apache再起動。
もしくはdl()でロードするとか。
89:nobodyさん
07/12/31 17:52:36
>>88
php.iniに
extension_dir = "/usr/lib/php/modules"
って書いてあって
/usr/lib/php/modulesには
id3.soが入ってるからいいかなぁって、おもったけど
90:nobodyさん
07/12/31 18:13:33
>>88さんのとおりやったらできた
ありがとうございます
91:nobodyさん
07/12/31 18:30:34
いや、そこは URLリンク(jp.php.net) を見て、
extension_dirと extensionの違いが分かりました、とかそういう自己レスが欲しいところかと・・・
92:nobodyさん
07/12/31 21:02:43
>>91
それはphp.iniに書いてある
; Note that it should be the name of the module only; no directory information
; needs to go here. Specify the location of the extension with the
; extension_dir directive above.
って所読んだら
extension_dirはモジュールファイルが置いてある場所の指定だけで
extension=ext.soを使って動的に読む込むという風に自己解釈して終わらせちゃいました。
すみません リンクを読んで勉強したいと思います
93:nobodyさん
07/12/31 21:12:02
どうでもいいことなんだけど、いちいち言い訳をしないと前に進まない奴なんだな。
まぁ、言い訳ばっかりして、ちーとも前に進まない輩も多いのでまだマシなだけどな。
おまけに2ちゃんねるで鵜呑みにするのも危ないが... まぁがんばれ。
94:nobodyさん
07/12/31 21:49:50
どうでもいいことなんだけど、謝ることより他に言うべきもっと大事なことがあるだろうと・・・
95:nobodyさん
08/01/06 15:06:56
pear.php.net 死んでる?
96:nobodyさん
08/01/06 15:56:58
死んでる。Webも見れんし、インストールもできん。日曜プログラマの俺涙目・・・
97:nobodyさん
08/01/06 19:50:09
復活!
98:nobodyさん
08/01/06 23:22:07
お色直ししてました。
pearコマンド(接続先も)も変わったので、使っている方はご注意あれ。
99:nobodyさん
08/01/07 03:57:18
ふざけんなよ
100:nobodyさん
08/01/15 19:48:26 l6BbRMgw
質問させてください。
現在、PHP 4.3.9が稼動している共用レンタルサーバにて
自分が扱えるディレクトリに FTP クライアントを使って
パッケージ・マネージャを設置し、ブラウザでアクセスする形で、
PEAR を使える環境を整えたく思っています。
そこで URLリンク(pear.php.net) にブラウザでアクセスして
そこで表示されるソースを go-pear.php として保存、
これをサーバにアップロードして、ブラウザでアクセスしたのですが、
「Downloading package: ***」のところで反応が無くなってしまいます。
どのパッケージをダウンロードしている所で止まるかは、
毎回変わるのですが、頻度としては「HTML_Template_IT-stable」か、
「Net_UserAgent_Detect-stable」の所でダメになることが多いです。
どのような方法を使えば PEAR を使用できるようになりますでしょうか?
どなたかご教示ください。よろしくお願いします。
101:nobodyさん
08/01/15 20:06:08
>>100
共有サーバの設定でスクリプトがタイムアウトしてるんじゃないかな
共有サーバでPEAR使うならローカルに一旦落としたのを
FTPでそのままアップするのが一番問題無くて吉
特にあんまりPEARに慣れてない人はね
webインターフェイスのパッケージマネージャは
ローカル環境か専用サーバで使ってください
102:100
08/01/15 20:35:16 l6BbRMgw
>>101
レスありがとうございます。
実はローカル(WinXP、Win2K)でもインストールを試してみたのですが、
全く同じ結果になってしまっています。
ローカルで試すと、>>100 の時点で Apache2 に CPU が占有されたまま、
半フリーズ状態になってしまいました。
ちなみに go-pear.bat を実行する方法でも失敗しています。
(これでの失敗の状況は、今回のものとは違いました)
pear.php.net/go-pear で表示されるソースには
「PHP Version 5」と書かれているので、PHP4以下では動作しないのかも、
などと思っていますが、これも全く確証がありません。
重ねてで恐縮ですが、何卒お知恵をお貸しください。
よろしくお願いします。
103:nobodyさん
08/01/15 22:26:43
>>102
webインターフェイスの方はあまり使わないから何とも言えないけど、
パッケージのダウンロードがひとつも成功せずにフリーズするなら
ファイアウォールとかでネットワークが外へ取りにいけないとか?
URLリンク(pear.php.net)のソースはPHP 4.3以上はサポートしてるはず
go-pear.batはエラーメッセージがどう出てるかによる
あと5.2.1かそこら辺のgo-pear.batはバグがある
webインターフェイスのは正直エラーがわかりにくいので
cliインターフェイス(go-pear.bat)のやり方を調べた方がいいと思う
104:100
08/01/15 23:15:02 l6BbRMgw
>>103
レスありがとうございます。
この1週間ほどずっとうまくいかなかったので、レスを頂けて大変嬉しいです。
(1/2) (長いので、分割して書き込みます)
まず、Windows 版 PHP4.3.9 に付属していた go-pear.bat を実行すると
「install ok: XML_Parser 1.0.1 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
\gop(ここはその時々で変わる).tmp\PHPUnit-0.6.2". Invalid tgz file.」
とエラーが表示されました。
そこで PEAR/go-pear.php 内の
162行目の「'PHPUnit-0.6.2'」を「'PHPUnit'」に、
618行目の「$url = "URLリンク(cvs.php.net)";」を
「$url = "URLリンク(cvs.php.net)";」に、
632行目の「$url = "URLリンク(cvs.php.net)";」を
「$url = "URLリンク(cvs.php.net)";」に、
646行目の「$url = "URLリンク(cvs.php.net)";」を
「$url = "URLリンク(cvs.php.net)";」に、
それぞれ書き換えて再試行するとインストール自体は成功しました。
しかし PEAR_ENV.reg を適用して再起動後に
「pear upgrade-all」や「pear install HTTP_Download」などを実行しても
「HTTP error, got response: HTTP/1.1 404 Not Found
Didn't receive 200 OK from remote server. (HTTP/1.1 404 Not Found)」
と表示されてパッケージの取得ができず、使用したいライブラリが使えない状態でした。
105:100
08/01/15 23:15:33 l6BbRMgw
(2/2)
次に、pear.php.net/go-pear で取得したソースを
go-pear.php として go-pear.bat を実行してやりなおすと、
「Fatal error: Call to undefined function: staticpusherrorhandling() in
C:\php\temp\gop(ここはその時々で変わる).tmp\PEAR\Downloader.php on line 279」
となり、処理がストップしました。
このエラーの一時ファイル内の Downloader.php の279行目を見たくても、
処理中に一瞬で削除されて取得できず、どうしても解決策が練れませんでした。
そこでブラウザでアクセスでのインストールを試行した結果は以下の通りになりました。
PHP4.3.9 の go-pear.php(Version 0.2.2)を使用
「Fatal error: Undefined class name 'pear' in C:(doc_root)\PEAR\go-pear.php on line 681」
PHP4.3.9 の go-pear.php 改造版(Version 0.2.2)を使用
「Fatal error: Call to undefined function: staticpusherrorhandling() in
C:\WINNT\TEMP\gop(ここはその時々で変わる).tmp\PEAR\Command\Install.php on line 548」
pear.php.net/go-pear で取得した go-pear.php(Version 1.0.2)を使用
途中でフリーズ。
以上がこれまでに試行錯誤したまとめです。
長くなりましたが、どうぞよろしくお願いいたします。
106:nobodyさん
08/01/16 00:15:21
5系列にするのが一番いいけど、4系で入れたいなら
URLリンク(www.php.net) に4系のWindowsのパッケージがあるから
とりあえず一番新しいのにした方が良いかと
4.3.9でもreleaseの日付見ると4年近く前だしさすがに古いと思う
107:106
08/01/16 00:46:59
ああ、レンサバとバージョン合わせてて4.3.9から変えられないってことなら
最新のパッケージから解凍して出来るPEARディレクトリを
4.3.9のPEARディレクトリにまるごと上書きすれば最新のgo-pearで動くと思う
108:100
08/01/17 02:26:18
>>106-107
相談に乗っていただいてありがとうございました。結果を報告します。
結論から言うと、PHP4.3.9 の環境下では PEAR をインストールすることができませんでした。
PEAR 1.6.2 のパッケージを該当フォルダに上書きしても、同様に
「Fatal error: Call to undefined function: staticpusherrorhandling() in...」のエラーが出て
インストールに失敗しました。
そこでヤケクソで別環境を用意し、PHP5.2.5を稼動させてから go-pear.bat を実行すると
インストールすることができました。
PHP5 のインストールは「PHP5.dll」が無かったりして大変でしたが、
これで PEAR の実行環境自体は整いました。
今後はこの環境で整えたパッケージを PHP4.3.9 環境に持っていっても
使えるかどうかを試行錯誤することになるかなと思います。
アドバイスいただいてありがとうございました。
109:nobodyさん
08/01/17 10:46:57 O85eEBCt
PEAR::DBで、最後に送信したクエリがlast_queryで残りますが、
それによって返ってきた値はどこに入るのでしょうか?
クエリが実行されていなかったので、何かPEARで取得できない特殊なエラーでもあるのではと思いました。
実行クエリ
INSERT INTO hoge (id,name,address,telephone,email,keyword,catch_copy) VALUES (60006,'test','東京 ','','','','test')
print_r(DBオブジェクト)で中身を見ても、特にエラーが発生した様子はありません。
ただ、クエリが実行されていませんでした。
110:nobodyさん
08/01/17 12:03:30
>>109
DB::isError($result)がtrueなら
DB側からのエラーが戻ってきてると思うんだが。
111:nobodyさん
08/01/17 13:08:27 O85eEBCt
>>110
PEAR::isError()で確認してみましたが、Falseでした。
112:nobodyさん
08/01/17 14:44:06
マルチ乙
113:nobodyさん
08/01/19 19:00:56 FuloTUhn
pear::calenderを使ってみようと思ってます。
で、いろんなサイトのサンプルを見ると正方形型の(土曜で次の行に折り返す形の)
カレンダーばかりです。
月頭から月末までタテに書いていくタイプのカレンダーって作れますか?
左端に日・曜日を表示して、その右側にイベント名を入れる形で
スケジューラに利用したいんですが…
114:nobodyさん
08/01/19 19:02:27
できるよ
115:113
08/01/19 19:04:44 FuloTUhn
>>114
すばやい回答ありがとうございます!
参考になるサイト、ご存じないでしょうか?
ググっても出てこないんですよねー それくらい自分でやれってことかなぁ
116:nobodyさん
08/01/19 19:06:54
>>115
URLリンク(pear.php.net)
117:113
08/01/19 22:20:54
ありがとう 確かにマニュアル見るのが一番ですね
サンキューです
118:nobodyさん
08/01/21 18:09:31 kkXgkN55
PEAR::DBで、INSERTはautoExecuteで自動的にエスケープをして放り込んでくれますが、
SELECT文を簡単に使う方法などありませんか?
どうしてもMySQLとPgSQLで書き方が違うので、データベースを移す場合にSQL文を書き換えなくてはいけません。
(CONCAT⇔||や、LIMIT 1,10⇔LIMIT 1 OFFSET 10など・・・。)
119:nobodyさん
08/01/21 18:53:15
細かい方言は振り分けるか個別に書くしかないと思うよ
limit辺りまでならの文法の差を吸収してくれるライブラリもあると思うけど
(QueryToolとかZend_Dbとか)
同時にMySQLとPostgresを絶対対応させないといけない
局面なんてそうそうないし、とりあえずどちらかに絞り込むか、
該当箇所をラップするように自分で書いておけばいいんじゃないかね
120:nobodyさん
08/01/24 14:43:29 3n5ny/+b
>>116
俺の探し方が悪いのか、Amazonクラスのマニュアルが見つからないんだけど、
あれば場所を教えて貰えませんか?
121:nobodyさん
08/01/24 18:00:59
この辺?URLリンク(pear.php.net)
122:nobodyさん
08/02/11 16:44:01 smM9I7ZN
pearが使用できないので教えて下さい。
状況としてはURLリンク(ml.php.gr.jp) に似ています。
違いはwindows 98se、 PHP 5.2.5 エラー表記最後の1行です。
PHP_PEAR_INSTALL_DIR is not set correctly.
Please fix it using your environment variable or modify
the default value in pear.bat
The current value is:
C:\php\pear >> 自分のはECHOはOFFになります。
それで URLリンク(ml.php.gr.jp) にsetを確認とありますが、自分のは
PATH=C:\WINDOWS;c:\windows;c:\windows\COMMAND;C:\PERL\BIN;C:\PHP;いろいろ
windir=C:\WINDOWS
BLASTER=A220 I5 D1 T4 P330
TMPTMPTMPTMPT=@includ
PMTPMTPMT=@include_path@
"PHP_PEAR_INSTALL_DIR=C:\php\pear"
"PHP_PEAR_BIN_DIR=C:\php"
"PHP_PEAR_PHP_BIN=C:\php\.\php.exe"
と表示されます。"PHP_PEAR 関連の項目が3つしか表示されませんが、ここがおかしいのでしょうか?
他サイトを見た感じ、沢山ありそうなのですが…
123:122
08/02/11 16:45:33
続きです。setでは下記のように出て来ないといけないのですか?
PHP_BIN=cli\php.exe
PHP_PEAR_BIN_DIR=c:\php
PHP_PEAR_DATA_DIR=c:\php\pear\data
PHP_PEAR_DOC_DIR=c:\php\pear\docs
PHP_PEAR_INSTALL_DIR=c:\php\pear
PHP_PEAR_PHP_BIN=c:\php\cli\php.exe
PHP_PEAR_SYSCONF_DIR=c:\php
PHP_PEAR_TEST_DIR=c:\php\pear\tests
また、%PHP_PEAR_PHP_BIN% -C -d output_buffering=1 -d include_path=%PHP_PEAR_INSTALL_DIR% -f %PHP_PEAR_INSTALL_DIR%\pearcmd.php
も動作しませんでした。
124:nobodyさん
08/02/11 22:21:50
今試しにwin2000で久しぶりに入れてみたけどsetでその3つだけだぜ
4系と5系でのgo-pear.batの違いじゃないかな
go-pear.batがうまくいってないんじゃね?
もっかい実行してみて最後にエラーらしきメッセージ出てないか見てみ
125:nobodyさん
08/02/12 01:47:37
>>124
ありがとうございます!
go-pear.batは最初の1回目はエラーもなくc:\php>に戻ってきますが、2回目以降は最後の「なにかキーを」までいって
エンター押すと固まります。また、pear.batをコマンドからではなく、ダブルクリックで実行すると同じく固まります。
1度目のgo-pear.batではレジストファイルもちゃんと作成されます。
126:nobodyさん
08/02/16 04:20:28 XZa8LnJy
はじめまして、質問です。
最近、本を買ってPEARの勉強を始めました。
HTML_Menuでメニューを作っているのですが、フレームが1で文字が大きいため、
フレームを0、文字を小さく変更したいと考えていますが、どのようにしてデザインを変更すればいいのかわかりません。
本にはスタイルシートを使えば見栄えをよくできるとだけ書いてありますが、
肝心のスタイルシートを使っての設定方法が書かれていません。
どうすればスタイルシートを設定して、デザインを変更できるのか教えてください。
よろしくお願いします。
127:nobodyさん
08/02/16 10:19:44 qdy/p4CU
>>126 かわいいなw
スレリンク(hp板)
128:126
08/02/16 14:28:13 ITDntNaA
>>127
すいません。スタイルシートは一通りわかっています。
HTML_Menuのデフォルトの設定にスタイルシートをどう適用させるのかがわからず困っています。
129:nobodyさん
08/02/16 16:42:22
>>128
何のことかよく分からんがテンプレートを変更すれば見た目は変わる
URLリンク(pear.php.net)
130:nobodyさん
08/02/20 19:22:52 5Hu81SpE
mail_queueについて質問です
例えば1000通のメールを送りたい場合で
$max_amount_mails = 50;
$mail_queue =& new Mail_Queue($db_options, $mail_options);
$mail_queue->sendMailsInQueue($max_amount_mails);
で50通ずつメールを送る設定にしたとき、
cronの設定は10分おきぐらいに設定しないといけないのでしょうか?
もしくは1日1回cronをまわせば自動的に分散して送れるのでしょうか?
1000通も実際に送るということが試せないので知っている方がいま
したらお願いします。
131:nobodyさん
08/02/20 22:42:10
PEARのDBとかMailとかがダウンロードできなくなってしまったんですが、
ダウンロード先がかわったんでしょうか?
そういったお知らせはどこで知ることができますか?
132:nobodyさん
08/02/21 18:02:31
pearコマンドから普通に落とせるけど
133:nobodyさん
08/02/23 14:35:35
pearのオリジナルパッケージをつくりました。本家に載せれるほどのものではありません。
フリーのpearサーバーないでしょうか
134:nobodyさん
08/02/23 16:34:45
自分でpearサーバ立てて公開するか、
とりあえずパッケージのurlを公開したら
pearコマンドで入れれるのでいいんじゃない
135:nobodyさん
08/02/25 21:15:39
やはり無いですか。
ローカルパッケージにしてGoogleのプロジェクトホスティングにファイルとしてアップします。
136:nobodyさん
08/02/27 04:10:44 aZInqlVM
すいません、自分なりに調べたのですがわからなかったので質問させてください。
HTML_QuickFormで、フォームより入力された数値の比較をしようとしています。
イメージ的には
0 < $sever < 32 であればOKという感じの比較をしたいのですが、
$form->addRule("sever","サーバー番号は1〜31でお願いします。","compare",array(0,32),"client");
では、まったくうまくいきません。
フォームで入力された数値を、addRuleで比較する場合にはどのようにすればいいのでしょうか。
よろしくお願いします。
137:nobodyさん
08/02/27 04:46:47
URLリンク(pear.php.net)
を見ると、compareはある2つの要素に対して用いる規則じゃないか?
規則表の下に
>組み込みの規則の使用法は、パッケージに含まれる rules-builtin.php で網羅しています。
>rules-custom.php では、独自の規則クラスの使用法および callback 型の規則の使用方法を説明しています。
>ここでは、数値が最大値と最小値の間にあることを調べるために NumericRange クラスが含まれています。
とあるからこれ見てみると良いかも。
138:nobodyさん
08/02/27 12:10:10
PEARのMail/mimeDecodeで本文を取得するときって、
マルチパートのとき自動的にやってくれないの?
139:nobodyさん
08/03/01 04:14:43 UQ92wv39
質問です。
以下のクエリ(?)を実行したところ、データベースは作成されたのですが、
テーブルが作成されませんでした。
なぜテーブルが作成されなかったのかアドバイスをお願いします_(._.)_
なお .read コマンドで試したところテーブルは作成されました。
$dsn = 'sqlite:///./db;
$db = DB::connect($dsn);
if(DB::isError($db)){
die("接続失敗:".$db->getMessage());
}
$sql = 'CREATE TABLE member(
id INTEGER,
username VARCHAR(32),
password VARCHAR(50),
PRIMARY KEY(id)
)';
// クエリー実行
$db->query( $sql );
// エラーチェック
if(DB::isError($db)){
die("テーブル作成失敗 : " . $db->getMessage());
}
$db->disconnect();
140:139
08/03/01 13:46:19 5AgmHkpD
自己解決しました。
なぜエラーチェックが動かなかったのか、もう少し勉強してみます。
141:nobodyさん
08/03/03 11:45:17
PEAR::DBで一括してデータを格納するときにautoExecuteのINSERTを繰り返すと処理とまらね?
メモリ関係だと思うんだが、これってPEAR側のバグなのかな?
一応memory_limitを無制限にしてるんだが・・・。
何が言いたいかというと、PEAR死ね
142:nobodyさん
08/03/03 13:04:39
トランザクションが膨れ上がってるだけじゃないの
143:nobodyさん
08/03/03 20:44:01
何件ぐらいしてるのか知らないけど、1万件ぐらいじゃ止まらなかった。
何が言いたいかというと、PEARのせいにするな
144:nobodyさん
08/03/03 23:03:13
HTML_QuickForm_inputの拡張クラスが一杯揃っている所ってないかな?
しこしこ自分で作っているが車輪を再発明しまっくってんじゃないかと思うと心が折れそう
145:nobodyさん
08/03/03 23:16:04
php.根tにあった。邪魔した。
URLリンク(pear.php.net)
146:nobodyさん
08/03/07 18:12:23 9MLD2lOu
pear DBを使っているのですが、
mySQLに接続できず、
$db = DB::connect($dsn);
でエラーオブジェクトが帰ってきます。
$db->getDebugInfo();を行ってみたところ
Unable to include the DB/.php file for ''
と表示されてしまいます。
どなたか原因がわかりますでしょうか?
よろしくお願いします。
ちなみにPHPのバージョンは4.4.4です。
147:nobodyさん
08/03/07 18:19:17
その$dsnがおかしい
148:146
08/03/07 18:24:29 9MLD2lOu
>>147さん
解決できました!
147さんの言うとおり
$dsnの指定が間違ってたみたいでした。
そんなのすぐ確認しろって感じですよね・・・
ありがとうございます!
149:nobodyさん
08/03/09 19:02:03 /9XBqrew
Win2000PRO、PHP Version 5.2.5、MySQL Version 5.0.45を使っています。
今、はまっているところがありまして、
データベース側は「userID」で登録している項目を
$userID = $authobj->getAuthData('userID');
で「userID」と大文字を入れると値を取得できません。
$userID = $authobj->getAuthData('userid');
と小文字に直すと正しく値を取得することが出来ます。
これはauthの仕様なのでしょうか?
150:nobodyさん
08/03/12 18:44:16 hBrL3vQ0
PEAR:1.7.1
PHP:5.2.1
list-all しても、pear/HTMLとかが出力されません。
1年くらい前に触った時は大量のリストが出力されていたんですが、
いつの間にか全部のパッケージを出力しなくなったんですか?
151:nobodyさん
08/03/15 13:03:11
pear channel-update pear.php.netはした?
152:nobodyさん
08/03/17 15:08:36 jieJ3Amr
>>151
チャネルのアップデートもやってみたんですが、pear/Mailとか
System_xxxxとかXML_xxxxあたりしか出力されません。
例えば install HTML_AJAX とか、個別指定すれば導入はできるん
ですけどね…。
153:nobodyさん
08/03/26 15:01:18 ynVuNR2N
こんにちは
マイクロソフトのliveページなどでログインして情報を取得したいのですが
PEAR HTTP/Clientでログインページにいくと
<noscript>
<meta http-equiv="Refresh" content="0; URL=URLリンク(javas)をonにしてね.html"/>
</noscript>
に引っかかって警告ページに遷移してしまいます。
なにか良い方法はないでしょうか?
154:nobodyさん
08/03/26 16:16:59
javasってかわいいね
155:nobodyさん
08/03/26 16:56:16
>>153
再現するコード出して
156:153
08/03/27 09:49:47 giFwaQIZ
とりあえずgetしにいくと・・・
require_once 'HTTP/Client.php';
$client = new HTTP_Client();
$client->get('URLリンク(login.live.com)
?wa=wsignin1.0&rpsnv=10&ct=1206578311&rver=
4.5.2135.0&wp=MBI&wreply=https:%2F%2Flive.xbox.com
%2Fxweb%2Flive%2Fpassport%2FsetCookies.ashx%3Frru%3
DhttpZ3AZ2FZ2FwwwZ2ExboxZ2EcomZ2FjaZ2DJPZ2Fde
faultZ2Ehtm&lc=1041&cb=B001041httpZ3AZ2FZ2Fw
wwZ2ExboxZ2EcomZ2FjaZ2DJPZ2FdefaultZ2Ehtm&id=66262');
$response = $client->currentResponse();
var_dump($response);
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4180日前に更新/154 KB
担当:undef