1 名前:nobodyさん [2005/08/01(月) 21:27:12 ID:pG+mahP3] 落ちてたんで立てとく ■PEAR pear.php.net/ ■前スレ Pear pc8.2ch.net/test/read.cgi/php/985665522/
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ぢょうか?
632 名前:nobodyさん mailto:sage [2006/12/22(金) 23:08:18 ID:???] >>631 include_pathの直下の方でOK
633 名前:nobodyさん mailto:sage [2006/12/23(土) 02:04:58 ID:???] pear自体寄せ集めだからねえ。 それより自分でまともなスクリプト書いて、path通せば問題ない。 所詮、プログラムできないウェブデザイナ向けの釣り餌でしょ。
634 名前:631 mailto:sage [2006/12/23(土) 02:14:55 ID:???] >>632 そーすか。ありがと。 とりあえず自分の使ってみた感じではweb interfaceが使えない以外には これで問題ない気がするんですが、これでマズイというか問題になるような 点とかってありますかね? インストーラを使うより解凍して設置してパス通して、の方が正直楽なような気がして。
635 名前:631 mailto:sage [2006/12/23(土) 02:39:07 ID:???] >633 なるほど。 > 手動インストールを行うためには パッケージがどのようにして生成され、 > インストールの際にどのようなプロセスが 実行されるかについての詳しい > 理解が必要となるからです。 ってあったので気になったのですが、パスさえ通ってれば実行には問題なさそうですね。 ありがと。
636 名前:nobodyさん mailto:sage [2006/12/27(水) 00:47:24 ID:???] ■ おすすめ2ちゃんねる 開発中。。。 by FOX ★ このスレを見ている人はこんなスレも見ています。(ver 0.20) ★☆チェ・ジウについて語るPart179☆★ [海外芸能人] 一時間阻止されなかったらキャラを持ち帰る 361人目 [ゲームキャラ] コンパクトフラッシュ(CF)は何処のが良い パート19 [デジカメ]
637 名前:nobodyさん mailto:sage [2006/12/27(水) 10:19:40 ID:???] >>636 アマゾンさんには程遠い検索結果ですねw がんばつてくらはい。
638 名前:nobodyさん mailto:sage [2006/12/28(木) 01:11:57 ID:???] HTTP_Requestのタイムアウトバグってまだ直ってないの?
639 名前:nobodyさん [2006/12/28(木) 01:12:27 ID:sdbBpoeX] >>638 kwsk
640 名前:nobodyさん mailto:sage [2006/12/28(木) 01:30:54 ID:???] >>639 ttp://sandman.s6.xrea.com/nucleus/index.php?itemid=48 1年半前だからさすがに直ってるだろうと思ったら、まだ直ってなかったのかタイムアウトできない。
641 名前:nobodyさん [2006/12/28(木) 12:44:31 ID:s71HHmdJ] >>640 作者に通報したら?
642 名前:nobodyさん mailto:sage [2006/12/28(木) 17:58:25 ID:???] やっぱバグだったのかー。結局wgetに逃げたよ。。
643 名前:nobodyさん mailto:sage [2006/12/28(木) 20:22:13 ID:???] ■ おすすめ2ちゃんねる 開発中。。。 by FOX ★ このスレを見ている人はこんなスレも見ています。(ver 0.20) ★☆チェ・ジウについて語るPart179☆★ [海外芸能人] 一時間阻止されなかったらキャラを持ち帰る 361人目 [ゲームキャラ] コンパクトフラッシュ(CF)は何処のが良い パート19 [デジカメ]
644 名前:nobodyさん mailto:sage [2006/12/29(金) 04:44:23 ID:???] ミクシ以下って評価が嫌なFOX。
645 名前:nobodyさん mailto:sage [2006/12/29(金) 16:01:50 ID:???] QuickForm_ControllerのActionProcessで最後に $page->controller->container(true); みたいにセッションをクリアすると、 submitを2回以上クリックした場合1ページ目が表示されちゃう・・・
646 名前:nobodyさん [2006/12/29(金) 17:00:33 ID:2C2HG/T8] >>642 kwsk
647 名前:nobodyさん mailto:sage [2006/12/29(金) 22:42:09 ID:???] >>645 QFCの方はよくわからんけど それむしろ正しい動作じゃね? submit2回連続でそうなるのが嫌なら javascriptでonsubmit時にdisabったりすればいいんじゃね?
648 名前:nobodyさん mailto:sage [2006/12/30(土) 11:57:35 ID:???] 確かに正しい動作だよね。 JavascriptはUAに依存するからあまり使いたくないす。 なにかいい方法はないものか・・・
649 名前:nobodyさん mailto:sage [2006/12/30(土) 12:02:33 ID:???] >>648 依存性を吸収するライブラリ使えば実用上差ほど問題ないと思うが
650 名前:nobodyさん mailto:sage [2006/12/30(土) 13:02:25 ID:???] pear upgrade-allが失敗してしまう。
651 名前:nobodyさん mailto:sage [2006/12/30(土) 15:43:46 ID:???] >>649 Javascriptをオフにしてる人もいると思うんで >>650 鯖落ちてたっぽい
652 名前:nobodyさん mailto:sage [2006/12/30(土) 15:49:39 ID:???] >Javascriptをオフにしてる人もいると思うんで っていう言い訳よく聞くんで鵜呑みしてたけど、 Google Analytics使うようになって、そういう人が2%くらいだって 知ったので、なんか微妙…。切捨てちゃってもいいかなぁ…て最近思う。
653 名前:nobodyさん mailto:sage [2006/12/30(土) 20:25:05 ID:???] >>652 わかってて切ってるやつがほとんどだから、noscriptで注意書き書いて切り捨てればいいだろ
654 名前:nobodyさん mailto:sage [2006/12/31(日) 00:13:26 ID:???] >>652 仮に2%の人がjsを切っていたとしたら 一万人の会員がいるサイトの場合200人は意図しない動作をさせる可能性があるわけで。 もし1ページ目に戻されたユーザーがもう一度送信したら困るっしょ。 クレームの処理は金と時間がかかるから(ry >>653 フォームに毎回noscriptで注意書き書くくらいならサーバーサイドで処理した方がスマートでは? で、一応できました。 ページを一つ多くして最後のページの中から $this->handle('process'); みたいにプロセスを呼び出せば最初のページに戻されない。 もっといい方法ないすかね・・・
655 名前:nobodyさん mailto:sage [2006/12/31(日) 15:32:47 ID:???] jsが動かなくしてるブラウザを使ってる香具師も居るからねえ。 おまいのサイトでは2%でも世の中のサイトが2%とは言えない。
656 名前:nobodyさん [2006/12/31(日) 23:56:13 ID:ZQTWDF0T] pear.php.net/ が見えないよ。 楽しくプログラム書いてたのに、足りないコンポーネントがだうんろーどできないよ。 かなしい。
657 名前:nobodyさん mailto:sage [2007/01/01(月) 00:26:17 ID:???] >>656 普通に見えるよ!
658 名前:nobodyさん [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 です。
659 名前:658 [2007/01/01(月) 06:10:53 ID:QzpvCD4L] www.pear-forum.de/ftopic1468.html ここの情報をさんこうに、Auth だけ別に pear upgrade Auth したらウマくいきました。 何が起こってたんだろうか。
660 名前:nobodyさん [2007/01/01(月) 06:13:32 ID:QzpvCD4L] ところで、PHP スクリプトを php script.php として実行した場合、 その戻り値はどうやってきめているのでしょうか?
661 名前:660 mailto:sage [2007/01/01(月) 06:20:42 ID:???] exit(123) でいいんですね。
662 名前:nobodyさん [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とかが見当たらない…。 何がどーなったの?何をどうしたらいいの?(;;)
663 名前:nobodyさん [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したら全て元通りになるのでしょうか?
664 名前:660 mailto:sage [2007/01/06(土) 18:25:39 ID:???] Debian 使ってる俺もなんか変になった。 アップグレード対象になっているパッケージを 落ち着いてひとつひとつ指定してアップグレードしたら 正常になったっぽい。
665 名前:nobodyさん [2007/01/06(土) 22:48:10 ID:sgvu7Tt8] tgz落としてきて半自動インストールで対処できました。 list-allしたリストにも追加されてるし、 完全自動インストールしたのと変わらない?っぽい状態になったのでいいかな、と^^; お騒がせしましたm(_ _)m
666 名前:nobodyさん [2007/01/10(水) 23:24:01 ID:MZg1Wlme] ちょっと質問させてください。 今、生まれて初めてQuickFormを使ってるんだけど、 レンダラ(HTML_QuickForm_Renderer_Default)を用いてHTMLタグをカスタマイズする際って デフォルトの出力HTMLテンプレートを丸ごと書き換えるしかないの? 固定テキスト(static)の文字色を赤にしたいだけなんだけど 「赤にするタグを追加」みたいな加えていくとかできなくて、 デフォルトのHTMLコードを全部手打ちした上で赤にするタグを追加する、でFAでつか?
667 名前:nobodyさん mailto:sage [2007/01/11(木) 11:40:36 ID:???] Defaultレンダラならそうじゃないかな だからArrayレンダラなりArrarSmartyレンダラなり 使うのが常套手段じゃないかな
668 名前:666 mailto:sage [2007/01/11(木) 12:25:16 ID:???] ご返答ありがとうございます。 まずは基本・・って事で参考にしている書籍にならってDefaultレンダラを使い始めましたが Arrayレンダラ等なら望みが叶うって事なのですね。 Arrayレンダラ等については書籍には書いてなかったのでマニュアルをあたってみます。 ども。 >>666 自己レスですが、\PEAR\HTML\QuickForm\Renderer\Default.phpを開いて 該当HTMLタグをコピペすればさほど手間ではなかったです。
669 名前:nobodyさん mailto:sage [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がどうのこうのって書いてあるので、このやり方はダメないのかなと・・・ ちなみにプレイスホルダ使わないで書いた方では正常に動作してます。 よろしくお願いします。
670 名前:nobodyさん [2007/01/12(金) 17:36:36 ID:2nrbZFx0] すいません、PEAR Mail_Queueの質問です。ご存知の方がいれば教えてください。 Postgresqlにてmail_queue、mail_queue_seqテーブルを作成して、キューを追加しようとしてる のですが、下記のようなエラーが出てしまいます。 $result=$queue->put("CQW15204@hoge.ne.jp","CQW15204@hoge.com",$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って難しい のでしょうか?ご存知の方がいれば教えてください。
671 名前:nobodyさん mailto:sage [2007/01/12(金) 19:18:47 ID:???] 標準のMySQL関連の関数よりも便利?
672 名前:nobodyさん mailto:sage [2007/01/12(金) 20:44:16 ID:???] >>669 pear.php.net/manual/ja/package.database.mdb2.intro-execute.php MDB2はprepareしてからみたいね
673 名前:669 mailto:sage [2007/01/13(土) 14:01:31 ID:???] おぉ!プリペアドステートメント! 参考にしてるDBレイヤの解説ではプレイスホルダとは分けて説明されてたのでスルーしてた(汗 このプリペアド経由のプレイスホルダも内部でエスケープ処理されるのかな。 早速試してみようと思います。 ありがとうございました。助かりました。
674 名前:551 mailto:sage [2007/01/13(土) 20:07:08 ID:???] HTML_QuickFormの ”日付のセレクトボックスの生成” dateフォーム使ってる人います? 年しか初期値設定できなくて微妙なんだけど・・・ setDefaultsで無理やり設定する方法とかありませんか?
675 名前:nobodyさん mailto:sage [2007/01/13(土) 21:35:24 ID:???] >>674 setDefaultsでdateエレメントの初期値にY,m,dみたいなキーの配列で設定できるはず UNIXタイムスタンプでもおk
676 名前:551 mailto:sage [2007/01/14(日) 17:44:09 ID:???] >>675 ありがとうございます! dateは便利でどうしても使いたかったので 助かりました!
677 名前:nobodyさん mailto:sage [2007/01/16(火) 06:37:44 ID:???] PHP の拡張って Windows 上では開発できないんだろうか。 いま Linux 上で phpize などを使って拡張を作ってるんだけど、 Windows 上の PHP で使えるバイナリくれといわれて途方に暮れる。 Windows には phpize も autoconf も m4 もないし・・ Cygwin で作るの?
678 名前:nobodyさん [2007/01/16(火) 06:46:23 ID:zR0oRC8J] うむむしかし PECL for Windows なんてのがあるようだぞ? Creating Extensions の vijay によるコメントでは php.benscom.com/manual/en/zend.creating.php config.js が用意されていて、m4 で記述された config.m4 の代わりに JavaScript (JScript ?) で記述された config.w32 が必要なのだそうだ。いずれにしろできないことはないらしい。
679 名前:nobodyさん [2007/01/18(木) 01:48:09 ID:3ixzqDHl] すいません、ちょっとお知恵をお借りしたいのですが。。。 HTTP_Clientにて $client =& new HTTP_Client(); $client->get($url); $response = $client->currentResponse(); こんな感じで、指定URLでのレスポンスが取得出来ると思うのですが 取得した先のURLを得ることは可能でしょうか?
680 名前:nobodyさん [2007/01/18(木) 02:08:14 ID:7qn+G2a8] echo $url;
681 名前:nobodyさん mailto:sage [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 が出る前に死んでしまって何も表示されません どんな原因が考えられるでしょうか?詳しい方ご教授お願いします
682 名前:nobodyさん mailto:sage [2007/01/18(木) 10:51:18 ID:???] >>681 ・$dsnが通ってない ・$this->db=&DB::connect($dsn);じゃない?
683 名前:679 mailto:sage [2007/01/18(木) 11:15:02 ID:???] >>680 さん すいません、説明が足りませんでした。 $urlに入ったURLで別のページにリダイレクトされるのです。 そのリダイレクト先のURLを取得したいなと思っています。 リダイレクト先のBODYは取得できるのですが。。。
684 名前:nobodyさん mailto:sage [2007/01/18(木) 16:56:34 ID:???] >>683 http header でリダイレクトされるんなら $response['headers']の中に入ってんじゃね? metaタグなら$response['body'] の中を探すしかないだろうね。
685 名前:nobodyさん mailto:sage [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の情報は見つけきれま せんでした。
686 名前:nobodyさん mailto:sage [2007/01/18(木) 18:59:50 ID:???] username,password って、 その形式は CVS ではなくて CSV ではなかろうか。 書式を直すか、type'=>'Cvs' の代わりに Authbasic、Authdigest、Custom、Smb、Unix のどれかを使ってみたら? どのみち書式もそれに合わせる必要があるけど。
687 名前:nobodyさん mailto:sage [2007/01/18(木) 19:10:14 ID:???] >>685 か、か、解決しますた!! $mymyAUTH = new Auth( "File", $auth_params ); $res = $mymyAUTH->addUser( $_POST[ 'user' ], $_POST[ 'passwd' ] ); で、ユーザー登録したら、認証できた。 ということでお騒がせしますた。
688 名前:nobodyさん mailto:sage [2007/01/20(土) 14:44:06 ID:???] カンマセパレートバリュー。
689 名前:nobodyさん [2007/01/24(水) 21:46:52 ID:cqEVnQIF] age
690 名前:nobodyさん [2007/01/25(木) 13:17:04 ID:diFouhBc] PEARってなんで大文字なんだよ! ホントうんこすぎ pearのライブラリをディレクトリに移動しようとしたら小文字のファイルにリネームしちまうし、 php.iniはみにくいし、そこでのincludepathも大文字小文字間違って書き直しだし もう氏ねやうんこ言語
691 名前:nobodyさん mailto:sage [2007/01/25(木) 13:28:10 ID:???] >>690 それは鯖がクソなだけ。
692 名前:nobodyさん mailto:sage [2007/01/25(木) 14:08:06 ID:???] ファイル名のケースを区別するかどうかなんて PEARやPHPどころかOSの問題じゃん これをプログラム言語のせいにしてる奴とかもう呆れる他ないな
693 名前:nobodyさん mailto:sage [2007/01/25(木) 22:57:10 ID:???] GDをラップしたライブラリってないの? GDいじるの結構面倒くさい(><)
694 名前:nobodyさん mailto:sage [2007/01/25(木) 23:03:10 ID:???] >>693 いや・・・あの・・・ まっいいか・・・
695 名前:nobodyさん mailto:sage [2007/01/25(木) 23:10:41 ID:???] >>693 PEAR行ってImage_ってプレフィックスがつくパッケージ当たってみ
696 名前:nobodyさん mailto:sage [2007/01/26(金) 10:53:30 ID:???] はやくかけや。 こまってんだよ!
697 名前:nobodyさん [2007/01/26(金) 13:24:07 ID:PVZRthFQ] はじめてPEARを使おうと思っているんですけども、 レンタルサーバでも使えるのでしょうか? インストールされてなければ無理なのかな・・? それと、ダウンロードしてきたファイルの使い方がわかりません。 Image-Graphというのが使いたかったのでダウンロードし、解凍したところ、 Image-Graph-0.7.2というファイルがでてきました。 これはいったいどうすればいいのでしょうか?
698 名前:"""""""""" mailto:"""""""""" [2007/01/26(金) 13:34:58 ID:???] 希少もの:中国製無修正 某大陸高校トイレ盗撮ビデオ www.google.co.jp/search?hl=ja&q=%E3%82%A2%E3%82%A4%E3%83%89%E3%83%AB+torrent+uppics&lr=
699 名前:nobodyさん mailto:sage [2007/01/26(金) 15:56:55 ID:???] >>697 PEARはPHPで書かれてるから適当なバージョンのPHPが動くサーバなら使える。 依存関係とか自分で解決してやらなきゃならないが。 Image_Graphだと Image_Canvas Image_Color Extension gd が必要。 全部そろえばincludeとかrequireすることで使える。
700 名前:nobodyさん mailto:sage [2007/01/27(土) 05:02:52 ID:???] >>696 >>698
701 名前:nobodyさん [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を使ってます。
702 名前:nobodyさん mailto:sage [2007/01/30(火) 11:35:02 ID:???] >>701 自分で超初心者とか言うアホにPEARは100年早い。 「俺は超初心者だから、調べるの面倒だし、お前ら!丁寧に分かりやすく解決方法を教えろ!」 って言ってるのか?死ねよ!カス
703 名前:nobodyさん [2007/01/30(火) 11:59:16 ID:We8vUN44] >>702 「超初心者ですのでわかりやすく説明くださると大変ありがたいです。」そういう言い方をしましたので>>702 さんのような捕らえ方をされても仕方ないかもしれません。 ですが昨日から解決方法を調べましたが未だに解決できずにいます。ですので救いの手をいただければと思いますのでどうかよろしくお願いします。
704 名前:nobodyさん mailto:sage [2007/01/30(火) 12:12:05 ID:???] >>701 5.2.0のgo-pear.batは壊れてる ttp://d.hatena.ne.jp/shimooka/20061105/1162714257
705 名前:nobodyさん mailto:sage [2007/01/30(火) 12:15:45 ID:???] >>701 ,703 聞く前に検索しろということだ www.google.co.jp/search?hl=ja&c2coff=1&q=Cannot+use+a+scalar+value+as+an+array+in+phar%3A&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
706 名前:nobodyさん [2007/01/30(火) 22:37:40 ID:bW5fYcLi] PEAR :: DB のパッケージをインストールしたのですが 「tests」というディレクトリがありました。 これは動作に必要なのでしょうか? 必要ないのであれば消したいのですが。そもそも消す必要もありませんかねぇ。 よろしくお願いします。
707 名前:nobodyさん mailto:sage [2007/01/30(火) 22:45:17 ID:???] >>706 何故、消そうと思うのだ? 別にあってもよくないか?
708 名前:nobodyさん [2007/01/30(火) 22:47:55 ID:bW5fYcLi] >>707 そうですね。 そのまんまにしておきます。ありがとうございました。
709 名前:nobodyさん mailto:sage [2007/01/31(水) 10:55:32 ID:???] 必要ないから消してもOK
710 名前:nobodyさん mailto:sage [2007/01/31(水) 11:58:58 ID:???] 虫垂だの農家の四男坊なんてのはやたらに切るもんじゃないだろう
711 名前:nobodyさん [2007/02/01(木) 12:15:21 ID:PAIOYH/b] PECL には GNU libidn を使うための拡張があります。 pecl.php.net/package/idn 同様の拡張が別の場所でも開発されているようです。 php-idn.bayour.com/ インターフェイス(提供される関数)はほぼ同じようです。 これら二つの拡張の間には何か関係があるのでしょうか?
712 名前:nobodyさん [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("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ファイルがあるのにエラーになってしまいます。 もう疲れて吐きそうです。。。
713 名前:nobodyさん mailto:sage [2007/02/06(火) 16:22:33 ID:???] >>712 ディレクトリセパレータでは? include_path = ".;C:\httpd142p\php5\PEAR"
714 名前:nobodyさん mailto:sage [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 ふぅ〜。。どうしたもんですかね
715 名前:nobodyさん mailto:sage [2007/02/06(火) 16:42:08 ID:???] require_once 'Net/Socket.php'; これ一行だけのソースでもNo such 〜になる? C:\httpd142p\php5\PEAR\Net でアドレスバー叩いてちゃんとSocket.phpはあるかい?
716 名前:nobodyさん mailto:sage [2007/02/06(火) 17:02:55 ID:???] あー Socket.phpありませんでした。。。 Socket.phpとURL.phpダウンして入れたところ正常に動きました。 ふぅ〜。ありがとうございましたm(_ _)m。
717 名前:nobodyさん mailto:sage [2007/02/06(火) 17:22:12 ID:???] >該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。 >該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。 >該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。 >該当箇所にはちゃんとPearファイルがあるのにエラーになってしまいます。
718 名前:nobodyさん [2007/02/06(火) 17:54:04 ID:NJuIco/q] if ( $_SERVER["REQUEST_METHOD"] != "POST" ) { exit( "不正なリクエストでおじゃる" ); } $hoge = $_POST["hoge"] ? $_POST["hoge"] : ""; こういうソースがあったのですが、リクエストのメソッドを調べる 意味ってあるのですか? 万が一、引数が GET で渡されてたとしても、それが $_POST に代入される ということがありえるのでしょうか。
719 名前:nobodyさん mailto:sage [2007/02/06(火) 17:56:37 ID:???] ねーよww
720 名前:nobodyさん mailto:sage [2007/02/06(火) 20:46:38 ID:???] むかーーーしのバージョンのPHPで GET引数に "GLOBALS[_POST][hoge]" とかそんな感じで 外から $_POST に値を入れられちゃう糞バグがあったような気がしんぐ
721 名前:718 [2007/02/06(火) 21:33:11 ID:NJuIco/q] すみません。 >>718 は誤爆です。
722 名前:718 [2007/02/06(火) 21:36:03 ID:NJuIco/q] >>720 そうだったのですか。 もうちょっと調べてみます。ありがとうございました。
723 名前:nobodyさん [2007/02/14(水) 07:44:29 ID:HWr8LnC4] 質問です。 今html_ajaxでいろいろやってるのですが、 html_ajaxでプロキシアクセスをしてる場合のpostで通信してるのですか?getですか? access_logをみてみると、両方のような気がするのですが。 またpostの場合、sessionでの接続ができますか?どのようにsidを送るのでしょうか? よろしくお願いいたします。
724 名前:nobodyさん [2007/02/14(水) 16:20:33 ID:pTwqj5vm] pearのアンインストール方法を教えてね。
725 名前:nobodyさん mailto:sage [2007/02/15(木) 01:48:19 ID:???] まず、どのようにインストールしたかかけや
726 名前:nobodyさん [2007/02/15(木) 02:10:56 ID:202bzPy7] go-pear.orgからインストールしたのよ。
727 名前:nobodyさん [2007/02/15(木) 17:56:46 ID:kYaagmVU] おまえらどんなPEAR使ってるか教えろ。
728 名前:nobodyさん mailto:sage [2007/02/15(木) 18:18:00 ID:???] インフラとして必要で、実用的で、枯れてて、 誰でもすぐに馴染める使いやすいパッケージは ・PHPUnit ・PhpDocumentor ・PEAR ・MDB2(+Driver) ・HTTP_Request ・Cache_Lite ・Log ・Mail あたりとか? もうPHP4でしか使う機会がないな PHP5でいいならフレームワークに付属ので間に合わすか、 ZFのライブラリを使う
729 名前:nobodyさん mailto:sage [2007/02/15(木) 19:29:34 ID:???] Pagerも結構よいよ
730 名前:nobodyさん [2007/02/15(木) 21:50:13 ID:l05otmqr] まだHTTP_Requestしか使ったことないや。
731 名前:nobodyさん mailto:sage [2007/02/16(金) 09:32:26 ID:???] Cache_Liteはめちゃくちゃ重宝する。
732 名前:nobodyさん mailto:sage [2007/02/17(土) 12:31:18 ID:???] HTML_QuickFormで確認ページって出せますか? 入力→確認→登録みたいな感じです。 出せる場合はどのようにしたら良いのでしょうか、、?
733 名前:nobodyさん mailto:sage [2007/02/17(土) 12:33:24 ID:???] freeze使え
734 名前:nobodyさん mailto:sage [2007/02/17(土) 14:54:17 ID:???] 確認画面用に freeze() 使う時は hidden 要素に setPersistantFreeze(true) も忘れないように
735 名前:732 mailto:sage [2007/02/21(水) 05:59:51 ID:???] >733,734 やってみる!ありがとう。
736 名前:nobodyさん [2007/02/22(木) 14:28:49 ID:3Rwtxk4J] PEAR のコーディング規約って、 Java でよく使われているもののほぼコピー?
737 名前:nobodyさん mailto:sage [2007/02/22(木) 18:02:36 ID:???] PHPUnit PEARから外れちゃったんだよなぁ。 PHP4でFirebirdのある限り DBを使いつづける選択肢しかないんだよなぁ。
738 名前:nobodyさん [2007/02/22(木) 22:53:30 ID:Ua9elyJa] MDB2( pear.php.net/manual/ja/package.database.mdb2.php )についての質問です。 スクリプトでMDB2を用いる際に、いちいちDSNやエラーチェックをすると コードが冗長になってしまいます。 みなさんはどうしていますか? 私が考えたのは、例えば 'DataBase' というクラス(MDB2のクラスを継承)を定義して そこから使うのがよいかと思っています。 これについて何か参考になるドキュメントがありましたら ぜひ教えてください。よろしくお願いします。
739 名前:nobodyさん [2007/02/23(金) 23:08:52 ID:yQax9a0k] 無駄なものを覚えるとかえって時間がかかる 何を学ぶかの取捨選択が大事だと思います HTML_QuickFormのほかに、これには手を出すなというのはありますか?
740 名前:nobodyさん mailto:sage [2007/02/23(金) 23:33:13 ID:???] >>739 HTML_QuickForm_Controller/DB/DB_DataObject/Auth/Auth_HTTP/Cache_Lite このくらいかな…
741 名前:nobodyさん [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); ?> 以上です。長々とスミマセン。
744 名前:nobodyさん mailto:sage [2007/02/25(日) 00:45:14 ID:???] >>741 PHPの質問スレ行った方がいいんじゃね?
745 名前:>>741-743 mailto:sage [2007/02/25(日) 01:10:29 ID:???] >>744 おっしゃる通りですね。 PHPの下質のスレに行きます。 お目汚し失礼しました。
746 名前:nobodyさん [2007/02/28(水) 08:54:35 ID:ZY+YimwX] SQLビルダーが欲しくて色々さがしてます。 DB_DataObjectがよさげだとおもって、ちょっと読んで 軽く使ってみたのですが これってSQLだけgetすることは出来ないのでしょうか? 接続にはDBとかMDBは遅いのでPDOを使いたいのですけど・・・ 良いのありませんかね? dinolibっていうのも使ってみたけど、古いし、イマイチ。 DB_DataObjectはマジで便利そうなんだけど・・・
747 名前:nobodyさん mailto:sage [2007/02/28(水) 14:56:36 ID:???] 流れはORマッパーなので。
748 名前:nobodyさん mailto:sage [2007/02/28(水) 20:30:47 ID:???] >>746 おれも以前に似たような要求で色々と調べたけど "_" から始まる名前の(PEAR規約で private 扱いの)メソッドやら変数やらをアレコレしないと 生 SQL のみを取得することはできなかったっす
749 名前:745 mailto:sage [2007/02/28(水) 21:39:38 ID:???] ソース見たら出来なさそうですね。 SQL生成から実行まで、一つのメソッドでやってた。 あれを改造しちゃうか・・・ DBかMDB2を使うか 他のSQLビルダを探すか 自分で作っちゃうか とりあえずここ過疎化してるので PHP版に移住します。お騒がせしました。
750 名前:745 [2007/02/28(水) 23:20:38 ID:ZY+YimwX] >>748 すいません。板のURLが変わってたんですね 2chブラウザ使ってるのでレスが付いてないのかと思っちゃいました。 SQLビルダ作るかな〜
751 名前:nobodyさん mailto:sage [2007/03/01(木) 01:32:14 ID:???] DB_DataObjectはORマッパであってSQLビルダでない件に関して
752 名前:745 [2007/03/01(木) 10:39:52 ID:vEHHBeZ0] >>751 純粋にクエリーを発行して配列にオブジェクトを格納するところまでの時間を計測したんですけど PDO::FETCH_CLASSとかpg_fetch_object(postgresqlなら)を使うと シチュエーションによっては10倍近い速さなんですよね。 だからSQLビルダだけ使えないかと思ったわけでして。 ただ、取得するデータ件数が少ないと、速度差はごくわずかなので LIMITで絞ってページングすればほとんど変わらない気もするし・・・ DB_DataObject使うとSQLインジェクションとかプレイスフォルダ使わなくて ばっちり対策済みなんでしょうか? もうちょっと色々試してみます・・・ すごい良く出来てると思うので、気になるのは速度だけなんだよな〜
753 名前:nobodyさん mailto:sage [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あたりを参考にするといいんじゃない
754 名前:nobodyさん mailto:sage [2007/03/01(木) 11:23:12 ID:???] >>753 あなたの言っている全ての機能はDB_DataObjectにも実装されていますが? それにフレームワーク固有のコードを書いていたら汎用性が全く無くなってしまう。 それこそ、自己満足の時代に逆境したプログラミングでしかない。
755 名前:nobodyさん mailto:sage [2007/03/01(木) 11:29:52 ID:???] じゃあDB_DataObject使えばいいじゃんw
756 名前:nobodyさん mailto:sage [2007/03/01(木) 11:45:56 ID:???] PEAR::DB が遅いってのは抽象化インタフェースなんだからある程度は仕方ないと思うが pdo がいいなら PEAR::DB とインタフェース互換で pdo 直接叩くようなのを書けばいいんじゃないかな てか書いたら公開してくれw
757 名前:nobodyさん mailto:sage [2007/03/01(木) 12:33:14 ID:???] >>754 別にDB_DataObjectが機能不足だなんて書いてないし 俺もDBやDB_DataObjectを経て来た上で書いている あとZend_Dbやpropelにフレームワーク固有のコードとかない それぞれ独立したライブラリとして作られている てかDB扱うライブラリに普通FW固有のコードなんて書かない もうちょっと色んなライブラリ見渡してみてもいいと思うよ
758 名前:nobodyさん mailto:sage [2007/03/01(木) 12:37:31 ID:???] >それにフレームワーク固有のコードを書いていたら汎用性が全く無くなってしまう。 フレームワークをなんだと思ってるんだ?
759 名前:nobodyさん mailto:sage [2007/03/01(木) 15:51:00 ID:???] DBからMDB2に移ろうとしているんですが、 MDB2って、なんかDBに比べて不便になってる 気がするんですが、気のせいでしょうか? insertやupdateの手順がまんどくさくなってるよな。。。
760 名前:nobodyさん mailto:sage [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'); }
761 名前:nobodyさん mailto:sage [2007/03/08(木) 12:31:50 ID:???] 単にcallback1()を2回定義しちゃってるだけじゃないの?
762 名前:760 mailto:sage [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(){...} }
763 名前:nobodyさん mailto:sage [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を再インストールするしか復旧する方法は無いでしょうか?
764 名前:nobodyさん mailto:sage [2007/03/09(金) 16:07:36 ID:???] 今俺も試しにアップグレードしてみたが特に問題ないな whichとfindで探しても全くでてこない?
765 名前:nobodyさん mailto:sage [2007/03/09(金) 16:18:35 ID:???] Html_QuickFormのselectあります。 これにmultiple属性を設定するにはどんな書式にすればいいんでしょうか? $QuickForm->addElement('select',); みたいな書式でできるんでしょうか・・・?
766 名前:763 mailto:sage [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" してもコマンドは見つからないですね・・・家の環境だけなのか?
767 名前:nobodyさん mailto:sage [2007/03/09(金) 21:25:55 ID:???] pearディレクトリ毎持ってきたりして入れ替えたら そりゃ消えようがしゃあないな アップグレード時にbinにコピーできなかったとか go-pearでPEARだけ入れ直したらいいんじゃね
768 名前:nobodyさん mailto:sage [2007/03/09(金) 22:48:15 ID:???] >>767 おお、go-pearなんて便利なものが・・・ これで無事再インストール出来ました。
769 名前:nobodyさん [2007/03/09(金) 23:08:13 ID:bGciLmRc] Windowsの話?
770 名前:nobodyさん mailto:sage [2007/03/11(日) 00:25:48 ID:???] >>765 ttp://www.townmedia.org/tips/PEAR/HTML_QuickForm.html 2-2 addElementで使える要素一覧 をみるかぎり、select のarg5に入れればなんでもアリじゃないでしょうか?
771 名前:nobodyさん mailto:sage [2007/03/13(火) 18:35:18 ID:???] PEAR::Auth を便利に使っています。 別の場所で別の人が同じ ID/PW でログインできますが、 これを拒否する方法はどういうものがあるでしょうか。 ( 後からログインした人を拒否できると嬉しいです )
772 名前:nobodyさん mailto:sage [2007/03/13(火) 20:09:42 ID:???] ログインユーザをセッションIDと一緒に、DBなりファイルに書き出しとけばいいんじゃないの。 同一ユーザ名ログインの時には、それに対応するセッションIDが残ってるかどうかチェックして なきゃそれでOK。 でも同一ユーザ名・パスワードの複数保持なんていうのがそもそもセキュリティ的にラフすぎ。
773 名前:nobodyさん mailto:sage [2007/03/14(水) 09:34:15 ID:???] >>772 ありがとうございます。 何かの拍子に ID/PW が漏れた場合、 同時にアクセスされたら漏洩発覚!としたかったんです。
774 名前:nobodyさん mailto:sage [2007/03/14(水) 09:44:37 ID:???] >>773 そんなのWWWでやるシステムじゃない
775 名前:nobodyさん mailto:sage [2007/03/14(水) 12:37:17 ID:???] どうやってログアウトをシステム側で察知するかだな。 操作ミスなり回線不良なりでCookieあぼーんすると 直ぐにログインできないってことになる。
776 名前:nobodyさん mailto:sage [2007/03/14(水) 12:59:55 ID:???] つかブラウザ二個起動した時点で終了
777 名前:nobodyさん mailto:sage [2007/03/14(水) 14:20:57 ID:???] >>774 ネットバンクとかで無いか?
778 名前:nobodyさん mailto:sage [2007/03/14(水) 14:35:20 ID:???] >>777 >>776
779 名前:nobodyさん mailto:sage [2007/03/14(水) 14:41:52 ID:???] >>778 意味ワカラン
780 名前:nobodyさん mailto:sage [2007/03/14(水) 14:43:11 ID:???] 分かった
781 名前:nobodyさん mailto:sage [2007/03/14(水) 14:46:43 ID:???] >>776 同じIPならセーフとかは?
782 名前:nobodyさん mailto:sage [2007/03/14(水) 14:57:05 ID:???] >>781 ルータ経由はどうすんの。
783 名前:nobodyさん mailto:sage [2007/03/14(水) 19:03:09 ID:???] やっぱり難しいさね。 ストリーミングサイトだったら通信継続してるから 感知して第二ユーザはキック出来るけど、そうじゃなきゃ>>775 のような ケースでクレーム来るほうが怖いからなあ。
784 名前:nobodyさん mailto:sage [2007/03/14(水) 19:07:01 ID:???] ログイン画面で固定のキーを与えるのどうだろう。
785 名前:nobodyさん mailto:sage [2007/03/14(水) 19:12:34 ID:???] トークン使う
786 名前:nobodyさん mailto:sage [2007/03/14(水) 19:21:48 ID:???] 明示的なログアウト送信がない限り全部一緒の問題を抱える
787 名前:nobodyさん mailto:sage [2007/03/14(水) 23:04:39 ID:???] まあセッションクッキーのexpire時間を金融サイトみたいに10分とか短く設定しておいて、 10分以内に通信無きゃ強制ログアウトっていうのが許されるサイトなら問題が少なくなる。 最大10分の再ログインラグが出るけどね。
788 名前:nobodyさん mailto:sage [2007/03/15(木) 00:52:45 ID:???] 昔やったサイトというかWebアプリでは ・ユーザは出来るだけ明示的にログアウトするようお願いする ・メインウィンドウがクローズされる時にログアウトのURLを叩くJavaScriptを仕込んでおく ・最終アクセスを全ユーザの全アクションで記録しておいて、ログアウトなしのユーザがログインしようとしたら最終アクセスが10分以内の場合は弾く イントラ用のアプリケーションだったから負荷とかも考慮した上でここまでやったけど 一般向けのWebサイトじゃどこまでやるかは難しい判断だろうなぁ
789 名前:nobodyさん mailto:sage [2007/03/15(木) 09:27:34 ID:???] >>787 それは、パスワード漏洩時の対策にはならんのではないか。 まあそもそもの話として同時アクセス=漏洩なのかというか、常時使うシステムでもない限り使う時間がぶつかることがあるのか疑問。 漏洩するとしたら、内部からユーザ情報持ちだしとか、パソコンに付箋紙貼ってある時だと思うんだが、 したら不正利用する人が夜中とかに使えばまあ、システム上はほとんど不正利用にならないだろうし。 >>788 ログアウトするようにお願いするったって 不特定多数のコンピュータリテラシーがまちまちなユーザじゃ無理。 メインウィンドウをクローズしないかもしれないし。 夢を見すぎじゃないかと。 ユーザに過去のログイン・ログアウト情報を提示して、変だったら通報してもらうほうがいいんじゃねえの。 過去にどういう行動をしたのか知ってるのは本人しかいないわけだし。
790 名前:nobodyさん mailto:sage [2007/03/15(木) 10:01:20 ID:???] >>789 世の中には「テメエにしか分からないこと」を 自動的に論理矛盾なくプログラム側で判断しろ、 という輩もいるわけでwww
791 名前:nobodyさん mailto:sage [2007/03/15(木) 11:54:09 ID:???] 生体認証かな
792 名前:nobodyさん mailto:sage [2007/03/15(木) 12:14:00 ID:???] >>789 お願いするだけじゃ無理なのが解ってるから2番目・3番目の仕組を入れてるわけで 無理じゃなけりゃJavaScriptだの全アクセス記録だの不要だろw あと「イントラ用」って書いたんで不特定多数ではない時の話だってのも読み取ってほしいところ >>791 ログインには使えるけどログアウトしてくれるかどうかは別問題だねそれはw PCの不意のハングアップまで考慮しようとすると それこそJavaScriptか何かでサーバとハートビート交換しまくって 途切れたらログアウト処理にするとかまでやらないと難しいだろうなぁ
793 名前:nobodyさん mailto:sage [2007/03/15(木) 12:35:50 ID:???] >>792 目的が漏洩対策ならいいんじゃない?<生体認証
794 名前:nobodyさん mailto:sage [2007/03/15(木) 13:00:52 ID:???] >>792 と言われても、話の元の人はイントラ用とは言ってないわけだし、実際採用されたらどうかなあと思うわけで。 結局のところ、普通に当たり前のことをやっとけばいいと思うよ、としか言えないな。 一応法整備されたからパスワードだけかけておけばノーガードでもいんじゃねという話もある。
795 名前:nobodyさん mailto:sage [2007/03/15(木) 13:58:14 ID:???] >>787 >それは、パスワード漏洩時の対策にはならんのではないか。 元ネタが同時ログインをキックしたいということだけであって、どこに問題がある?
796 名前:nobodyさん mailto:sage [2007/03/15(木) 14:21:29 ID:???] >>795 >>773 > 何かの拍子に ID/PW が漏れた場合、 > 同時にアクセスされたら漏洩発覚!としたかったんです。 >>771 だけ見ればそんなもんかって感じだが。
797 名前:nobodyさん mailto:sage [2007/03/15(木) 15:40:15 ID:???] 同時アクセス「ゆえに」漏洩発覚というロジックはむちゃくちゃだから どうでもいいじゃん。同時アクセスキックできる方法だけ話してればいい。
798 名前:711 mailto:sage [2007/03/15(木) 17:59:45 ID:???] 元質問者です。 両方再ログイン促すので十分です。 それで漏洩か運用で分かると思うので。 なんだかいろいろと考えることが多いのですね ^^; どこかにいい実装例はないでしょうか。 ( コードがあると嬉しいです )
799 名前:nobodyさん mailto:sage [2007/03/15(木) 18:50:39 ID:???] >>798 仮に漏洩してたとして、同時アクセスと思える範疇でアクセスがある、漏洩と判断できる確率って少ないんじゃね。 あれこれ仕掛けてユーザビリティ低下でクレームが発生するほうが高そうに思えるのだが。 まぁどこまでコストをかけるかは措いといて、 >>775 で「どうやってログアウトを...」って書いたけど、Cometならできるかもしんない。 Cometシステムを構築したことどころか、lingrさえしたことないので、 どこまで実用的に漏洩を察知できるシステムができるどうかは知らんが。 これでも、ユーザが会社でブラウザを開いたまま帰宅、自宅でログイン出来ねーって言うかもな。
800 名前:nobodyさん [2007/03/15(木) 21:24:01 ID:fuFXgue7] >ユーザが会社でブラウザを開いたまま帰宅、自宅でログイン出来ねー イントラ想定してしながらそうじゃないケース想定してるのが痛い
801 名前:799 mailto:sage [2007/03/15(木) 21:34:56 ID:???] >>800 え〜と、俺はイントラなんて想定しとらんが? 元質はイントラネタだったのか?
802 名前:nobodyさん mailto:sage [2007/03/15(木) 21:35:01 ID:???] Cometならできるかもしんないwww
803 名前:nobodyさん mailto:sage [2007/03/15(木) 22:37:02 ID:???] 昔、椅子に座ったらログイン、椅子から立ったらログアウト、 っていう仕組みを作ろうかとか考えたことある。 実用性が無さそうなんでやめたけど。
804 名前:nobodyさん mailto:sage [2007/03/15(木) 22:44:26 ID:???] あきらめたらそこでログアウトだよ
805 名前:nobodyさん mailto:sage [2007/03/15(木) 23:51:51 ID:???] >>801 元質はイントラじゃない イントラ云々はおれが>>788 で 「イントラだったからここまでやったけどそうでなければどれくらい手間をかけたもんかな」的に書いただけ >>803 迂闊にトイレにも行けねーなw
806 名前:nobodyさん mailto:sage [2007/03/15(木) 23:57:38 ID:???] 実際は、イントラ以外使えないというところではそんなもんだろ
807 名前:nobodyさん [2007/03/15(木) 23:58:51 ID:7hzpmvYO] でも同じユーザーが同時期にアクセスできないようにするってことは、魅力があるね。 なんか旨い方法ないのかな?
808 名前:nobodyさん mailto:sage [2007/03/16(金) 00:07:36 ID:???] IPとかUAは?
809 名前:799 mailto:sage [2007/03/16(金) 00:15:29 ID:???] う〜ん、マジでCometで出来ない? Cometって時間的にどのくらいコネクションを握ったままできるのかしらんだけど、 擬似サーバプッシュでクライアントからの返答(再リクエスト)がなければログアウト状態と判断できると思う。 保存期間なしのCookieも併用して。 Apacheにmod_cometみたいなモジュールが出てきたらいろいろ面白そうだけどなぁ。 で、PEARとはまったく関係ない話になってしまった。
810 名前:nobodyさん mailto:sage [2007/03/16(金) 00:55:14 ID:???] >>802 が良いこと言ったな。
811 名前:nobodyさん mailto:sage [2007/03/16(金) 00:56:45 ID:???] プロセス単位じゃなくて、スレッド単位でコネクション維持してくれるモジュールが 無いと、すぐに鯖がパンクするな。
812 名前:nobodyさん mailto:sage [2007/03/16(金) 04:10:01 ID:???] 後のログインを優先させれば解決
813 名前:nobodyさん mailto:sage [2007/03/16(金) 07:13:07 ID:???] >>812 おまえ脳みそ使ってないだろw
814 名前:nobodyさん [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/)。 これが出来るならなんとかなるんじゃないの。
815 名前:nobodyさん mailto:sage [2007/03/16(金) 09:32:57 ID:???] >>814 Ajaxでいいじゃないか。
816 名前:nobodyさん mailto:sage [2007/03/16(金) 15:00:47 ID:???] >>807 利用できる端末を登録制にする。 登録は自分で出来るけど、登録用には別のパスワードを用意して、全てが漏れないと使えないようにする。 端末の登録が変更されると、指定したメールに通知。 たしかソニバンがこれ。 登録済み端末が操作されてしまうのは防げない。
817 名前:nobodyさん mailto:sage [2007/03/16(金) 15:25:46 ID:???] >>815 Ajaxは、クライアント側の制約(DHTML)がありすぎだからなあ
818 名前:nobodyさん mailto:sage [2007/03/16(金) 15:27:39 ID:???] >>816 「端末」の同定はどうしてるのだろう?<ソニバン
819 名前:nobodyさん mailto:sage [2007/03/16(金) 15:52:41 ID:???] >>818 同じPCでブラウザ変えると別端末という認識をされた。 クッキーとかかな。
820 名前:nobodyさん mailto:sage [2007/03/16(金) 16:48:41 ID:???] >>798 >元質問者です。 >両方再ログイン促すので十分です これ意味あるかな? 1.そもそも先にログインしている方が「正規ユーザ」とは限らない。 2仮にそうだとしても、.クラックした方が先に再ログインすることも出来る 実際は、こういう事態がおこったら、そのユーザアカウントは仮停止すべきでしょう。
821 名前:nobodyさん [2007/03/21(水) 18:47:33 ID:78nxSnEz] vistaでpearコマンド、CLIがntdll.dllのエラーで停止しない?
822 名前:nobodyさん mailto:sage [2007/03/22(木) 14:53:02 ID:???] sage
823 名前:nobodyさん [2007/03/23(金) 14:24:37 ID:cotQkCWi] すいません PearでQuickFormを使ってページを作成しています。 controllerを使ってウィザード式にしたいのですが 前のページでデータベースからの検索結果(不特定多数)があり その結果それぞれにリンクを貼りクリックするとその情報を持って 次のページに行きたいのです。 色々調べたのですがフォームボタンを使ったものしかなく 困ってます。 参考になるページなどありましたら教えてください よろしくお願いいたします。
824 名前:nobodyさん mailto:sage [2007/03/23(金) 18:09:38 ID:???] それはQuickFormとかと関係ない。 a href 要素・属性で、POSTで送信したいってことでしょ? javascriptを使えばいい。 ’リンクでPOST’ とかググればすぐ
825 名前:nobodyさん [2007/03/25(日) 05:11:07 ID:2BiXNRYt] pear.php.net/ や pear.php.net/ に アクセスしようとしてもできないのはなんで? 時間が悪いのかな?
826 名前:nobodyさん mailto:sage [2007/03/25(日) 10:38:49 ID:???] そうみたいよ。 今は普通にできるから。