【PHP】Phrameを使う【フレームワーク】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/08/23 14:15ID:???※関連リンク
Phrame本家
http://phrame.sourceforge.net/
PHPでMVC第1回:前編
https://www.stackasterisk.jp/tech/php/phpMvc01_01.jsp
開発談義/FrameWorkはどれがいい? - PukiWiki
http://w-project.org/pukiwiki/index.php?%B3%AB%C8%AF%C3%CC%B5%C1%2FFrameWork%A4%CF%A4%C9%A4%EC%A4%AC%A4%A4%A4%A4%A1%A9
0511nobodyさん
2005/05/11(水) 02:35:23ID:???0517nobodyさん
2005/05/17(火) 16:51:08ID:???ttp://cgi39.plala.or.jp/klove/w/k.cgi?page=Seasar2%A4%F2%BB%B2%B9%CD%A4%CBphp%A4%C7DI%A5%B3%A5%F3%A5%C6%A5%CA%A4%F2%BC%C2%C1%F5%A4%B9%A4%EB
うちの会社はPHP4環境ですががががが。
0518nobodyさん
2005/05/18(水) 09:47:20ID:6htWVmYW認証していない状態で、isSecure(return TRUE)が設定されているモジュールを呼び出すと
AUTH_MODULE、AUTH_ACTIONで指定されたモジュールにフォワードされますが、そのモジュールで
認証後に元のページに戻るにはどうしたらいいのでしょうか?
複数の場所から認証モジュールにジャンプするので、戻る場所が1箇所ではありません。
引数のmoduleとactionから判断するのがいいのかな?
0519nobodyさん
2005/05/18(水) 10:16:30ID:???$controller->forward('originalModule','originalAction');
かな? Mojavi使ったこと無いけど、まるごとにあった。
0520nobodyさん
2005/05/18(水) 10:36:55ID:???Mail: sage
----------------
>>518
次のようなフィルターを経由してRendererで設定し使っています。
class NextActionFilter extends Filter {
function execute(&$filterChain, &$controller, &$request, &$user) {
static $loaded;
if ($loaded === null) {
$loaded = true;
$nextModule = $request->getParameter('nextModule');
if ($nextModule === null) {
$nextModule = $controller->getRequestModule();
}
$nextAction = $request->getParameter('nextAction');
if ($nextAction === null) {
$nextAction = $controller->getRequestAction();
}
if ($nextModule === 'Default' && ($nextAction === 'Login' || $nextAction === 'Logout')) {
$nextModule = DEFAULT_MODULE;
$nextAction = DEFAULT_ACTION;
}
$request->setParameter('nextModule', $nextModule);
$request->setParameter('nextAction', $nextAction);
$filterChain->execute($controller, $request, $user);
} else {
$filterChain->execute($controller, $request, $user);
}
}
}
0521520
2005/05/18(水) 10:39:40ID:???ここではフォワードされた場合( $loaded !=== null )にはスルーにしています。
例えば、Smartyテンプレートでは次のようにして使います。
{if $nextModule != "" && $nextAction != ""}
<input type="hidden" name="nextModule" value="{$nextModule|escape:"html"}">
<input type="hidden" name="nextAction" value="{$nextAction|escape:"html"}">
{/if}
まるごとのoriginalModuleとoriginalActionにnextModuleとnextActionで対応します。
以上、参考になれば。
0522520
2005/05/18(水) 10:40:51ID:???ここではフォワードされた場合( $loaded !=== null )にはスルーにしています。
!== の間違いです。
0523518
2005/05/18(水) 12:32:16ID:6htWVmYW>>519
まるごとは私も持っています。
$controller->forward('originalModule','originalAction');
だと、index.php?module=originalModule&action=originalActionが
呼ばれるだけで元には戻れませんでした。
なので、まるごとで書かれているコメントは間違い(というより、
そこは自分で置き換えろということ)みたいです。
>>520
参考にさせて頂きました。
input type="hidden"の項目を置くのは認証モジュールのフォームで、
認証後にここにセットされているModuleとActionにフォワードする
ということでよろしいでしょうか?
やはり認証モジュール内で呼び出し元を保持して画面遷移しないと
無理っぽいですね。
0525518
2005/05/18(水) 12:43:02ID:6htWVmYW了解です!
素早い回答ありがとうございました。
本当に助かりました。
0526518
2005/05/18(水) 13:14:54ID:6htWVmYWただ、少し問題点もありました。
複数ある認証モジュールの呼び出し元の引数がそれぞれ異なる場合に
認証モジュール内でそれを全て引き継いでいかなかればいけないという
のが一つ。
もう一つは認証モジュールの呼び出し元がGETとPOSTでVIEWを切り替えて
いる場合で、<A>タグから呼び出し元がGETで呼ばれた後に認証モジュールに
ジャンプして認証画面でsubmitでログインして戻ってくるとPOSTで認証元
が呼ばれてしまうためVIEWの切替がうまくいきません。
なので、認証モジュールの呼び出し元はGETとPOSTで両方同じ処理にしておく
必要がありそうです。
0527nobodyさん
2005/05/18(水) 13:20:25ID:???0528nobodyさん
2005/05/20(金) 21:12:39ID:???$request->setMethod(REQ_GET);
$controller->forward( NEXT, NEXT);
0529nobodyさん
2005/05/20(金) 21:21:54ID:???ログイン画面に来た時にリファラを取得しておいて、
外部サイトからだったら、indexのページ、
内部からだったら、そのリファラに飛ばせば良いんじゃないの?
0530518
2005/05/20(金) 22:19:06ID:iZfZHOa+1.認証モジュール内でgetMethodしてGETかPOSTかを取得してセッションに保存。
2.getParametersで引数をすべてセッションに保存。
3.ユーザ認証
4.ユーザ認証OKならセッションに保存した引数を全てsetParameterする。
5.上記1で取得したのがGETならredirect、POSTならforwardする。
実際に作ってないのでホントに動くか分かりませんがw
0531nobodyさん
2005/05/21(土) 17:11:07ID:???小回り聞くし、使い勝っても良いし。
ちなみに俺のフレームワークは↓ここのサイトのを
http://www.stackasterisk.jp/tech/php/phpMvc01_01.jsp
参考に作りました。
0534nobodyさん
2005/05/21(土) 22:45:29ID:3M7QHA3T0535nobodyさん
2005/05/21(土) 23:11:49ID:???0536nobodyさん
2005/05/21(土) 23:17:39ID:???0537nobodyさん
2005/05/21(土) 23:25:05ID:???DB_DataObjectやPropelとかのo/rマッパがあるのに今更DAOの概念て…
お前もう少しがんばった方がいいよ
0538nobodyさん
2005/05/21(土) 23:28:15ID:???0539nobodyさん
2005/05/21(土) 23:32:31ID:???0541nobodyさん
2005/05/22(日) 01:01:02ID:???とりあえずメンテナの一番多いだろうmojaviの大半の機能を使うくらいのプログラムを組んで
流通してるフレームワークの強さを体感したらいいよ。
一部しか使わないから覚えるのマンドクセ、自作マンセーになる。
0543nobodyさん
2005/05/22(日) 01:32:24ID:???おいおいおい、mojavi信者が必死だなw
お前らみたいなフレームワークも自作できないような屑は
プログラマを語るなよ。な?
0544nobodyさん
2005/05/22(日) 01:39:03ID:???>お前らみたいなフレームワークも自作できないような屑は
という事はお前さんは自作してるんだろうから公開してみたら?
それが出来ない限り、お前さんもフレームワーク自作できるとの証明にはならないから、
お前さんの理論でお前さん自信が『屑』である。
0545nobodyさん
2005/05/22(日) 01:54:42ID:???フレームワーク自分で作る意味がわからんのだが。
教えてplz
つーかフレームワーク自作するやつは当然Pearなんて使わないんだよね?
0546nobodyさん
2005/05/22(日) 01:59:09ID:???既存のフレームワークで満足すればそれでよし。
満足しなくても、改造して満足できるならそれでよし。
それでも満足できないなら自作するのもよし。
ぶっちゃけ、フレームワーク使わなくたってどうでもいい。
使いたい奴が使いたいものを使う、または自作すればいい。
つうか、どうしてプログラマの大部分ってこういった話題好きなのかね・・・
使いたいものを使いたいように使えばいいじゃん。
もうちょっと、プログラミング自体を楽しもうぜ。
0547545
2005/05/22(日) 02:03:58ID:???趣味でやってるなら楽しもうぜ、とか言えるだろうが
仕事なんで効率と保守のコスト考えると、そんな理由では自作なんてありえない。
フレームワーク自体の有用性は揺ぎ無いわけだから
自作フレームワークのメンテに時間がさけて、なおかつ仕事も効率よくこなせるとなると
そこそこ大きいプロジェクトしか自作フレームワークなんて無理じゃないの?
0548545
2005/05/22(日) 02:04:20ID:???0549546
2005/05/22(日) 03:03:37ID:???だから、全員が仕事で使ってるわけでもないし、逆に趣味でもやってる訳でもない。
だから、自作だからとか既存とかどうでもいいでしょ?って事。
少なくても、色々な人間が居る中で、自作だからといって見下した態度とたり、
既存のつかってたら信者だの煽ったりと、どうでもいい。
もっと単純に情報交換がしたいよ・・・
例えば、○○のフレームワークはこういった部分が面倒だから、
俺は既存の△△の部分を□□のように書き換えて☆☆のようにして使ってる。
とかさ・・・
なんというか、こういった板見てると、必ず○○使ってる奴はダメとか
そんな意見ばかりじゃん。
そういう意味でも、『楽しもう』と言っただけ。
0550nobodyさん
2005/05/22(日) 03:12:11ID:???何が車輪の再発明だよ。ただの骨組みだろうが。馬鹿か?
もう一度言うが、フレームワークの自作すらできないような奴が
プログラマを名乗るなよ。な?
0551nobodyさん
2005/05/22(日) 03:16:58ID:???0552nobodyさん
2005/05/22(日) 08:49:41ID:LxqOomPh>ログイン画面に来た時にリファラを取得しておいて、
>外部サイトからだったら、indexのページ、
>内部からだったら、そのリファラに飛ばせば良いんじゃないの?
これって何でですか
0553545
2005/05/22(日) 13:25:31ID:???自作だから見下すわけではないが、既存のものより悪いものを作って自己満足しました、なら
チラシの裏にでも書いててくれよ。
それこそ自分が作ったって公開してるのなんてMapleほかいくつかくらいだろ?
評価しようがないよ。
>550
これほどまでウェブアプリが一般的になった現在でも
XSS脆弱性やSQLインジェクションのような単純ミスが残ってるのは
人の作業にミスが付き物だからだろ?
俺はメンテナが多いほうがそういうミスも減るだろうし
オープンソースならミス見つかるのも早いだろう、っていう考え方。
0559nobodyさん
2005/05/22(日) 21:51:01ID:???程度低いな。
0560nobodyさん
2005/05/22(日) 22:03:30ID:???やる価値が無いと判ってて放ってる奴と、作ってから既成でいいことに気づいた奴。
俺は後者。
煽りならもう少し程度を上げてくれよ?
0561560
2005/05/22(日) 22:06:51ID:???今のフレームワークが完璧などと言うつもりは毛頭ない。
念のため。
俺は面倒くさがりだから手を加えるにしても1から作らずにメンテナに加わるだろうけど。
0563nobodyさん
2005/05/22(日) 23:19:42ID:???基本さえわかれば、フレームワークそのものには大して興味ない。
ってのは、いけませんか?
0564nobodyさん
2005/05/23(月) 01:13:53ID:???簡単なアクセスカウンターから巨大プロジェクトまで
すべて同じフレームワークを使うんだな。
馬鹿の一つ覚えのように。程度低いねぇ。死ねば?
0565nobodyさん
2005/05/23(月) 01:21:40ID:???よく落ち着け。
>簡単なアクセスカウンターから巨大プロジェクトまで
>すべて同じフレームワークを使うんだな。
>>562のどこでそんなこと言っている?
冷静になって考えろ。そうすれば、取り乱してアホなレスしてる
自分が死ぬべきだと気付くはずだ。
0567nobodyさん
2005/05/23(月) 06:37:03ID:???0568nobodyさん
2005/05/23(月) 06:47:31ID:???0569nobodyさん
2005/05/23(月) 07:46:20ID:???>フレームワークの自作もできないような低レベルな人間である
興奮しすぎだ。だれがどこで自作できないなんて言ったの?
それにお前の論法だと、
>簡単なアクセスカウンターから巨大プロジェクトまで
>すべて同じフレームワークを使うんだな。
アクセスカウンターにまでフレームワークの自作するの?ってことになるんだが…
>「屑」「死ねば?」「死ぬべきだと思うよ」
なにがおまえの心を蝕んでいるんだ?
http://www.nisseikyo.or.jp/
とりあえずここで治療先探した方がいいよ。
なんか知り合いの職場で、突然発狂しだして、それから顔出さなくなった奴とか
いたらしいし。
0570nobodyさん
2005/05/23(月) 11:54:37ID:???フレームワークを自作すると勉強にはなる。
で、俺がフレームワークを使う理由はテコの原理が働くから。
フレームワークの習得コストを投資するだけでその何倍ものリターン、即ちアイデアや技法を核に、コーディングやテストに時間や人をかけた良質のコードが利用できる。
なので俺がフレームワークを選定する判断基準は
1. 核となるアイデア、技法の価値
2. それがどの程度の品質でテスト、実装されているかの質
3. 情報
自作&クローズドだと 2 と 3 が劣るので苦しくなる。
このスレが賑わったのも Mojavi のような強力なオープンソースフレームワークが評価されたからじゃないの。少なくともフレームワークの DIY で賑わってるワケではない。
自作はがんがんやれ。でも押しつけんな。
オープンソースフレームワークはがんがん使え。でも うひょー、俺進んでるー!とか使ってないヤツは吊れというのも間違い。
フレームワークで非生産的なフレームすんなと。
0572nobodyさん
2005/05/23(月) 16:34:31ID:???0576nobodyさん
2005/05/23(月) 18:03:30ID:???ところで、いまだにM2-PHP4な俺様なんだが
M3-PHP5に移行するに当たっての注意点みたいのあるかい?
なんかiniファイルとかあって軽くビビってるんだけど。
DB接続周りはProple&Creoleがいいらしいね。
Hibernate誰かポートしてねえかなと思ってpHibernateでググったら出てきたよw
0577nobodyさん
2005/05/23(月) 18:52:24ID:???>M3-PHP5に移行するに当たっての注意点みたいのあるかい?
言い出したらキリが無いな…
Propel&Creoleに限らず複数&多種のDB接続ができるんで、DB周り自体かなり便利にはなってるけどね。
俺の場合比較的速度を求めない部分ではPropel+Creoleで、速度重視の部分ではADODBって感じでやってるけど。
0578nobodyさん
2005/05/23(月) 20:43:40ID:???使えて当り前のレベルの話だろが、突っ込んだ話しても
先が見えてる内容だから、掘り下げて話す方が恥ずかしくなるよ(w
0580nobodyさん
2005/05/23(月) 22:12:54ID:???PHPはCGIとしてもインストールできるのですよ。
ただ、あまり一般的じゃないけど。
0582nobodyさん
2005/05/23(月) 23:02:33ID:???誰もCGIについて語ってないし。苦し紛れに無知な>>559が
発したレスなんだろうけどね。
0583nobodyさん
2005/05/23(月) 23:32:25ID:???0586nobodyさん
2005/05/24(火) 12:51:57ID:???調べろ。だからお前は屑なんだ。
そもそも最初から知ったかぶるな。
0587nobodyさん
2005/05/24(火) 15:53:52ID:acBCrGCdうぜ
0588nobodyさん
2005/05/24(火) 21:31:13ID:45wBzFIo0589nobodyさん
2005/05/24(火) 21:46:48ID:???でも既存フレームワークは
「多機能すぎる」んで、速度がネックになるかな。
オリジナルフレームワークは機能のショボさが
逆に強みになると思う
0590nobodyさん
2005/05/24(火) 22:00:03ID:???既存フレームワークで本必要?
ソースコードの量も大した事無いし、別に本が必要とは思わないんだけど?
それと、たしかもうちょっとでMojavi3を扱った日本で最初の書籍が出るはず。
0591nobodyさん
2005/05/24(火) 22:29:19ID:???楽したいからフレームワーク使うんだからさ
モハビ本には期待
0592nobodyさん
2005/05/24(火) 23:00:00ID:???ソースがきれいだからすぐ読める希ガス
0593nobodyさん
2005/05/24(火) 23:11:35ID:???いくらでも出てくるし。
0594nobodyさん
2005/05/24(火) 23:39:46ID:???そんなこと言うんだったら
最初からPHPはCGIではないなんて言うなよ。
おまえが問題にしたのは文章の正確さではなく
その「表現」なんだから、マニュアルを調べたって出てきそうもないしな。
正確な文章を書けないやつがしゃしゃり出てくるんじゃない。
0595586
2005/05/25(水) 00:39:50ID:???俺は多分お前が思ってる奴とは別人だぞ。
日が浅いだろうに、奈々氏の区別が付いている振りをするものじゃない。
一般的に教えてクソと呼ばれるものは屑だし
585もその類の遠吠えにしか見えない、ということを言ったまでだ。
0596586
2005/05/25(水) 00:48:05ID:???CLI版のPHPをインストールすることで、CGI機能を実装したサーバーの
cgiスクリプトとしてPHP言語が動作可能となる。
つまり、581が言ってるのはCGiとしてインストール、というのがそもそもおかしい話だということだろ多分。
調べたら出てくるんだから調べてから話せ、ってことだ糞餓鬼。
0599nobodyさん
2005/05/25(水) 01:43:09ID:???0600598
2005/05/25(水) 01:43:14ID:???前に何か足らなくなってて難しい/出来ないと思ったんだが...記憶違いか
0601586
2005/05/25(水) 01:43:14ID:???ttp://ns1.php.gr.jp/pipermail/php-users/2003-January/012701.html
これか。おみそれした。
0603598
2005/05/25(水) 01:55:54ID:???そのHTTPヘッダのくだりなんだけど、出力しないだけで
CGIのインターフェース的には繋がってたと思うんだよね。
ああ、スレに関係ない話ですまん。
0605nobodyさん
2005/05/25(水) 05:00:03ID:???http://www.php.net/manual/ja/security.cgi-bin.php
じゃぁこの翻訳は間違っているのだね。
0606596
2005/05/25(水) 08:36:43ID:???わざわざ「バイナリ」と付けている意味もわからんのか。そもそも異なる訳だ。
つーか俺が書いたのは調べてる例なのだし、明らかに間違ってるなら自信を持ってその箇所を指摘しろ。
そういう中途半端な話がしたいのか?
580はともかく、578は明らかに事実誤認だし581は調べもせずに書き込む香具師だ。
勝手に誰かと勘違いしないでもらえる?
>598
ヘッダ自分で書かなきゃいけないならスクリプト書き直し…
秒はこれコンマ以下切捨てなのね。
0607596
2005/05/25(水) 08:41:13ID:???>580はともかく、578は明らかに事実誤認だし581は調べもせずに書き込む香具師だ。
580はともかく、578は明らかに事実誤認だし585は調べもせずに書き込む香具師だ。
どんどんスレの主旨からずれてくな…これ以上PHP-CGIの質問するんだったらPHP初心者板でお願い。
一両日中には相手してあげるから。
0609nobodyさん
2005/05/25(水) 09:20:22ID:???これのことだと思う
ttp://www.amazon.co.jp/exec/obidos/ASIN/4798108766/250-2538785-1872250
0610nobodyさん
2005/05/25(水) 09:47:46ID:???○PHPで広がるWeb開発
○レンタルサーバーでPHPを使おう!
○WindowsでPHPを使おう!
○使える! アプリケーション〜一般編〜(XOOPS / ppBlog)
○使える! アプリケーション〜開発編〜(phpMyAdmin / mantis)
○PHP超入門
○TruStudioで快適な開発環境を作ろう!
第2章 PHPのプログラム構築手法
○Smarty入門
○Smartyを使いこなす
○PHP5+MojaviによるMVC入門
○PukiWikiでSEOにチャレンジ
第3章 ライブラリを活用する
○JpGraphでグラフもすいすい
○PEAR:Mime_Mailを使用したHTMLメール送信
○PHPのセキュリティ対策
○パフォーマンス向上大作戦!
○WYSIWYGな編集をしよう!
第4章 最新情報
○PHP5の新機能
○PHP4とPHP5の共存
↑これみるかぎり期待できなさげな気がする
■ このスレッドは過去ログ倉庫に格納されています