1 名前:nobodyさん [2005/08/01(月) 21:27:12 ID:pG+mahP3] 落ちてたんで立てとく ■PEAR pear.php.net/ ■前スレ Pear pc8.2ch.net/test/read.cgi/php/985665522/
531 名前:nobodyさん mailto:sage [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()をなげるしかないのでしょうか。
532 名前:nobodyさん mailto:sage [2006/09/09(土) 16:08:57 ID:???] >>531 DB_DataObject の update() は基本的にユニークキーを指定して行なうものだけど そうでなく自前で WhereAdd() した条件で広範囲に update() する時には 引数に定数をつけて update(DB_DATAOBJECT_WHEREADD_ONLY) してやるとよろしい
533 名前:531 mailto:sage [2006/09/09(土) 18:22:55 ID:???] どうもありがとです。 たったそれだけのことなのですね。 基本的に2つに一致する条件のものは1つのレコードだけなのですが まぁこのやりかたで解決しました。
534 名前:nobodyさん mailto:sage [2006/09/09(土) 19:19:05 ID:???] 解決おめ 蛇足だけど DB_DataObject は全体の傾向として テーブルに必ず int ひとつだけのユニークキーがあるようにしてあると 扱いやすいようにできている気がする 開発工期を短く済ませるために DB_DataObject で扱いやすいテーブル設計をするとか 邪道っぽいけどとても効果的だったりw
535 名前:nobodyさん mailto:sage [2006/09/09(土) 19:34:57 ID:??? BE:340493748-2BP(200)] たしかに、設計としてはアレだけど全部のテーブルに"auto_id"みたいなauto_incrimentを作っとくと便利
536 名前:nobodyさん mailto:sage [2006/09/16(土) 22:13:02 ID:???] Requiring E_STRICT 通った pear.php.net/pepr/pepr-proposal-show.php?id=419 PEAR新世紀幕開けか
537 名前:nobodyさん [2006/09/17(日) 02:30:59 ID:BzsrnxFm] 今度PEARを使うことになったんだけど、PHP5だと 動かないやつとかあるのかな? いまいち知らんけど、PHP4時代に作られたライブラリ だと、PHP5で非互換な部分のせいで動かなかったり するんかな。
538 名前:nobodyさん mailto:sage [2006/09/17(日) 16:20:16 ID:???] そんな心配はPHP6になったらまた作り直すことに成るから心配しなくても良いよ。 PHP5時代の資産が未来永劫使える保証すらないから。
539 名前:nobodyさん mailto:sage [2006/09/26(火) 16:24:45 ID:???] というけど今のPEARってほとんどPHP4で作られたものじゃないのか? PHP5で作られたものなんでMDB2みたいな不安定なものばかりだし
540 名前:nobodyさん mailto:sage [2006/09/26(火) 17:00:15 ID:???] MDB2はPHP4ベースだし不安定でもない
541 名前:531 [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だと無理なのでしょうか。
542 名前:nobodyさん mailto:sage [2006/10/01(日) 09:25:45 ID:???] テーブル設計ぐらい示せよ。何となく設計がタコだと思う。 SQL直書きならできそうだけどな。
543 名前:531 [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;
544 名前:531 [2006/10/01(日) 11:38:58 ID:Ge/0d2rj] `birthday` int(3) NOT NULL default '0', birthdayもとりあえずintegerで。
545 名前:nobodyさん mailto:sage [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'); とかだと冗長だけどさらに確実 とか書いてるけど試してないから実験は自分でやってみてね
546 名前:nobodyさん mailto:sage [2006/10/01(日) 12:04:49 ID:???] 1レコード限定の更新じゃないUPDATEなら SQL直書きにしといた方が、他の人が見たときに ここは全体にかけるUPDATEなんだってわかりやすいと思うけどなあ O/R mapperはSQL書かずにDB扱うためだけのもんじゃないのに
547 名前:nobodyさん mailto:sage [2006/10/02(月) 09:06:19 ID:???] そもそも「年齢」で管理しているのが良くないのでは? 普通は「生年月日」だね
548 名前:nobodyさん mailto:sage [2006/10/02(月) 14:32:51 ID:???] 「生年月日」をDBに持っといて 「年齢」は取得するSQLだのプログラムだのでその時決定する ってのがいいんでないかい パフォーマンス要求厳しい場合は別だけど……
549 名前:531 mailto:sage [2006/10/03(火) 01:49:42 ID:???] アドバイスありがとうございます。 num、age等はサンプルです。実際にやる場合は547氏のいうとおり 生年月日のほうがよいでしょう。 質問の意図としては 「複数行をアップデートする」 かつ 「+=といった数値を加える」 処理を上記方法でできないか?というかんじでした。 聞き方が悪くて申し訳ありません。 とりあえず試した方法でやってみます。 最悪SQL直で。
550 名前:nobodyさん mailto:sage [2006/10/03(火) 17:48:51 ID:???] うーん、例だと全然イメージ湧かないな。何をしたいの?
551 名前:nobodyさん mailto:sage [2006/10/03(火) 22:37:28 ID:???] pearのインストールに躓いたので質問させてください。 Xdebugをインストールしようと思い、 cmdから# pecl install Xdebug を実行しました。 しかしエラーが表示され、 xdebugというフォルダが作成されるものの、 フォルダの中身は空っぽです。 設定を間違えているんでしょうか?
552 名前:nobodyさん mailto:sage [2006/10/03(火) 22:43:50 ID:???] エラーメッセージは?
553 名前:551 mailto:sage [2006/10/03(火) 22:55:42 ID:???] >>552 ERROR: The DSP xdebug.dsp does not exist と表示されます
554 名前:nobodyさん mailto:sage [2006/10/03(火) 22:59:16 ID:???] >>553 そのメッセージでぐぐっただけだけどこれは? it-laboratory.seesaa.net/article/20204067.html
555 名前:551 mailto:sage [2006/10/03(火) 23:43:31 ID:???] >>554 ありがとうございます。これを試してみます。 ところでコンパイル版のインストールってどうすればいいんでしょうか? installコマンドしか試したことがなく、 検索してもみつからないもので・・・
556 名前:nobodyさん mailto:sage [2006/10/03(火) 23:48:23 ID:???] >>555 jp.php.net/manual/ja/install.pecl.windows.php
557 名前:551 mailto:sage [2006/10/04(水) 03:03:08 ID:???] >>556 ありがとうございます! しかしいろいろ試してみた結果、 php5.1.6に対応したバージョンがないことに気づいてしまいました・・・
558 名前:nobodyさん mailto:sage [2006/10/13(金) 01:37:55 ID:???] PEAR::Net_UserAgent_Mobileの画面取得て 対応してないような新機種の時は どうなるの?
559 名前:nobodyさん mailto:sage [2006/10/13(金) 01:50:29 ID:???] 対応するの待つか自分でデータ追加しちゃうの
560 名前:nobodyさん mailto:sage [2006/10/14(土) 05:37:40 ID:???] まいっちゃう
561 名前:nobodyさん mailto:sage [2006/10/14(土) 19:41:11 ID:???] PEAR::Authを利用したログインシステムを作ろうと考えているのですが、 ブラウザを一度閉じても、次回アクセス時までログインを維持して自動ログインできるような機能 (mixiの「次回から自動でログイン」と同じ機能)は使えないのでしょうか? $myAuth->setExpire(2000000); $myAuth->setIdle(2000000); とかやってみましたが、これではダメみたいですね。。。
562 名前:561 mailto:sage [2006/10/14(土) 21:43:52 ID:???] すみません。その後調べていくうちに、サーバー側の設定が怪しいということがわかり、 php.iniを調べてみたら、session.cookie_lifetimeの値でいけました。 自己解決のスレ汚しすみません。
563 名前:nobodyさん mailto:sage [2006/10/16(月) 02:34:42 ID:???] pearコマンドでインストールする際、インストール先のパスって指定出来ないの? スーパーユーザ権限が無いレンタルサーバなんだけど……。 自分でダウンロードしてホームディレクトリに書庫を展開するんじゃダメかな?
564 名前:nobodyさん mailto:sage [2006/10/16(月) 03:20:32 ID:???] スクリプト内でインクルードパスを追加するといい
565 名前:nobodyさん [2006/10/20(金) 10:20:50 ID:9mLjL02A] 「IP,ユーザーエージェント等の環境変数を見て 検索エンジンクローラーかそうではない一般のユーザーかを 判別する」 といったクラスってPEARでありますでしょうかー。 色々調べたんですがみつからなくて。。。 あ。PEARじゃなくてもいいっす
566 名前:nobodyさん mailto:sage [2006/10/20(金) 17:39:42 ID:???] Spreadsheet_Excel_Reader/Writer の情報を追っているうちに Excel_Reviser (既存のExcelファイルをテンプレートとして読み込んで値を書き換えられる) の存在を知ったんですが、ダウンロード先がNot Foundになってました。 作者の連絡手段もどこにも見つかりません。(過去ログにあるメルアドは届かなかったし) 誰か持っている方いませんか??
567 名前:nobodyさん mailto:sage [2006/10/29(日) 20:36:01 ID:???] Spreadsheet_Excel_Writerでxls吐いてるとある程度の行数(っても30行やそこら)で Excelが「メモリ不足です」ってダイアログ出して開けなくなる。 やっぱりBIFF8は実用段階じゃないって事なんだろうな。 同じような症状出た人いる?
568 名前:nobodyさん [2006/10/30(月) 17:42:07 ID:+kTSWHIU] どなたか xrea のサーバーに XML_sql2xml がインストールできた方いませんか? どういう依存関係にあるのかわからず、どれをインストールすればいいのかわからないでいます。 どなたかご教授願います。
569 名前:nobodyさん mailto:sage [2006/10/30(月) 17:51:50 ID:???] >>568 今XML_sql2xmlのページ見たけど Dependencies: * PHP Extension: domxml * PHP Version: PHP older than 5 PHP5以上でdomxmlが必要なだけみたいだが
570 名前:nobodyさん [2006/10/30(月) 18:36:37 ID:+kTSWHIU] >>569 php は 5 の環境で動いています。 domxml は phpinfo で調べたら DOM/XML enabled DOM/XML API Version 20031129 と、入っているようです。 lab.urume.net/2006,0529,447.html と blog.hawklab.jp/item-88.html を参考にしています。 あと php を cgi モードで動くように .htaccess に AddHandler application/x-httpd-phpcgi .php の一行が入っています。 url から叩いて 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 というエラーが出てしまいます。
571 名前:nobodyさん mailto:sage [2006/10/30(月) 19:02:38 ID:???] >>570 XML_sql2xmlがまだbetaだからじゃね? 自分で解決できなさそうだったら サイトからtgz落としてinclude_pathにアップする方が早いよ
572 名前:nobodyさん mailto:sage [2006/10/31(火) 02:01:45 ID:???] >>567 おれもおれも
573 名前:nobodyさん mailto:sage [2006/10/31(火) 06:15:34 ID:???] >>572 あー、じゃあやっぱりうちの環境の問題とかではないわけだなぁ。 となるとPerlで出力するとか検討しなきゃ駄目か。 そこだけPerlにすると色々共用できなくなって面倒なんだが
574 名前:nobodyさん [2006/11/06(月) 23:55:00 ID:Z3fQNHJB] QFでQFCを使わずに 入力->確認->処理をしたくて hiddenでmodeを入れたんだけど 同じ名前だとfreezeで前の値になっちゃうっぽいんだけど 「この要素はフリーズしないで」みたいな命令ってある? QFCをつかうのも大げさかなとおもっただけなので hidden使わない方法でもいいです。 おしえてくだしあ
575 名前:nobodyさん mailto:sage [2006/11/07(火) 02:58:06 ID:???] >>574 hidden で setConstants() とかそういう
576 名前:nobodyさん mailto:sage [2006/11/07(火) 11:02:29 ID:???] >>575 ありがとうございます。 setConstantsも試したんですけど 使い方が間違ってました(汗
577 名前:nobodyさん [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
578 名前:577 [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
579 名前:577 [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 続行するには何かキーを押してください . . .
580 名前:nobodyさん mailto:sage [2006/12/03(日) 00:30:08 ID:???] >>577 俺もgo-pear.batでをまともにインストールできた記憶がない。 素直に ttp://go-pear.org/ を保存して、 php.exe go-pear.org と実行した方がいいかと。
581 名前:577 mailto:sage [2006/12/03(日) 02:10:04 ID:???] >>580 うまく行きました。
582 名前:nobodyさん mailto:sage [2006/12/04(月) 17:31:22 ID:???] >>565 2,3行で書ける。
583 名前:nobodyさん [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; } ______________________________________
584 名前:nobodyさん mailto:sage [2006/12/07(木) 17:56:05 ID:???] class Auth における getAuth() メソッドと checkAuth() メソッドの 違いはなんでしょうか?
585 名前:nobodyさん mailto:sage [2006/12/09(土) 08:29:00 ID:???] スパム防止で25番ポートが使えないのなら諦めるべき。
586 名前:nobodyさん mailto:sage [2006/12/10(日) 13:19:44 ID:???] PEARのQuickformで詰まってまして解決方法あれば教えてください。 プルダウンメニューの場合DBから引っ張ってきたValueをみて Selectedされるのは確認したのですが、 DBの別テーブルからkeyで拾って表示させている場合、valueにはkey がセットされてしまいselectedされないようです。 うまくできる方法はないでしょうか。
587 名前:nobodyさん [2006/12/10(日) 13:24:59 ID:u1GQNv5M] age
588 名前:nobodyさん mailto:sage [2006/12/10(日) 14:22:33 ID:???] select だったらきちんと key => value がセットされて setDefault() では key で指定できるはずだが >>586 が書いたコードを抜粋して晒してみ
589 名前:nobodyさん [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で更新されてしまいます。 なんとなくつかめていただいたでしょうか。
590 名前:nobodyさん mailto:sage [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() が効くはず.
591 名前:nobodyさん [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
592 名前:nobodyさん [2006/12/10(日) 18:01:53 ID:u1GQNv5M] なんとかわかった気がします。phpの処理の中で値を使うとき profileから引っ張った際、$icon=$data['user']['icon1']で2が入るため <img src="$icon">が<img src="2">になるので、 リレーションつかってccc.gifをひっぱって表示させてました。 その辺が駄目だったのかもしれません。
593 名前:nobodyさん mailto:sage [2006/12/10(日) 18:39:59 ID:???] >>592 そういうこと そもそもの良くない点は「icon1」というひとつの名前が複数の意味を持ってしまっていることだと思うので DB から SELECT する際に別名付けてやることで 違う意味のものには違う名前を付けてやると良い,って話やね. 同じ名前(icon1)のまま違う意味(コードだったりファイル名だったり)に使いたいからって 違う内容を入れて使うって発想はよろしくないので, 違う意味のものなら面倒でも違う名前を付けて使い分けるようにしないと.
594 名前:nobodyさん mailto:sage [2006/12/10(日) 21:47:57 ID:???] あんまり関係ないけど、 Quickformってライブラリに使われてるって感じがするよねぇ。
595 名前:sage mailto: [2006/12/12(火) 14:05:01 ID:???] Pagerでページ変更時に変数を保持したいんですが、可能でしょうか?
596 名前:nobodyさん mailto:sage [2006/12/12(火) 14:23:36 ID:???] >>595 extraVars
597 名前:595 mailto:sage [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から再利用はできないんでしょうか。
598 名前:nobodyさん mailto:sage [2006/12/12(火) 16:30:16 ID:???] なんか使い方を間違えてる気が > ttp://pear.php.net/manual/ja/package.html.pager.intro.php > クエリ文字列に変数を追加する Pager が生成する URL の引数に入るだけで 変数への設定は $_GET とかから自前でやらないとだめよ
599 名前:595 mailto:sage [2006/12/13(水) 09:52:06 ID:???] 何度もすみません。 formでpostした$numを 'extraVars' => array('n' => $num), という感じでパラメータに置いて $_GET['num']で使おうとしていますが、 post直後はURIにもtest.php?n=1という風になりますが ページングされたページに飛ぶと変数を保持しておけません。
600 名前:nobodyさん mailto:sage [2006/12/13(水) 11:37:43 ID:???] array('n' => $num) なら $_GET[ 'n' ] じゃないの? もしかして Pager とか以前に根本的なパラメタ渡しとかが理解できてない?
601 名前:595 mailto:sage [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' ] じゃないの? そうですよね。本来のコードから書き換えて投稿していたので ミス入力してしまいました。
602 名前:nobodyさん [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側に外部のホストにつなぎに行く制限をする設定項目なんかがあるんでしょうか?
603 名前:nobodyさん mailto:sage [2006/12/13(水) 20:40:01 ID:???] sage忘れスマソ
604 名前:nobodyさん mailto:sage [2006/12/13(水) 21:13:07 ID:???] そもそもoci8っつー名前でOracle10サポートしてるかどうか微妙 DBよりMDB2の方がいいかも
605 名前:nobodyさん mailto:sage [2006/12/13(水) 23:40:31 ID:???] >>602 hosts にSIDと鯖のIP登録してWin再起動してみ。
606 名前:nobodyさん [2006/12/14(木) 22:39:50 ID:nK4PeE4Y] >>604 DB鯖の中で動いてるhttp鯖からは動くんでそれは問題ないかと思います。 下請けでPearDB指定なので…どうしてもダメなら検討します。 >>605 やってみます。環境が会社じゃないと無いので、明日やってみます。 ありがとうございます。
607 名前:nobodyさん [2006/12/15(金) 18:47:01 ID:cnQJoip3] >>605 見事に接続できました!! ありがとうございます。
608 名前:nobodyさん mailto:sage [2006/12/16(土) 00:53:19 ID:???] よかったね。 なんで hostsに書かないと接続出来ないのか判らんが、いつもこれにハマる。 教えてエロイ人。
609 名前:nobodyさん mailto:sage [2006/12/16(土) 19:59:14 ID:???] ウェブ鯖もリナックス(ユニックス)にしとけば良いのに。
610 名前:nobodyさん mailto:sage [2006/12/16(土) 21:05:10 ID:???] なんか頭悪そうだなぁ…
611 名前:nobodyさん mailto:sage [2006/12/17(日) 04:01:25 ID:???] リナクス使ってる時点で負けだよ。
612 名前:nobodyさん mailto:sage [2006/12/17(日) 10:23:51 ID:???] プ、プ、プギャープギャプギャプ♪ \ ププププギャプギャププギャプギャ/ ♪ (^Д^) ♪ _m9 )>_ キュッキュ♪ /.◎。/◎。/| <(^Д^)> | ̄ ̄ ̄ ̄ ̄| | ヽ(^Д^)ノ ) ) | |/ ノ ノ (((( > ̄ > )))) <(^Д^)9m ((( < ̄< )))) ) ) ((( > ̄ > ))))
613 名前:nobodyさん mailto:sage [2006/12/17(日) 13:31:55 ID:???] Tronが勝ち組
614 名前:nobodyさん mailto:sage [2006/12/19(火) 03:53:23 ID:???] PEARて重くなるだけじゃん いわゆる手抜きでしょ バカじゃねーの しんでこい
615 名前:nobodyさん mailto:sage [2006/12/19(火) 03:58:24 ID:???] がんばれや
616 名前:nobodyさん mailto:sage [2006/12/19(火) 06:55:14 ID:???] 軽くて使いやすいフレームワークって何?
617 名前:nobodyさん mailto:sage [2006/12/19(火) 07:53:04 ID:???] まさかAPCも使わずに重いとか言ってるんじゃ無いだろうな?
618 名前:nobodyさん mailto:sage [2006/12/19(火) 09:06:47 ID:???] APC 使ったぐらいで軽いとか言えるお前が羨ましいな
619 名前:nobodyさん mailto:sage [2006/12/19(火) 09:27:00 ID:???] APC重い。足の上に落としたことあるよ(T_T)
620 名前:nobodyさん mailto:sage [2006/12/19(火) 09:38:14 ID:???] えー!
621 名前:nobodyさん mailto:sage [2006/12/19(火) 10:18:47 ID:???] 小指ぶつけたことがあるな。
622 名前:nobodyさん mailto:sage [2006/12/19(火) 14:25:10 ID:???] そういやそろそろバッテリ交換しないとなぁ……
623 名前:nobodyさん [2006/12/19(火) 17:56:52 ID:G+HsmUGP] QuickFormのcheckboxのvalueってどのようにして設定すればいいのでしょうか?
624 名前:nobodyさん mailto:sage [2006/12/19(火) 18:28:48 ID:???] >>623 「QuickFormのcheckboxのvalue」でぐぐる
625 名前:nobodyさん mailto:sage [2006/12/20(水) 23:11:53 ID:???] pearってセッション管理が楽になったりはしないね。 諦めて他の方法使います。
626 名前:nobodyさん mailto:sage [2006/12/21(木) 00:46:59 ID:???] PHPに最初から備わっているセッション管理機能ではダメ?
627 名前:nobodyさん mailto:sage [2006/12/22(金) 02:45:39 ID:???] pear/PHPの下見たら、Session.phpが居ませんよ。orz
628 名前:nobodyさん [2006/12/22(金) 12:39:04 ID:ujx0PyDC] 結構簡単そうなことなんですけどググッても見つからないので助けてください QuickFormで'test'にデフォルトの値を渡したい時 例えば $form->addElement("text","hoge","コメント",array("size"=>80,"value"=>"デフォルトのコメント")); とやれば出来るのですが textareaのときは、どうするのでしょうか? textareaってvalueじゃなくタグの中身じゃないですか?<textarea>ここ</textarea> attributesで指定できるのでしょうか? お願いいたします。
629 名前:nobodyさん mailto:sage [2006/12/22(金) 12:52:53 ID:???] >>628 addElementのあと、setValueでどう?
630 名前:628 mailto:sage [2006/12/22(金) 14:17:26 ID:???] >>629 できました! setValueでは、何故か分かりませんがうまくいかず setDefaultsでできました。 この辺を参考にしました。 ttp://www.bnote.net/php/pear/p_07_setdefaults.shtml おかげさまでぐぐって見つけることが出来ました。 ナイスヒント
631 名前:nobodyさん mailto:sage [2006/12/22(金) 14:30:40 ID:???] PEARのアーカイブを解凍してinclude_pathを通して使う場合 /include_path/ ┳ PEAR/ ディレクトリ以下全部 . ┣ PEAR.php . ┗ System.php 追加したいパッケージは解凍後 /include_path/ or /include_path/PEAR/ にブチ込む感じで大丈夫でsぢょうか?