トップページ⇒php
983コメント361KB

Zend Framework Part5

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2011/02/11(金) 04:04:29ID:???
公式
http://framework.zend.com/

マニュアル
http://framework.zend.com/manual/ja/

翻訳状況
http://mikaelkael.dyndns.org/checker/language/details/lang/ja
http://framework.zend.com/wiki/display/ZFDEV/Japanese+(Nihongo)

バグ報告
http://framework.zend.com/issues/secure/Dashboard.jspa

API
http://framework.zend.com/apidoc/core/

前のスレッド  Zend Framework Part4
http://hibari.2ch.net/test/read.cgi/php/1265721684/
0142nobodyさん2011/04/26(火) 00:14:56.20ID:???
普通に皆作れる
ただし、作れる人は他の事やってる
0143nobodyさん2011/05/01(日) 18:55:39.12ID:???
Zend_Form_Element_InputとかZend_Form_Element_Hiddenとかがxhtmlじゃなくてhtmlの省略形の閉じタグがつかないんだけど、
これってどうやったらxhtmlになるの?

0144nobodyさん2011/05/03(火) 13:13:25.50ID:???
>>143
$view->doctype(ほにゃらら);
0145nobodyさん2011/05/05(木) 23:10:30.86ID:???
>>144
トンスル
ちがった
サンクス
0146nobodyさん2011/05/09(月) 18:07:17.19ID:9NI2nLcl
Zend_service_twitterについて質問です
自分のアプリケーションからつぶやきを投稿するフローで、
TwitterAPI認証画面への遷移・認証成功後、アクセストークンを取得して戻って来たら、
以下のように クラスを実行する必要があると思うんですが、

$twitter = new Zend_Service_Twitter(array(
 'username' => 'hogeUser',
 'accessToken' => unserialize($_SESSION['TWITTER_ACCESS_TOKEN'])
 )
);
$twitter->status->update("アプリからつぶやきました");

このパラメータの 'username'って誰のユーザーネームを入れたら良いんでしょうか?

考えられる候補は以下の3つあって、
1)アプリケーションそのもののユーザー
2)そのアプリケーションを利用してるユーザー(twitterAPIにID/passwordを入力した、そのIDそのもの)
3)その他、だれでもいい、実在しないユーザでもいい
全てを試してみたものの全部エラーなく実行できてしまいました。
実際の投稿者(つぶやいたユーザ)は全部、(2)のapiログインしたユーザです。
第二引数のTWITTER_ACCESS_TOKEN自体が、このユーザの権限で作ったものだから当たり前かも知れないですが、
ではusernameって何の為にあるパラメータなんでしょうか?

マニュアル読んだものの英語なのでよくわからなくて、色んなブログ記事を読んでも
このユーザーがなになのか、ハッキリ書いていません。
すみません、アドバイスお願いします
0147nobodyさん2011/05/09(月) 20:12:17.36ID:???
お前は何を言ってるんだ
0148nobodyさん2011/05/09(月) 21:28:56.06ID:???
>>146
本当にそこまで試して全部結果が同じなら、
なんかの互換確保用か、名残じゃねえの?
場所ははっきりしてんだし、ソース追っかければいいじゃない。
01491462011/05/09(月) 23:03:42.09ID:???
>>148
どうもです。言われた通りソースを見てみました。
すると、HttpClientの生成やその先の処理にusernameは全く使ってませんでした。
setUsername();とgetUsername();の2つのメソッドがあるだけで、
このHttpClientのユーザの名前を入れる/引き出す処理に使うだけみたいでした。
なので、usernameに指定するのは(2)のアプリケーションユーザ名のようです。
パラメータの配列からusernameキーそのものを消しても動いたくらいで…

