Pear
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
NGNG0793784
05/01/17 17:43:05ID:???_submittedValues -> _submitValues
0794nobodyさん
05/01/25 06:51:55ID:???pearの mail 関数どう違うんでしょうか。
普通のmail 関数で十分な気がする。
0796nobodyさん
05/01/25 12:58:07ID:???0797nobodyさん
05/01/25 17:32:46ID:???0798nobodyさん
05/01/26 01:08:25ID:???いろいろ選択できる(自作もできると思う)から,
まぁ無意味ってわけじゃないが,普通には使わないな……
0799nobodyさん
05/01/26 02:37:05ID:???WindowsはSMTPを一応喋っている形になっている。
で、UNIX系でも直接ISPやレンタルのSMTP鯖へ投げたい場合は
Pear Mailを使うのが楽かもね。
ローカルのMTA設定を弄れば同じことも出来るけど、
出来ないorやりたくない人も居るだろうし。
0800nobodyさん
05/01/26 03:24:59ID:???別にPEARのmailクラスに不満がある訳でもないが。
0801さちこ
05/01/26 15:00:33ID:???わかりません。
ご教授お願いいたします。
<私のソース>
・
・
・
$status_list = array(1=>"option1",
2>"option2",
3=>"option3");
$attrs = "";
$form->addElement('select', 'status', 'Select status:', $status_list, $attrs);
・
・
・
0802nobodyさん
05/01/26 16:42:49ID:???0804802
05/01/26 17:00:23ID:???つか、英語わからんでもマニュアル眺めてりゃなんとなくわかるよ。
http://pear.php.net/manual/en/package.html.html-quickform.php
0805nobodyさん
05/01/26 17:23:35ID:???合ってるような気もするが。
$status =& $form->addElement('select', 'status', 'Select status:', $status_list, $attrs);
$status->setSelected(2);
0806さちこ
05/01/26 17:30:31ID:???ありがとうございます。おかげで理解することができました!!!
0807nobodyさん
05/01/26 17:32:40ID:???普及した証左だと喜ぶべきか、これでまたいずれPEAR系情報源も初心者とノイズで埋まるのかと鬱るべきか。
http://pear.php.net/manual/en/package.html.html-quickform.tutorial.php
> Example 32-1. Basic QuickForm usage
0808nobodyさん
05/01/27 19:12:47ID:???ということにして自分を納得させようぜ orz
0809nobodyさん
05/01/27 19:49:29ID:???手取り足取りなチュートリアルは、
ttp://www.planewave.org/translations/quickform/html_quickform.html
ttp://www.is.titech.ac.jp/~yanagis0/kei/quickform.html
ttp://hatotech.org/kumatch/datas/quickform.pdf
くらいしか見つからなかった。
英語の良さげなチュートリアルみたいなのもあったけどURL忘れた。
ttp://www.sitepoint.com/subcat/php-tutorials の中のどれかだったと思う。
あとは pear添付のdocsくらいか。
0810nobodyさん
05/02/02 17:48:32ID:???Firebirdを利用していて日付型のINSERTがしたいのですが
SQLでは
INSERT INTO table (ID, "DATE") VALUES (1, '2005/02/02');
(項目名DATEは予約語なので"でくくる必要があります)
でいけるのですがphpで
$d = array("ID"=>"1", '"DATE"'=>"'2005/02/02'");
$QueryTool->add($d);
としても登録されない状態で困っています。print_r($d)で
$d["DATE"]に'2005/02/02'が入っているのは確認したのですが…
■また、(M)DB_QueryToolのエラーはどのように取得すればいいのでしょうか。
どなたかアドバイスいただけないでしょうか。
よろしくお願いいたします。
0811nobodyさん
05/02/02 19:01:24ID:???ソース見た感じだと、
$QueryTools->setOption('logFile','sql_log.txt'); てな感じにセットしておけば、
sql_log.txtファイルに実行したSQLが保持されるみたい。要Logパッケージ。
エラーした場合も(failed)付きで書き出される模様。
$QueryTools->setOption('verbose',true); しておけば更に詳細に出るっぽい。
0812810
05/02/03 10:35:38ID:???ありがとうございました。試したところばっちりでした。
ただ、Firebird固有なのかもしれませんが、
$d = array("ID"=>"1", "DATE"=>"2005/02/02"); は
INSET INTO table (ID, DATE) VALUES ('1', '2005/02/02'); となり
項目名DATEが予約語のため不可。
$d = array("ID"=>"1", '"DATE"'=>"2005/02/02"); は
INSET INTO table (ID) VALUES ('1'); となり
DATEが無視されてしまう("でくくっても'でくくっても\"でくくっても)ようで
困っています。情報ないでしょうか。
■エラーの取得方法をどなたかご存知ないでしょうか。
よろしくお願いいたします。
0814nobodyさん
05/02/04 13:50:14ID:???ん?昨年秋に使った頃にはオプションだけあって未実装だったけど。実装されたのかな。
0.10.1 -> 0.11.1 の ChangeLog 見てみたけどロギングについては書いてないので尋ねてみるテスト。
>>812
Java じゃないんだし。返値取って var_dump すれ。
もしくは PHP4 ならまるごと PHP のエラー制御見れ。
0815810
05/02/04 15:24:22ID:???実装されてるみたい。ただ呼び出すファイルと同じ場所に書き出されるので
パーミッション的に嫌な感じ。デバッグ用と割り切ればいいんでしょうけど。
あと、まるごとPHPみて勉強します。ありがとうございました。
0816nobodyさん
05/02/04 16:04:05ID:???うぁ 乱暴に投げたのに丁寧に返されてしまった… ありがとうございます。
API ドキュメント見るとメソッドの戻り値が載っているのでそれを参考にエラーハンドリング、
PEAR によるエラーハンドリングの詳細はまるごとに載ってるって感じで。
デバッグで var_dump 取る場合は Xdebug か PEAR::Var_dump 突っ込んでおくと幸せかも。
0817nobodyさん
05/02/04 16:43:39ID:???0818nobodyさん
05/02/04 16:56:06ID:???同梱のサンプルコードしか記憶に残ってない。
0819nobodyさん
05/02/07 21:00:38ID:???php_manual_jaなら解説サイトがあるんだがpeardocの方の資料少なすぎ・・・
0820nobodyさん
05/02/10 23:09:00ID:???当方MacOS Xなのですがコンパイルは通るものの
pdo_hoge.soを読み込むと
dyld: php5 Undefined symbols:
_php_pdo_register_driver
とエラーが出てPHPが起動しませぬ。(pdo.soはちゃんとロードできてる)
0821nobodyさん
05/03/18 19:42:14ID:OjH/9tRgテキストエリアの背景色を赤系の色に替えて表示したいんですがなんかいい方法ないですかねぇ??
0822nobodyさん
05/03/18 22:19:05ID:iQcV2TeE属性を適当に書き換えればいいんじゃないの。
いい方法っていうかそのまんまだが、、なにかできない理由でもあるのか?
0823nobodyさん
05/03/19 07:06:32ID:kwTpFIt8fetchrow() し続けた後に、カーソルを先頭に戻すにはどうすればいいんですか?
PHPは4.2.x系です
0825nobodyさん
05/03/19 18:16:00ID:???Renderer に何を使ってるかによる
エラーの時は HTML の class 指定を変更するように書けばいいんじゃないかな
0826nobodyさん
2005/03/24(木) 06:05:31ID:???プラグインつくるとか。
{$form.name.error|class_error}みたいな感じで。
0827nobodyさん
2005/03/24(木) 10:45:44ID:???0828nobodyさん
2005/03/24(木) 19:22:19ID:E7t61Xr3グラフや計算式をいれたいのですが、
SpreadSheet_Excel_Writerから、
VBA書くことって出来ないですかね?
0829nobodyさん
2005/03/31(木) 14:49:05ID:z8YDul0W<input name="hoge" type="radio" value="uki">
<input name="hoge" type="radio" value="foo">
<input name="hoge" type="radio" value="bar">
っていうのを作って、Smartyにレンダリングさせてるんだけど、
valueに日本語を入れたいと思うと、Smarty側で
{$form.hoge.日本語.html}
って値が割り振られてしまって、Smarty Errorになるんです。
createElement('radio'
する時点でvalueの指定するところと、nameの指定しているところが同じになってるのが
原因なんですが、これ回避できないんですかね?
なんで、いまは最終的に必要な時は変換を掛けております。
0830nobodyさん
皇紀2665/04/01(金) 03:49:50ID:???createElement( 'radio', $name, null, $label, $value, $attr );
0831829
皇紀2665/04/01(金) 10:35:03ID:JGI8hVrJあー、すみません。Smartyにレンダリングされる時のが同じと言う意味です。
$var[] =& createElement( "radio" , "name_dummy" , NULL , "label" , "value_dummy" , array('class'=>"dummy_class") ;
$form->addGroup($var , "$var" ) ;
とすると、このエレメントをSmartyでは
{$form.var.name_dummy.value_dummy.name} を var[name_dummy]
{$form.var.name_dummy.value_dummy.value} を value_dummy
と割り振ってしまいます。
デバッキングコンソールでは
name_dummy => Array (1)
バリュー => Array (8)
name => var[name_dummy]
value => バリュー
type => radio
frozen =>
required =>
error => empty
label => empty
html => <input class="" name="var[name_dummy]...
となっています。
この状態でvalue_dummyに日本語を入れると、{$form.var.name_dummy.value_dummy.value}の変数が上手く展開できないようでSmarty Errorになってしまいます。
0832nobodyさん
皇紀2665/04/01(金) 11:50:46ID:???もっとも手っ取り早い workaround ではないかしら.
別のレイヤの回答をすると,value に日本語を入れるのはお勧めしない.
UA がどんなエンコーディングで入れてくるか判ったものではないから.
0833829
2005/04/02(土) 12:11:32ID:???HTML_QuickForm_Renderer_ArraySmarty::_elementToArrayは
radioの時だけ、特別な処理してますねー。
これ、pearにリクエストした方がいいような気もします。
0834nobodyさん
2005/04/02(土) 14:40:21ID:???0835nobodyさん
2005/04/04(月) 11:33:03ID:???0837nobodyさん
2005/04/04(月) 17:32:46ID:???期待すべきなのか今更なのか……誰か突撃してくれw
0838nobodyさん
2005/04/06(水) 23:10:01ID:???そう。
セキュリティホール埋めてくれるのはありがたいけど、このバグを
直してもらわんとアップデートできんちゅうねん!!
0839nobodyさん
2005/04/17(日) 17:14:33ID:???SPAM食らってるぞ。大丈夫か?つーかFrontPageは凍結しとけ
0840nobodyさん
2005/04/20(水) 20:33:55ID:???0841nobodyさん
2005/04/20(水) 20:39:30ID:???0843nobodyさん
2005/04/20(水) 22:23:40ID:???その本の発行が2004/10発行で、
pear::dbのchangelog( ttp://pear.php.net/package/DB/download/All )と比較してみると、
発行時には既にtest的な実装の段階は終わってるようだね。
まぁ、本家を見にいくのが一番かと。半年くらい前の情報だと当てにもならなくなってるし。
0844nobodyさん
2005/04/20(水) 22:51:30ID:???現在はpear::DBでMySQLに接続しています。
データベースのパフォーマンスチューニングが終わったので、
こんどはPHP側をいじろうと思っています。
優先順位は、1.速度>2.ドキュメントの充実(英語で可)
>3.他のデータベースとの互換性です。
0845nobodyさん
2005/04/20(水) 23:18:05ID:???これはDB_DataObjectでSQLiteは使えないってことじゃないの。
0846nobodyさん
2005/04/21(木) 09:12:51ID:???DBDO が SQLite 無視してそのまま突っ走るとは思えない。
今は事情も変わってますよ、という話は大いにあり得るが。
著者の鶴岡たんはライター経験こそ浅いが本人は優秀らしいので間違った事は書いてないだろう。当時動かなかった、ただそれだけな気がする。
0847nobodyさん
2005/04/21(木) 10:55:32ID:???DBDO はとても便利に使っているけど,PEAR::DBベースという点を考えても,
強い根拠はないが PHP4 用のものという印象がある.
PHP5 用に pdo ベースで PDO_DataObject みたいのを誰か作ってくれないかなー
(と他力本願丸出しな発言を)
>>844
3.の互換性ってのは各種RDBMSをどれほどシームレスに扱えるかということ?
まぁ順当に MDB で決まりじゃね?
おれは DBDO に頼りきりコーディングが多いので DB 使ってるけど.
0848nobodyさん
2005/04/21(木) 16:04:07ID:???)ノシ
ただPHP4+SQLiteが流行るかっていうと、
PHP4+MySQL程度にはならないと否定的。
SQLiteをパッケージに含めて配布して、動的にdlして使う
っていうのは作る側からすると、インストール環境を考えずに
DBを使える点で楽になるんだけどね。
0849844
2005/04/21(木) 22:55:10ID:???>3.の互換性ってのは各種RDBMSをどれほどシームレスに扱えるかということ?
です。サーバのスペックが貧弱なので、MySQLに特化させてでも
スピードを稼ぎたいので。
>まぁ順当に MDB で決まりじゃね?
ありがとうございます。参考にさせていただきます。
0850nobodyさん
2005/04/22(金) 02:15:26ID:???>>847
PHP5用だったらcreole + propelというのがおもしろいよ。
exception/interface/iteratorなどをきちんと使って、
PHP5 nativeで書かれている。
0851nobodyさん
2005/04/22(金) 06:29:12ID:???あー MDB と書いてるが MDB2 のつもりだった.スマソ
propel は面白そうだね.サイトをじっくり読んでみる.情報ありがとう.
後は,自宅の実験サーバ以外 PHP5 なんて全くお目にかかんない現状が何とかされれば……w
みんな 5.1.2 くらいまで待ちかなぁ……
0852nobodyさん
2005/04/22(金) 10:20:24ID:???createTable.php流したときに、
テーブルの主キーがとれないんだけど、既出?
0853nobodyさん
2005/04/22(金) 11:16:39ID:???同時に生成されるiniファイル内の KEY も設定されない。
何回もやりなおしてみたけど。
0854nobodyさん
2005/04/26(火) 16:06:11ID:???input type=textのreadonlyってできますか?
0855nobodyさん
2005/04/26(火) 20:14:44ID:fhmw59usPropelのサイトにある情報は古いから注意。
Ver1.1向けに今記事かいているんでそのうちどっかに載るかもー。
0858857
2005/04/28(木) 13:18:00ID:???0859854
2005/05/01(日) 16:54:55ID:???サンクス
Mojavi + HTML_QuickForm + Smarty
という組み合わせなんですけど、
動的にFormのinput type=textを作成するのは、
どのような方法があるのでしょうか?
0860nobodyさん
2005/05/05(木) 21:45:53ID:KICI+UTUrequire_once('Auth/Auth.php');
して普通に使えてますか?僕の環境ではうまくクラスを認識しなかったので
ファイルの内容を移し替えたらうまく認識しました。
上でrequireされてる
PEAR/Auth/Auth.php自体は
include_once('Auth.php');
してるだけだったのでPEAR/Auth.phpの内容を丸ごと
PEAR/Auth/Auth.phpに移し替えたら使えるようになりました。
あれはどういうことだったんだろう?ちょっと疑問なので
知ってる人いたら教えてください。
windows環境で、PEARフォルダにはinclude_pathも通ってます。
0861nobodyさん
2005/05/05(木) 22:53:32ID:???こうすればよくない?
0862nobodyさん
2005/05/05(木) 22:54:34ID:k8Nl2PhYっwwwwwwwwwwwwうはっっおkうぇおkwwwwwww
wwwwwwおkうぇwwwwwwwwwwww
うぇっうはっwwwwwwうはっwwwwwwwwwwww
wwwwwwうぇっwwwwwwwwwwww
0863860
2005/05/05(木) 23:24:36ID:KICI+UTUPEAR/Auth/Auth/ 以下にコンテナ、コントローラーなどがあるので、
パスの関係上、 PEAR/Auth/Auth.phpに移し替えた移し替えた次第です。
0864nobodyさん
2005/05/05(木) 23:27:46ID:???ふつうはphp_dir/Auth以下に展開されるよ。
% ls /usr/local/share/pear/Auth
Auth.php Container Container.php
0865860
2005/05/05(木) 23:42:19ID:KICI+UTUAuth.php Container Container.php は PEAR/Auth/以下ですね。
でもいずれにしても
require_once('Auth.php');
では読めませんでした。
0866nobodyさん
2005/05/07(土) 02:05:32ID:???0867nobodyさん
2005/05/07(土) 02:42:05ID:???0868nobodyさん
2005/05/10(火) 00:02:29ID:???現状、以下のような指定をしていますが、初期値が空白になりません
$form->setDefaults(array(
'fmData' => array( 'm' => ' ', 'd' => ' ', 'Y' => ' ' )
));
// 日付
$DayNow=getdate();
$DateOptions= array(
'language' => 'en',
'format' => 'Y年 m月 d日',
'minYear' => $DayNow[year] - 1,
'maxYear' => $DayNow[year] + 2,
'addEmptyOption'=>true
);
$form->addElement('date', 'fmData', '開始日', $DateOptions);
0869868
2005/05/10(火) 00:12:19ID:???$form->setDefaults(array(
'fmData' => array( 'm' => ' ', 'd' => ' ', 'Y' => ' ' )
));
↓
$form->setDefaults(array(
'fmData' => array( 'm' => '', 'd' => '', 'Y' => '' ) // スペースを詰める
));
0870nobodyさん
2005/05/13(金) 12:10:11ID:???DBはPerlのDBIみたいに洗練されてると思うのですが
新たに別のモジュールを開発する必要があったのでしょうか?
それって車輪の再発明・・・
0871nobodyさん
2005/05/13(金) 12:24:14ID:???0872nobodyさん
2005/05/13(金) 15:42:29ID:OaFXqrM9webで探すとSmartyとの連携ばかりですけど・・・
0873nobodyさん
2005/05/13(金) 16:06:53ID:???pear/doc(s)/HTML_QuickForm/docs/renderersにサンプルあるし。
0875nobodyさん
2005/05/13(金) 16:30:29ID:???0877nobodyさん
2005/05/13(金) 16:44:07ID:???0878nobodyさん
2005/05/13(金) 17:38:03ID:???コードの洗練具合では圧倒的にMDB2の方が上だね。
0879nobodyさん
2005/05/13(金) 19:19:19ID:SDhwmUt9DSN の "mode" => "0644" というのは書き込みできない
という意味でしょうか?
書き込みできるんですが、、、
"mode" => "0666" との違いがわかりません。
0881879
2005/05/13(金) 19:53:06ID:???んとわかります。
ファイルの属性? 666にしないとダメですよね?
そうすると "mode" は関係なく動くような気がします。
ファイル属性 644 だと "mode" 関係なしでダメ。
0884nobodyさん
2005/05/13(金) 22:23:33ID:MPQs+RJ/オブジェクトを指定してくださいって出る。
Smarty + QuickForm前提で話し進めちゃうけど。
ルールの指定でclientを選択しながら、
{$form.javascript}
を書いていなかったりしません?
0887884
2005/05/14(土) 09:14:50ID:yiKQRA/S書いててもエラー出ます。
インターネットオプションでスクリプトのエラーごとに表示されるように設定していると、
エラーが警告が出ます。そうじゃない場合はエラー表示でません。
(これはたぶんオフにしている人が多いと思う)
freezeさせて、validateが必要なくなった時、form.javascriptはプリントされなくなるのに、
onsubmitの方のvalidate呼び出し関数は残ったままなので、エラーとなるようです。
動作自体に影響はないんだけど、アラートでエラー表示が出るので邪魔になる・・。
あー、なるほど。
自分は時間無くてとりあえずserverでのチェックだけにして逃げちゃったんですよ(苦笑
ちょっと時間見つけてコード追ってみるー。
0889nobodyさん
2005/05/14(土) 20:13:14ID:???あーそれか……
ずっと昔からそうなので,自分はもっのすごくアドホックな対処をしてる.
<script type="text/javascript">if(typeof(validate_フォーム名)=='undefined'){var validate_フォーム名=new Function("return true")}</script>
という HTML を,static エレメントとして追加してやるの.
で,フォーム遷移を管理する自作クラスにそれを組み込んで,
そのままこの問題について忘れてたw
まだ直ってなかったのか……
>889
んー。まだよくわからないけどざっくりと。
ルールを記述しているJavascriptはQuickform.phpの1540行目あたり。
getValidationScript()の初めに
if (empty($this->_rules) || $this->_freezeAll || empty($this->_attributes['onsubmit'])) {
return '';
}
とあるから何も返さなくなる。
しかし、addRule(), addGroupRule()したときに
if ('client' == $validation) {
$this->updateAttributes(array('onsubmit'=>'return validate_'.$this->_attributes['id'] . '(this);'));
}
と、onSubmitをつけている=エラーになる。
ここの判定式を$this->_freezeAllがtrueの時に通らないようにすれば大丈夫な気がするです。
0891887
2005/05/16(月) 10:10:54ID:6UiQU/azありがとうございます。
結局スクリプト側で、form.JavaScriptが空の時は、
アドホックに >>889のコードを入れることで、対応してしまいました。
ところで、HTML_QuickFormで送られた内容の控えをユーザ宛にも
メール送信したいのですが、結果HTMLを表示する要領で、
テキスト形式で結果内容を生成することはできますか?
0892nobodyさん
2005/05/16(月) 11:27:58ID:???(どっかのスレでやり方探してる人いなかったっけ?)
もし既知のことだったら知ってたらスルーして下さい。
$chk =& $form->createElement("checkbox");
$tmp = $chk;
$tmp->setName("chk[1]");
$tmp->setLabel("No. 1");
$tmp->updateAttributes(array("value"=>"NO1"));
$form->addElement($tmp);
$tmp = $chk;
$tmp->setName("chk[2]");
$tmp->setLabel("No. 2");
$tmp->updateAttributes(array("value"=>"NO2"));
$form->addElement($tmp);
名前を[1]、[2]と配列の添字を指定してやれば、GET or POST後にちゃんと
チェック状態になってくれる。
http://www.php.net/manual/ja/faq.html.php#faq.html.arrays
ここみたいに添字を指定しないと、HTML_QuickForm_elementの_findValue()が値を返せないみたい。
QuickFormのnewってどれも重い気がするので、フォームが多い画面作るときは
オブジェクトをコピーしたほうがいいね。
■ このスレッドは過去ログ倉庫に格納されています