[PHP][フレームワーク]CodeIgniterスレ
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/04/27(金) 23:17:16ID:???チュートリアル:http://codeigniter.com/tutorials/
ユーザガイド日本語訳:http://ci-user-guide-ja.nought-point-999.net/
小回りの利くフレームワークの話題をひとつ!
0201nobodyさん
2008/02/05(火) 13:48:11ID:???CodeIgniterなら、テンプレートファイルに無理やりロジック(PHPコード)を入れられるんじゃないですか?
http://userguide.cilab.info/general/alternative_php.html
CodeIgniter の テンプレートエンジンを利用したくない場合は、ビューファイルで純粋なPHPを利用することができます。
0202nobodyさん
2008/02/06(水) 09:14:57ID:4yRuvbwoクッキーなんて4Kくらいしかないし
それほど安全でもないし
毎回送信されるしでありえないんだが…
0203nobodyさん
2008/02/06(水) 09:59:31ID:???0204nobodyさん
2008/02/06(水) 10:06:28ID:???http://lists.sourceforge.jp/mailman/archives/codeigniter-users/2007-December/000048.html
0205nobodyさん
2008/02/06(水) 11:08:34ID:???PHP独自セッションは、スケーラビリティを考慮されていない設計になっていることと、
セキュリティの問題の2点からCIでは独自のセッションデータを保持するようにしていると思われる。
簡単に言うと、(うそ書いてるかも知れないからごめんね、一応自分で調べてみてください)
1.スケーラビリティの考慮漏れ
PHPはセッションデータをサーバの内部に保存する為、負荷分散を考えてサーバを2台に増設したと仮定した場合、
直接アクセスがあった1台のサーバには対象ユーザーのセッションデータが保存され、
もう一方のサーバにはセッションデータが保存されない、負荷分散時のロードバランサー、サーバなどの設定によっては、
2つのサーバ同士でセッションデータ共有がされずにセッション情報がうまく引き継がれない可能性がある。
なので、PHPのセッションを利用しているときに1度目と2度目のユーザーのアクセスが異なるサーバに行った場合にセッションデータが引き継がれない・・・。
2.セキュリティの観点
PHPSESSIONID(こんなんだったけ?)をキーにサーバにセッションデータを登録するから
適当な値で他人のセッションデータが簡単に盗めてしまう可能性がある。(改善されたのかな?)
例えば、ログイン情報をセッションに持っている作りのサイトで、
「http://????.com/login.php?PHPSESSIONID=aaaa」見たいなリンクが張られていてこのリンクをたどってログインした場合に、
他人が「http://????.com/info.php?PHPSESSIONID=aaaa」とアクセスすると
セッションタイムアウトが発生していない限り他人のセッション(この場合「aaaa」というPHPSESSIONIDでログインした人のセッション)をのっとる事が出来る脆弱性があってこれについて、
独自に解決をしていると思われる。
たしか、こんな感じだったと思う。
間違えているかもしれないので、申し訳ないですがPHP独自セッションのまずい点は色々なサイトに載っているからあさって調べてみて・・・。
俺も、だいぶ前に調べたから・・・。
0208nobodyさん
2008/02/06(水) 12:20:16ID:???cookieにセッション情報を格納するようにした
0209nobodyさん
2008/02/06(水) 12:32:09ID:???0210nobodyさん
2008/02/06(水) 13:02:45ID:???うん
cookieに突っ込むsession内容全体のdigestをアプリ固有のキーで生成して
そのdigest自体もcookieに入れておいて、サーバ側で受け付けた時には
そのdigestを検証して信用できるかどうかを調べてOKなら受け入れる、
という感じの実装みたい
0211nobodyさん
2008/02/06(水) 13:21:01ID:BSm5jPk+ここがほんとに安全なら楽になるな。
ユーザ側保存に不安があって自前で作るの面倒だったから。
0212nobodyさん
2008/02/06(水) 14:52:10ID:???それに携帯だったらどうするんだ?
クッキー使える機種だとしても、一アクセスごとに
最大4Kものパケット料がかかるよな?
0213nobodyさん
2008/02/06(水) 15:03:08ID:BSm5jPk+あと、バリデート済みのPOSTデータをセッションにつっこんで、
確認ボタン押したらそのままinsertとかができなくなるね。
データを一度ユーザ側に預けちゃってるわけだし。おっかない。
0214nobodyさん
2008/02/06(水) 15:08:08ID:BSm5jPk+吊ってきます。
0215nobodyさん
2008/02/06(水) 15:48:02ID:???CIもただCookieに単純に入れてOKとしてるわけじゃなかったと思うよ。
セッションの信頼性のチェックとかしてたと思う。
0216nobodyさん
2008/02/06(水) 15:53:03ID:???「PHPSESSIONID」をそのまま信用するようなことをしない対処を行うのはセキュリティ上今のPHPでは必要だと思うのだが。
それをやりやすくCIがやってくれていたはず。
DB使った場合だけだったかも知れないけど・・・。
0217nobodyさん
2008/02/06(水) 15:58:42ID:???だからそういう携帯や4k超えるような
でかいセッションファイル抱えるような場合は
ファイルやDBのセッション使えばいいって事
でも基本はセッションで扱うデータ量なんてしれてるし、
だったらcookieだけでやってしまえばいいんじゃね、って事
0218nobodyさん
2008/02/06(水) 21:34:26ID:???0219nobodyさん
2008/02/06(水) 21:37:08ID:???コハナじゃなくてクワナって言ってるな
0220nobodyさん
2008/02/07(木) 05:27:35ID:???定数定義とかinclude_pathの設定するのはアリ?
ここで関数の定義とかまで出来ちゃうのがphpのすごいとこだけど
0221nobodyさん
2008/02/07(木) 05:32:29ID:???ダイジェスト生成のロジックが割れたら
いじったデータをセッションに入れられるかもしれない
ユーザには知られたくないデータをセッションに入れることもありうるから
やっぱり抵抗あるなー
0222nobodyさん
2008/02/07(木) 06:38:42ID:???ciの本が出るらしい
売れるのかな…?
個人的には好きだが
0223nobodyさん
2008/02/07(木) 19:12:59ID:???PHP4なんて脂肪してんのに
ハンドリングするのエラーだけってどんだけ〜
0224nobodyさん
2008/02/07(木) 19:50:59ID:???0225nobodyさん
2008/03/03(月) 23:43:59ID:???なんだかんだ、uploadして一時ファイルをattacheさせてるんだけど。
もっといい方法ない?
0226nobodyさん
2008/03/05(水) 10:07:19ID:wSWuSxOd扱うデータ量なんてしれてるならsessionの方がいいよ
cookieを使う利点はサーバー側に負荷がかからないことだよ
扱うテータ量が多いほどcookieを使えばサーバー負荷にならないんだよ
0227nobodyさん
2008/03/05(水) 17:13:22ID:???データ転送量が増えるけどな。
0228nobodyさん
2008/03/05(水) 18:16:46ID:???0229nobodyさん
2008/03/16(日) 12:08:31ID:pwsdbwjT0230nobodyさん
2008/03/16(日) 12:33:46ID:???0231nobodyさん
2008/03/20(木) 22:08:46ID:???0233nobodyさん
2008/03/21(金) 01:05:34ID:???機能もシンプルだしねぇ
0234nobodyさん
2008/03/21(金) 04:14:05ID:???まあ小規模向けだね。
0235nobodyさん
2008/03/21(金) 12:34:00ID:???どのあたりでモデルが軽視されていると思ったの?
0236nobodyさん
2008/03/21(金) 18:23:01ID:???わからんけど
0237nobodyさん
2008/03/22(土) 00:16:05ID:???VerUPが頻繁だと遊ぶ分には楽しいけど実務じゃちょっと。
0238nobodyさん
2008/03/22(土) 00:16:56ID:???0239nobodyさん
2008/03/22(土) 00:37:50ID:???0240nobodyさん
2008/03/22(土) 18:01:21ID:???いや、安定してないと言ってるわけじゃないんだけど
更新が頻繁だと嬉しくもあるけどあんまり業務で使いたいと思わなくね?
あまりにも更新が頻繁=すぐ修正されるような問題点がまだまだある
と思えるし。
更新しないから安定してるってわけじゃないけどね。
中身バグだらけだけどただ単に更新止まってるだけとかあるし。
機能の追加の更新ならともかく、あんまり頻繁にBugFixで更新多いと心配になる。
致命的なのがあって、それを更新したから業務で使ってるのも更新しなきゃ→動かなくなった
とかが一番困るし。
0241nobodyさん
2008/03/23(日) 16:49:33ID:???リリースの頻度で安定している、していないを判定しているやつは素人
中身で判断しろ
修正でも不具合でも深刻具合による
リリーススケジュールの話ならここでしても無駄だ
本家で議論してこい
0242nobodyさん
2008/03/24(月) 12:26:43ID:???お前はもう少し>>240の書き込みをよく読め。
文盲か。
リリースの頻度で安定度してるかどうかを判断してるなんて書いていないだろ。
0243nobodyさん
2008/03/24(月) 14:41:00ID:???これを書いている時点で何もわかっちゃないだろ
0245nobodyさん
2008/03/25(火) 00:28:01ID:???もうちょっと温厚になれないのか。
0246nobodyさん
2008/03/25(火) 00:45:11ID:???みつを
0247nobodyさん
2008/03/28(金) 15:03:32ID:???と見に来たあなた。
書き込んでいるのは俺ですよ! 俺!
中身は何にもありません。ざーんねーんw
0248nobodyさん
2008/03/29(土) 03:13:12ID:???1, CIってモデルはオマケと言われてるけど、
CLIベースでモデル開発して、あとはコントローラから呼び出すというスタイルは
一般的ではない?
理由:モデルの開発をわざわざCI上でやりたくない
2, プラグインからモデルのデータセット取得して表示を返すようにしておいて、
それをビュー上で呼び出すようにしようかと思うのだけど、無作法?
理由:表示を構築するだけのコードだったらコントローラに書きたくない
3, 定義されてないコントローラクラスがURIセグメントで指定されたら
「クラス名.html」を自動的に表示する方法ってない?
理由:ロジックがないページまでわざわざコントローラを定義するのは面倒
0250248
2008/03/30(日) 14:38:56ID:???後から乗っけるだけでいいのかなあと思ってたけど、
CIでもできる限りフレームワークの流儀には沿うのね。
確かに、自分がご相談で書いた内容は、
他人がメンテする上で解読が困難になるか・・・
0251nobodyさん
2008/04/05(土) 16:57:53ID:???その通り。
努力が足りない非正規雇用の増加や、
正社員の中にもサービス残業が嫌だなどという甘えた輩が増えていることは
その証拠でしょうね。
0252nobodyさん
2008/04/08(火) 00:06:53ID:???>>正社員の中にもサービス残業が嫌だなどという甘え
おまえアホか
サービス残業が嫌だと思う事がなぜ甘えに繋がるの?w
サービス残業をさせる = 違法 って事ぐらいはオツムに入れとけ
0253nobodyさん
2008/04/08(火) 01:34:23ID:???0254nobodyさん
2008/04/08(火) 15:00:18ID:ozdPGPduhttp://oro9.thick.jp/doku.php?id=php:codeigniter:kohana_validate
0255nobodyさん
2008/04/11(金) 11:12:15ID:YKNdPaTr0256nobodyさん
2008/04/11(金) 13:56:30ID:DluuZ7jC他のコントローラで生成したHTMLを部分的にはめ込みたいんです。
よろしくお願いします。
0257nobodyさん
2008/04/13(日) 17:54:13ID:???画像(自前で用意するdefault imageとか、ユーザがuploadするものとか)は、
どこに置くのがスマートなんでしょうか。
あとCSSは、views/cssに突っ込んでみたんですが、
htmlのヘッダで呼び出す時に、system/application/views/cssみたいなフルパス書いてて、
なんか使い方間違ってる気がしますorz他のやりかたありますか?
0258nobodyさん
2008/04/13(日) 19:11:41ID:???ぶっちゃけCIは今日から始めたところだけど、
俺だったら画像とかは
/images
cssは
/styles
とかに置くかな。
viewsと同じフォルダにおく必要は全く無いし、
system以下はHTTPアクセスさせないほうが良いだろうね
0259258
2008/04/13(日) 20:49:43ID:???なんかCIのActiveRecordって変、
ていうかActiveRecordとはいえないような気がする。
ただのGatewayにしか見えない
これみんな我慢して使ってるの?
それともこのActiveRecordは使ってない?
0260nobodyさん
2008/04/13(日) 20:51:19ID:???ありがとうございやっす!
同じ事思ってました>system以下はHTTPアクセスさせないほうが良い
けど、applicationに含めるのが作法なのかな?とかも思ってて。
さっそく/imagesとかにしてみます。
0261nobodyさん
2008/04/14(月) 00:46:07ID:???・ActiveRecord
使ってない。PDOのラッパライブラリ作って使ってる
・セッション
PHPSESSIONなライブラリ使ってる
・テンプレ
PHPTAL使ってる
0262261
2008/04/14(月) 00:58:00ID:???使ってる使ってないは漏れの話ね
一般的なCI使いがどうしてるかは知らない
とりあえず漏れはCIでECサイト開発したけど、
CIの機能はMVCのCしか基本的に使ってないし、
ちょこちょこカスタマイズしてる
0263259
2008/04/14(月) 07:16:21ID:???レスありがとう。
やっぱり使ってないんだね。
俺も自作ライブラリ引っ張り出して使うことにするよ。
セッションはログイン中かどうかのフラグだけ、
テンプレも触るのは自分だけだから
とりあえずそのまま使ってみる。
0264nobodyさん
2008/04/14(月) 14:01:23ID:???テンプレは生PHP。(小さい会社でコーダー兼務なので)
セッションは$_SESSIONを直で。
0265nobodyさん
2008/04/14(月) 19:30:24ID:???0266nobodyさん
2008/04/15(火) 00:00:22ID:???ttp://kokoromo.jugem.cc/?eid=196
ttp://kokoromo.jugem.cc/?eid=197
この本でadodbが紹介されてて、いろいろメリットが書かれてました。
↓
PHPによるWebアプリケーションスーパーサンプル 活用編
ttp://www.amazon.co.jp/dp/4797332638/
0267nobodyさん
2008/04/15(火) 00:13:08ID:???日本語マニュアルが分かりやすくて、すぐに使えました!!!
翻訳作業やってくれている方、どうもありがとうございます(・∀・)
簡単に出来ることを複雑にやる必要はない
コマンドでスケルトン生成したり、設定ファイル書かなくてもすぐに使えて便利
0268nobodyさん
2008/04/15(火) 14:09:30ID:???DBのAPI関数使うよりも良さげそう
0269nobodyさん
2008/04/29(火) 07:16:47ID:???自動で生成する方法ってないですかねー?
いったい何画面作ればいいんだ
スレ違いだったらスルーよろ
0270nobodyさん
2008/04/29(火) 08:42:50ID:AjJ+5S6v0271nobodyさん
2008/04/29(火) 09:57:50ID:???言葉足らずすまそ。
実際にはフォーム画面から入力値を受け取ってバリデーションして
DBに格納するというのが面倒だというのを言いたかった
こんなんできたらいいな、というのがあって、
・フォームのINPUTなどの入力が連想配列で一括取得できる(POSTされたデータ用)
・バリデーションをフィルター的な感覚でやりたい(POSTされたデータ用)
・連想配列でフォームオブジェクトに渡せば対応するNAMEのINPUTなどに自動で値がセットされる(確認画面用)
・フォームからのデータを対応するテーブルにそのまま流し込みたい(バリデーションはするけど)
取りまとめないが、こんな感じ
まあ、画面設計の問題もあるんだが、
工数の内訳として画面処理:ロジック=5:1とかうんざりする
0272nobodyさん
2008/04/30(水) 02:10:32ID:???0273271
2008/04/30(水) 04:48:09ID:???CI以外のフレームワークは作法がガチガチに決まってるから嫌だ
潰しが効かないというか。まあ、フレームワークだから当然なんだが
それに対して、CIはプラットフォーム程度でしかないところが気に入っている
まあ、ライブラリ作るなり、カスタマイズするなりして頑張るよ
0274nobodyさん
2008/04/30(水) 04:54:08ID:???つぶしが利かない
0275271
2008/04/30(水) 05:44:11ID:???漏れの「潰しがきかない」と言ってるのは、
CIでなければ部分的な代替え手法を使うのが難しい、意味がない
という話のつもり
さすがにフレームワークまでは自作せんわ
0276nobodyさん
2008/04/30(水) 12:41:32ID:???0277nobodyさん
2008/04/30(水) 12:49:41ID:???0279nobodyさん
2008/05/01(木) 13:52:23ID:???0280nobodyさん
2008/05/02(金) 23:01:08ID:???http://pc11.2ch.net/test/read.cgi/php/1205475360/765
>>765 名前:nobodyさん[sage] 投稿日:2008/04/29(火) 00:30:20 ID:???
>>一週間いじってみたがこんな致命的バグの潜んだFWは使う気になれん
0281nobodyさん
2008/05/02(金) 23:14:38ID:???0282nobodyさん
2008/05/03(土) 01:05:09ID:???これはどのFWのスレに貼っても釣れるだろうなw
0283nobodyさん
2008/05/03(土) 04:58:57ID:???Defaultだと予約語みたいでクラス名にできないし
0286nobodyさん
2008/05/03(土) 07:12:58ID:???処理済みのデータは、$this->output->get_output() を呼べば利用可能ですので、留意しておいてください。
ってあるけど
この$thisって何?
フックの文脈でなんで$thisが出てくるのかわからんちん
0287nobodyさん
2008/05/03(土) 12:34:10ID:???こういうざっくばらんさがアメ公っぽい
セッションも変だし…
0288nobodyさん
2008/05/03(土) 16:45:47ID:???FW関係のスレに貼ったら百発百中で釣れる
さすがに罪悪感が・・・w
0289nobodyさん
2008/05/03(土) 23:28:28ID:???http://pc11.2ch.net/test/read.cgi/php/1186096518/161
161 名前:nobodyさん[sage] 投稿日:2008/05/03(土) 10:18:16 ID:???
一週間いじってみたがこんな致命的バグの潜んだFWは使う気になれん
0290nobodyさん
2008/05/04(日) 00:54:40ID:???まあそれはいいとして
rapydってスタンドアロンのPHP5用フレームワークになっちゃったんだな。
0291nobodyさん
2008/05/04(日) 22:51:42ID:QrBYi/l0セッションの仕様見て萎えた…
結局、ベストプラクティスはどれ???
クッキーなんてPCでもオフになってることあるよね…
入門者向けにベストプラクティスがほしい…
あとページングするのにはURLルーティング変えないとだめなん?
標準だとGETオフになってるし…
0292nobodyさん
2008/05/04(日) 23:17:37ID:???セッションは本家のwikiに使い方ほぼ同じでクッキーじゃなくネイティブの$_SESSION使う
プラグイン(自作ライブラリ?)が公開されてる。
他にも色々あるから英語が苦手じゃなければwiki内探索をオススメ。
0294nobodyさん
2008/05/05(月) 05:31:30ID:???クッキーだと携帯に対応できないのが致命的だわ
0295nobodyさん
2008/05/05(月) 07:01:33ID:1KRQrRZRアクセスコントロールは自前で実装しないといけないの?
0296nobodyさん
2008/05/05(月) 18:26:57ID:???テラしょぼす
0297nobodyさん
2008/05/05(月) 18:48:09ID:???シンプルでダサくないFWはないか!
0298nobodyさん
2008/05/05(月) 18:49:13ID:???0299nobodyさん
2008/05/05(月) 19:32:45ID:???余計なアソシエーションとか
そういうのがないシンプル版がでればいいんだな…
CIのインプットとかビュー周りとかその辺はシンプルですきなんだが
(CI + CakePHP) / 2
なFWないのか
0300nobodyさん
2008/05/05(月) 19:33:40ID:???0301nobodyさん
2008/05/05(月) 19:34:03ID:???■ このスレッドは過去ログ倉庫に格納されています