とりあえず解決とします。ありがとうございました。
0150nobodyさん2011/05/10(火) 00:43:33.42ID:???
>>149
Basic認証時代の名残かもね。
当時コンストラクタに$username, $passwordが引数で渡されてたから
0151nobodyさん2011/05/10(火) 11:31:18.60ID:???
>>149
OSSだとよくあるよね。このフラグ使ってねーのかよ!って。
ドキュメントに記載は無いけど、ソースのコメントにはあったりするし。
ZFぐらい大きくても、個々のライブラリのコミッタって少ないだろうし、
まあソース見たほうが早いってこった。
0152nobodyさん2011/05/10(火) 17:08:28.72ID:???
上でtomatoCMSの話題がありましたので質問させてもらいますが、
tomatoCMSはrequire_once等を使用せずに別ファイルのクラス等を呼び出していますが、これは何故なのでしょうか?
どういう仕組みでこのように出来るのでしょうか?
0153nobodyさん2011/05/10(火) 19:08:58.78ID:???
tomatoは知らんが、まさかAutoloader使ってるだけじゃないよな?
0154nobodyさん2011/05/11(水) 13:27:38.91ID:???
ossは開発者の興味が薄いと不具合あっても放置されまくりだからな。正直品質は低い。
0155nobodyさん2011/05/11(水) 21:41:01.28ID:28BHzc0+
>>154
君は PHP 使っているの?だったらすぐやめて .net や delphi に乗り換えたほうがいいよ :-p
0156nobodyさん2011/05/11(水) 23:26:29.06ID:???
Delphiはやめとけ
あれは情報が少ない
やるだけ損だ
0157nobodyさん2011/05/11(水) 23:51:13.35ID:???
>>156
おーい
0158nobodyさん2011/05/14(土) 03:05:05.54ID:???
>>154
商用製品でも同じこと
売上が薄いもんは品質低い
0159sage2011/05/14(土) 06:53:07.55ID:???
>>154 はいまだに1.5以前のドキュメントを参照して
「高品質」というセールストークに反応したのだろうか。:-p
http://framework.zend.com/manual/1.5/ja/introduction.overview.html

最新はコッチ
http://framework.zend.com/manual/ja/introduction.overview.html
0160nobodyさん2011/05/14(土) 09:46:32.32ID:???
なあ、>>154 は皮肉じゃないか。
0161nobodyさん2011/05/14(土) 12:15:58.59ID:???
zf2いいね
0162 忍法帖【Lv=10,xxxPT】 2011/05/15(日) 15:21:09.77ID:???
2.0いつくんの?
0163nobodyさん2011/05/15(日) 15:26:59.62ID:???
来年までこないよ
0164nobodyさん2011/05/26(木) 00:37:23.77ID:HR+pqHzo
ZendFrameworkを使ってSNSみたいなサービスを使ってみようと思ってるんですが、
管理画面状態の時も他ユーザが閲覧してるプロフィール画面の時もURLを
http://yamada.hogehoge.jp/ という形で同じにしたいです。
この条件を満たすとき、ルーティングから画面切り分けまでのロジックはどうすべきでしょうか?

前提:管理画面モード(ログイン時)では、専用のセッションにユニークのユーザ名(yamada)を入れてまわる
1:とりあえずルーティングはdefaultモジュールの閲覧モード(profileコントローラ)を設定
2:profileコントローラのコンストラクタでzend_authの検証結果を見る(管理画面モードであると確認)
3:管理画面用セッションからユーザ名とurlのパラメータ「yamada」を比較
4:同じだったら、管理画面用mypageモジュールとアクションに転送

こんな感じかなと思ったんですが、なんか変と言うか。
4の転送ってのも、毎回毎回/module/default/***Controller.phpから/module/mypage/***Controller.phpに
切り替えるのかという気がするし、もっと良いやり方があるのではって思ってしまいます。

一番の解決策は管理画面モードの時は http://mypage.hogehoge.jp
閲覧用のページの時は http://yamada.hogehoge.jp
とハッキリわけることだとわかってるんですが、そうしたくないなと思いまして…

別の方法として、閲覧モードの時も管理画面モードの時も同じモジュール同じコントローラを利用し、
認証チェックの結果次第で管理画面モードの時のみ更新系機能を組み込んで
viewを切り替えることを考えもしたんですがそれもおかしいし…
(閲覧モード時に使わない機能とアクションが大量にあるというあたりが)

どうするのが良いでしょうか。変な質問ですみません
0165nobodyさん2011/05/26(木) 00:55:48.05ID:???
>>164
なんでサブドメイン?
01661642011/05/26(木) 01:36:57.62ID:???
>>165
単純に見映えがいい?カッコイイ?からというしょうもない理由なんですが
こういうルーティングの機能があるから使ってみるか、程度の…
サブドメインを利用してること自体が問題になるんでしょうか? そんなことないですよね?
0167nobodyさん2011/05/26(木) 04:04:39.00ID:???
>>164
Cookie(というかセッションのキー)どうすんの?ドメインにワイルドカードで許可できたっけ。
0168nobodyさん2011/05/26(木) 05:24:34.82ID:???
>>164
>>166
ルーターを作って username.xxxxx の場合は、
mypageモジュール内のコントローラを呼ぶ。
mypageモジュール内でセッション情報の確認を行い、
不正な場合はdefaultにリダイレクトにすればいい。
01691642011/05/26(木) 14:50:51.50ID:HR+pqHzo
>>167
すみません、僕の知識不足だと思うんですがご質問が理解できません
上で書いたことって、セッションの管理に問題が出るような処理をしているんでしょうか
…と気になって調べたらドメイン移動でセッションが切れる問題をおっしゃってるんですよね?
それがこのルーティングのサブドメイン変更にも影響あるのでは、と。(違ってたらすみません)

そういう問題を解決した上でZendFWのルーティングって実装されているのでは…
セッション管理をZend_Sessionで管理している限り問題ないのではと信じたいですが
不安になってきました、どうなんだろう
0170nobodyさん2011/05/26(木) 14:55:22.10ID:???
ヒント
明らかに自分より下の知識しか持たない回答者をスルーすべし
01711642011/05/26(木) 15:32:25.16ID:???
>>168
ありがとうございます
リダイレクトとは、どういう方法でのリダイレクトを指しているんでしょうか。
mypageモジュールのコントローラ中で、$this->_redirect('/default/user/profile/')ってやるということでしょうか?
自分自身>>164のレスの中で「リダイレクト」とか書いてて、この方法想定してましたが、
これだとよく考えたらURLがhttp://yamada.hoge.jpにならないですね。。
(>>167さんの言ってた問題はこれなんでしょうか?)
別の方法をおっしゃってるんでしょうか。
すみませんが、どんなリダイレクトを想定されてるのかもう少し教えてください


自分が今思いついたやり方は、個別にモジュール/コントローラ/アクションを指定出来なきゃダメという前提で
frontContorllerに仕掛けるプラグインみたいにZend_Controller_Plugin_Abstructを継承するクラスを作って、
その中で以下の処理をさせ、mypageモジュール中のコントローラの冒頭でrequireさせる
1:セッションチェック&リダイレクト
2:リダイレクトの方法は
 $req->setModuleName('default');
 $req->setControllerName('user');
 $req->setActionName('profile');

…という方法なんですがおかしいでしょうか
これならURL的にも変更無しで画面切り替えできるような気がするんですが、、

でも、個別のコントローラ内でZend_Controller_Plugin_Abstructを継承させたファイルをrequireするなんて
聞いたこともないと言うか。。
はっきりプラグイン化してフロントコントローラに仕掛けるべきなんだろうか
こんなに難しくなると思わなかったな…
長くてすみません

>>170 自分もすごく低レベルなので。。
01721672011/05/26(木) 16:10:30.53ID:???
Cookie仕様確認したけどSet-Cookieのdomainを.hoge.jpにしておけばサブドメイン全部に送信できるのか
中途半端な疑問失礼
ttp://www.studyinghttp.net/cookies
01731682011/05/26(木) 19:37:18.11ID:???
>>171
内部的に処理をリダイレクトするのでは無く、
管理画面にアクセス出来ないユーザが来た場合は、
$this->_redirect('http://default.xxxxx/'); とすればいいって事。
01741642011/05/26(木) 20:16:09.03ID:???
>>173
それって、http://yamada.hoge.jpでの認証チェックでエラーになると
http://default.hoge.jpに転送するってことですよね?
それだと一般の閲覧/当人の管理画面の両方でURLを http://yamada.hoge.jpにするという
前提が満たせないと思うんですが…タイプミスですか?

$this->_redirect('http://yamada.xxxxx/');のタイプミスだとしても、
それだとリダイレクトループにならないですか?
勘違いしてたらすみません
01751682011/05/26(木) 22:16:25.58ID:???
>>174
ごめん。>>164の要件をよく読んで無かった。
「同じURLで閲覧」を前提とするのであれば>>164の 4. の方法は別に変では無いよ。
0176nobodyさん2011/05/26(木) 22:45:24.84ID:???
>>164
ZF徹底マスターに載ってたサンプルだと
フロントコントローラのpreDispatchに登録したプラグインの中で
飛び先のモジュール・コントローラ・アクションの組み合わせから
アクセスに必要な権限をテーブルから引いて
セッションに保存してあるユーザーの権限と照合する。
権限不足なら、$req->setControllerName('auth'); 
$req->setControllerName('login'); という感じで
ログインの機能を持ったコントローラ・アクションに飛ばす。
権限があれば何もせずにスルー、ってことをやってる。

ログイン認証をするアクションは、
認証が取れたら↑のプラグインで使う情報をセッションに登録して
適当なページにリダイレクトする。
01771642011/05/26(木) 22:48:13.48ID:???
>>175
どうもです

>>171で書いた方法でプラグイン化して試してみます
質問したおかげで自分のやりたいことを整理できたり、考えの甘い点が見つかったので
すごく良かったです。皆さんありがとう
01781642011/05/26(木) 22:51:16.27ID:???
>>176
あ、それちょうど見てたところでした
やっぱりプラグイン化してフロントコントローラで処理するのが王道ぽいですね!
この本良いですよね
setControllerNameとかの利用法をおさらいできて良かったです
どうもありがとう
0179nobodyさん2011/05/27(金) 10:24:02.48ID:???
fileconicってZFなんだな。
表に出ない事例は山ほどありそう。
0180nobodyさん2011/05/27(金) 10:24:22.42ID:???
filesonicだった
0181 忍法帖【Lv=19,xxxPT】 2011/05/27(金) 13:48:15.12ID:???
Zend Framework in Action に書いてなかったっけ?
0182nobodyさん2011/05/27(金) 15:44:49.37ID:???
「タイプミスですか?」
これすごいな
0183nobodyさん2011/06/02(木) 20:52:01.30ID:???
Zend OpenIDってAX対応してないの?
0184nobodyさん2011/06/12(日) 16:56:38.96ID:???
Zend Frameworkを基礎から覚えようと思ってネットでチュートリアルとか
探したけど、わかりやすいのはありませんでした。

日本語だと、codezineとかIBMとかに少しあるくらい。
でも内容が古かったりするのが多くていまいち。

日本語の情報はすくないし古いのか、と思い、Zend本家の
Tutorialを見るも、コード解説が不十分でよくわかりませんでした。

C#, SQL, ASP.netなどの経験はあったので、ZendFrameworkもすぐ
覚えられるだろうと思っていたら、チュートリアルでつまづきましたw

Zend Frameworkのよく使う機能を中心に、丁寧に解説して
いるサイトとかありますか?
0185nobodyさん2011/06/12(日) 17:11:31.18ID:???
公式マニュアル
0186nobodyさん2011/06/12(日) 17:46:45.24ID:???
>>185
Zend本家のTutorialとかいたのが、公式マニュアル、チュートリアルのことです。

あれが一番ましということですか?
QuickStartというチュートリアルなのに、解説のないコードが
ポンポン出てきます。
0187nobodyさん2011/06/12(日) 17:48:28.93ID:???
QuickStartなんだから解説いらんだろw
0188nobodyさん2011/06/12(日) 18:17:10.24ID:???
今までどんな書籍で学習して来たのか興味深いな。

10日で覚えるゼンドフレームワークなんてのはまだ無いな。
10日で覚えるphpでも学習した気には成れると思うよ。
就職活動の為の即席学習目的かな? 実務経験無さそうだw

cでもsqlでもいいけど、ちゃんと実務的なアプリ作った実績とかのほうが評価されると思うよ。
コンサル会社狙いなら会計の勉強してbsやplを印刷したりpdfにかき出せるアプリを作ってみるとか。
軽く一通り遣る程度で住ませたいなら、情報処理とかの資格を取ったほうが評価される。本見て作れるとか全く評価外だし。
一番いいのは受験勉強やり直して東大に入り直してマーチ以下の足切りを回避することだと思うけどw
0189nobodyさん2011/06/12(日) 18:57:46.25ID:???
Zend Frameworkが人気ないのは、CakeやSymfonyに比べて
情報が少ないからかな?

>>187
いやいやいやw
これではぜんぜんクイックにスタートできないんですよ!

Zend本家のでつまづいたので、今はこれ読んでます。ちょっと古いけど。
http://www.ibm.com/developerworks/opensource/library/os-php-zend1/index.html

>>188
学生認定されてしまいましたが、いちおうSEですw
ただ、仕事はシステム管理者やってたので、業務でのコーディング経験は
ほとんどなく、プログラミングは初級レベルです。
自分専用の小さなソフトをC#.netで作るくらい。
コアにZendを使っているCMSをカスタマイズしたくて、Zendを学習し始めたという感じです。
0190nobodyさん2011/06/12(日) 18:59:52.82ID:???
>>189
クイックスタートのどこら辺が分からんの?
コードの羅列だけじゃなくて必ず文章がついてると思うけど
0191nobodyさん2011/06/13(月) 09:40:57.47ID:???
採用事例のソース読めよ。
0192nobodyさん2011/06/13(月) 10:05:56.83ID:???
下記の URL の「各種のリソース」>「チュートリアルや構築例など」見るといいかもよ

http://www.zend.co.jp/tech/index.php?%A4%BD%A4%CE%C2%BE%2FZend%20Framework%2FFAQ
0193nobodyさん2011/06/13(月) 20:20:19.80ID:???
初心者の書き込みに優しく回答・解説できない人は、
とても実務レベルのチカラがあるとは思えないよん。
0194nobodyさん2011/06/13(月) 21:18:44.04ID:???
公式リファレンスで十分。
あれ読んで解らない人は、金払ってスクール行くなり本を買うなりするレベルの人達。

実務レベルの解説を求めるなら、尚更金払えとw
0195nobodyさん2011/06/14(火) 17:37:09.39ID:???
スキル低いのにcmsの選択自体が間違ってる漢字だなw

http://hibari.2ch.net/test/read.cgi/php/1258653329/
【CMS】AD-EDIT質問スレ【国産】
http://hibari.2ch.net/test/read.cgi/php/1268062848/
フリーCMSツールについて語るスレ3
http://hibari.2ch.net/test/read.cgi/php/1280524860/
PHP+MySQlでCMSっぽいものを
http://hibari.2ch.net/test/read.cgi/php/1173785085/
CMSと他のシステムの融合のテクニック
http://hibari.2ch.net/test/read.cgi/php/1157172951/
超高機能CMS TYPO3
http://hibari.2ch.net/test/read.cgi/php/1144670311/
【簡単】Jaws【CMS】



講師と職人は同一でもないし。
親方のノウハウ欲しいならぶん殴られて教育されるのも覚悟しないと。教師に社会経験が足りないのは散々見てると思うけどねw
0196nobodyさん2011/06/14(火) 20:21:48.59ID:???
ZFがCMS?
0197nobodyさん2011/06/14(火) 22:35:10.15ID:???
ZFがどうのと言う前にPHPの経験がない悪寒
適当なPHPの解説本とZF徹底マスターでも買ってくれば?
0198nobodyさん2011/06/15(水) 01:39:12.19ID:x3E18VF9
公式リファレンスはたまに思いっきり出鱈目が書いてあるのと
和訳されてないのがあるのをどうにかしてくれれば完璧なんだが
0199nobodyさん2011/06/15(水) 06:12:14.99ID:???
ZFは初心者用のチュートリアルが充実していないと俺も思う。

初心者を叩くのではなく、初心者がZFをスムーズに使えるように
先駆者が導いてあげるのが、ZF利用者の拡大に繋がるのだが・・・

俺がもっとスキルがあれば、チュートリアルを書いて提供したい
ところだが、そこまでのスキルはないです。
0200nobodyさん2011/06/15(水) 06:38:43.09ID:???
>>198
どこ?
0201nobodyさん2011/06/15(水) 10:08:01.07ID:???
レスくれたみなさまありがとう(まとめて)

>>191
これからZFはじめようって人に、採用事例のソース読めってのは無理があるんでは。
もっと小さなところからはじめないと効率が悪いと思う。

>>192
ペンギンのサイトとかわかりやすい記事があった。ありがとう。

>>190
まず、Zend Framework Quick Startの「Create A Layout」のあたりではまりました。
http://framework.zend.com/manual/en/learning.quickstart.html
ここはリファレンスで調べながら読んだら、やっと理解できました。
けど、リファレンス調べないと理解できないチュートリアルってどうなのかな、とも思ったり。

その次の、「Create a Model and Database Table」で完全に挫折。
http://framework.zend.com/manual/en/learning.quickstart.create-model.html

ただ、もうこの時点でチュートリアルとしては不適切なドキュメントだとはっきりわかったので
他のドキュメントでZFを学ぶことにしました。
このページのコメント見ても、「このコードでは動かない」と書いてありますw
わかりにくいうえに、バグもあるチュートリアル。
0202nobodyさん2011/06/15(水) 11:30:08.86ID:???
本を買ったら?
俺は最初本で学習したおかげで、公式のチュートリアルも理解できた。
02031842011/06/15(水) 17:02:31.99ID:???
>>197 >>202
はい。
ネットのドキュメントだとなさそうなので、あきらめて本を探しました。
洋書でZFの本がたくさんあったのでAmazon.comで2冊ほどぽちってみました。

ZFと違って、CodeIgniterのサイトは、ヘルプやチュートリアルがすごく分かりやすかった。
しかもVideo Tutorialまであったよ。
http://codeigniter.com/user_guide/toc.html

トップページにも、
CodeIgniter is right for you if you need clear, thorough documentation.
と書かれていたけど、ほんとにドキュメントしっかりしてるなー、と思った。


>>199
同じ感想の人いてよかった。
いちばんZFのドキュメントでいらついたのが、コードの部分をコピペしようとしたら
行番号まで張り付けられてしまうようになっていること。
0204nobodyさん2011/06/15(水) 17:24:31.33ID:???
洋書?って事は英語がわかるんだろう?
それなら本を買わなくても海外のブログ等から情報を得られそうだけど?
0205nobodyさん2011/06/15(水) 18:05:50.97ID:???
>>204
英語圏のサイトも探しましたけど、良書に匹敵するような
コンテンツはなかったです。
ブログはピンポイント解説どまりが多かったです。

よく使う機能を、体系的に、わかりやすく解説していて、
なおかつ内容が新しい、というのは見つからなかった。

Frameworkは、CodeIgniterだのCakePHPだの好みでいろいろ宗派が
わかれるから、ネットのコンテンツも少なくなるんではないかな、と思います。

Rob Allenのサイトにあるチュートリアルは英語圏では評価が高いみたい。
これは読みました。
http://akrabat.com/zend-framework-tutorial/

彼は、Zend Framework in Actionという本も書いているんだけど、
amazonの書評はあまりよくなかった。バグがおおいとか。
0206nobodyさん2011/06/15(水) 20:29:15.04ID:???
>>201
「Create A Layout」の具体的にどこが分からんの?
俺は解説を流し読みつつ載ってるコードを書いたら最後までスムーズに実行できたから
いまいち君の言ってることがピンと来ないんだけど
0207nobodyさん2011/06/15(水) 21:03:11.09ID:???
>>198
他人を当てにしないで自分がまずやらないと、ね
昔も IRC で言ったけれど、利用企業からすこしづつ人を出して分担して作業して欲しいな。
0208nobodyさん2011/06/15(水) 21:22:47.51ID:???
>>203
公式マニュアルを改善するリーダーとして活躍してみませんか?(英語必須)
0209nobodyさん2011/06/15(水) 22:11:01.59ID:???
本に載ってる情報は最新バージョンとの差異が多々あるので、あまりオススメ出来ない。
(特にZF1.9以前のバージョンの解説書)

簡潔なリファレンスとソースコードがあるのだから、
それを読めるようになるのが一番手っ取り早い。
英語が理解できるなら尚更コードコメント読む方が早い。

IDE使えばクラスツリーやコード補完までしてくれるゆとり仕様。
(CIやCakeはIDEとの親和性悪すぎる)
0210nobodyさん2011/06/15(水) 22:49:55.58ID:???
MappaerとかAuthとかを詳しく書いてほしいですな〜
0211nobodyさん2011/06/16(木) 14:19:10.00ID:???
CodeIgniter絶賛なら、CodeIgniterの子供になればいいのに。
zendには要らない娘。
0212nobodyさん2011/06/16(木) 19:42:52.98ID:5IgfNiWj
Zend_Authについてお聞きしたいんですが、以下について解る方いらっしゃいましたらぜひ力を貸してください。

defaultとadminの2つのモジュールがあると仮定して、adminモジュールで通した認証を、defaultモジュールからも参照した いのですが、どのようにすればいいかわかりません。

1. AdminモジュールのIndexController
$db = Zend_Db::factory('Pdo_Mysql', $params);
$authAdapter = new Zend_Auth_Adapter_DbTable($db, 'tablename', 'id', 'pass', 'md5(?)');
$authAdapter->setIdentity('hoge')
      ->setCredential('hage');
$auth = Zend_Auth::getInstance();
$result = $auth->authenticate($authAdapter); // ここで認証を成功させる


↓続きは「本文が長い」と出て書き込めないので分割して書きます。
0213nobodyさん2011/06/16(木) 19:44:03.04ID:5IgfNiWj
続きです。

2. AdminモジュールのHogeControllerへアクセス
$auth = Zend_Auth::getInstance();
if ($auth->hasIdentity()) {
  die('OK'); // OKが出力される
} else {
  die('NG');
}

3. defaultモジュールのIndexControllerへアクセス
$auth = Zend_Auth::getInstance();
if ($auth->hasIdentity()) {
  die('OK');
} else {
  die('NG'); // NGが出力される。ここでOKを出したい
}

Admin - IndexControllerで認証した結果を default - IndexController で活用したいです。
上記のスクリプトで言えば、最後のdefaultモジュールのIndexControllerで"OK"を出力したいのですが、どうすればいいんでしょうか?
0214nobodyさん2011/06/16(木) 19:55:04.04ID:???
>>213
モジュール間でセッションは共有出来てる?

デフォルトでは認証結果をセッションで引き回す仕組みになっているので、
セッションが違うと認証を維持出来ないよ。

参考:Zend_Auth IDの永続性
http://framework.zend.com/manual/ja/zend.auth.introduction.html
0215nobodyさん2011/06/16(木) 20:51:38.65ID:???
>>214

ご指摘いただいた通り、モジュール間でのセッションの共有ができておりませんでした。
フロントコントローラの先頭に以下の1行を追記したところ、admin・default両モジュール間でセッションが共有できるようになりました。
> session_set_cookie_params (0 , '/', 'domain.tld');

ちなみにapplication.iniに
>phpSettings.session.cookie_domain = "domain.tld"
と書いてやってみましたが、こっちはうまくいきませんでした。
application.iniの方でも動作するまでやってみたいと思いますが取り急ぎ、ご報告まで。

本当に助かりました。
ありがとうございました。
0216nobodyさん2011/06/16(木) 20:53:50.81ID:???
※追記※

このケースではサブドメインでモジュールが分かれていました。
このことを先に書いておくべきでしたね。申し訳ありませんでした。
0217zfマニア2011/06/17(金) 00:14:33.17ID:???
今日鯖落ちしてたの知ってるか
0218nobodyさん2011/06/21(火) 13:48:32.80ID:???
今週末は毎月定例の Zend Framework Bug hunt day です。
今までずっと日本からの参加者がゼロまたは1名だけ、という状態ですが、
Zend Framework について一家言ある方はぜひ参加してみてください。
0219nobodyさん2011/06/21(火) 13:49:43.22ID:???
>>218
そのurl教えてください
0220nobodyさん2011/06/21(火) 14:48:19.94ID:zTIAULI/
日本語の本で、Zend Frameworkを使ってブログを作ろう、風の本はないでしょうか?
0221nobodyさん2011/06/21(火) 16:53:01.09ID:???
全部英語ですが、
今月のアナウンスはこちら。
http://devzone.zend.com/article/15563-Announcing-Junes-Zend-Framework-Bug-Hunt-Days

参加ガイダンスはこちら
http://framework.zend.com/wiki/display/ZFDEV/Monthly+Bug+Hunt+Days

1.x 系列で未解決の課題がこちら
http://framework.zend.com/issues/secure/IssueNavigator.jspa?requestId=11385&sorter/field=issuekey&sorter/order=ASC

最近は カナダの Adam Lundrigan さんが頑張ってくれています。

コミッター用IRCがこちら
#zftalk.dev

本当は木曜日から開始ですが、だいたい金曜日の深夜から日曜にかけてにぎやかになります。
0222nobodyさん2011/06/21(火) 16:59:30.88ID:???
>>221
対応に感謝する
0223nobodyさん2011/06/21(火) 23:24:50.14ID:???
>>220
ZF徹底マスターのサンプルに簡易(?)ブログがあったような
0224nobodyさん2011/06/22(水) 00:22:31.74ID:???
バージョン古そうだけど大丈夫か?
0225nobodyさん2011/06/22(水) 23:03:25.40ID:02VI6IFU
XoopsCube、WordPress等のいくつかのCMSを見てきたのですが、ファイルサイズはZendFramework単体よりも小さいです。
独自のMVC構造を作った方がいいのでしょうが、大変なのでZFを使おうと思います。
その際、ZFの要らないコンポーネントを削除しても動作に影響は無いのでしょうか?
もし出来るなら、これは削除したらダメ、これは削除して使ってるというのがあれば教えていただけませんでしょうか?
0226nobodyさん2011/06/22(水) 23:07:07.08ID:???
別にZFは全てのライブラリをアップロードする必要ないんだよ
所詮ライブラリの集合体だから
MVCに使うならView,Controllerだけでおk
モデルをデータベースで管理するならDbも必要になる
0227nobodyさん2011/06/22(水) 23:08:43.20ID:???
容量が小さいのがいいならCodeIgniterでも使えば良い
俺は両方使い分けている
0228nobodyさん2011/06/23(木) 00:19:37.74ID:???
つか今のご時世にそんなに容量に縛られないといけない案件って大変だな。
前近代的。
0229nobodyさん2011/06/23(木) 03:18:23.45ID:???
レン鯖とかvps前提の儲からない案件なんだろう。よくあることだ。
データセンタに丸ごとさば置いちゃうよって提案すると確実に逃げられるしょぼい案件w

客にしてみればzf使うので数百メガ使います月額数万円ですって言われてもナットく出来ないだろうし。容量喰わずに住む方法無いの?って言われるのがをちw
手元のpcの数百ギガのハードディスク交換で数千円しか掛かってないのになんでそんなにぼったくられるんだって言われて涙目w
0230nobodyさん2011/06/23(木) 06:16:20.67ID:???
月500円の共用サーバですら10GB使えるご時世で
ZFの容量を気にしないといけない案件ってどんなだよ
0231nobodyさん2011/06/23(木) 07:17:38.50ID:???
数百メガ・・・?
0232nobodyさん2011/06/23(木) 08:17:38.71ID:???
>>229
別に実務経験あるふりする必要ないんだから
静かに見てるだけにしときなよ
0233nobodyさん2011/06/23(木) 09:20:46.13ID:???
小さいことはいいことだ
特にWeb系は
例えハードが進化したとしてもコードを出来るだけ小さくしよう、軽くしようと努力するのは当然
アクセスがデカくなればなるほど少しでも小さくしなければ
>>228-230こそ小さな案件しかしていないことが分かる
0234nobodyさん2011/06/23(木) 09:56:28.70ID:???
いや単にスペースを無駄に使いたくないケチなだけの人かもしれない
0235nobodyさん2011/06/23(木) 10:06:11.73ID:???
一例として、Zend_Locale_Data フォルダーの中身を削ると1メガバイト以上減るよ。
いろいろ削ってみたものを下記に置いてるので、試してみて

http://ramat.ram.ne.jp/
0236nobodyさん2011/06/23(木) 10:08:56.45ID:???
ZF使うから数百メガって何の冗談だよ
何使ったらZFより遥かに100MB単位で小さくなんの?
0237nobodyさん2011/06/23(木) 10:30:46.91ID:???
日本語
0238nobodyさん2011/06/23(木) 10:44:11.36ID:???
APCの制限だろJK
0239nobodyさん2011/06/23(木) 14:58:51.33ID:???
貧乏案件で食いつないでる香具師が釣れまくりなすれw
0240nobodyさん2011/06/24(金) 01:46:15.51ID:rVNWaX5H
顧客が気にするのはレスポンスタイムだろう
容量を聞いてくる顧客とか会ったこと無いわ
0241nobodyさん2011/06/25(土) 17:15:35.10ID:???
鯖の要件説明して何の疑問も持たない客しか相手にして来なかったのかw
なぜゼンドで作ってるのかすらり買いしてなさそうだなw
■ このスレッドは過去ログ倉庫に格納されています