[PHP][フレームワーク]CodeIgniterスレ
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/04/27(金) 23:17:16ID:???チュートリアル:http://codeigniter.com/tutorials/
ユーザガイド日本語訳:http://ci-user-guide-ja.nought-point-999.net/
小回りの利くフレームワークの話題をひとつ!
0112110
2007/07/22(日) 17:57:43ID:???フォームからファイルが指定されたかどうかです。
$_FILES['xxxx']['name']に値があるかどうかでチェックしようと思ってました。
その後$_FILES['xxxx']['error']をチェックしたり、拡張子の制限を追加したりと
思ってたんですがその前に挫折してしまいました。
0113nobodyさん
2007/07/22(日) 18:01:33ID:???0114110
2007/07/22(日) 20:56:00ID:???今回は、フォームにはテキストボックス等の入力もあるので、
そのチェックはvalidationでやっています。
if ($this->validation->run() === FALSE) {
入力エラー
} else {
正常
}
これを
if (!$this->validation->run() || !$this->upload->do_upload()) {
入力エラー
}
とする事にしました。
ありがとうございました。
0115nobodyさん
2007/07/22(日) 23:17:46ID:???system/application/viewsとかにおいてる?(別途controller必要だけど)
それとも
documentroot/css とか?
参考にしたいのでよろしくです。
0116106
2007/07/23(月) 02:26:30ID:rslZzZtPベタ書きされたよそのシステムに手を入れる機会が多いので、
OOP(というかデザパタ?)苦手な人が多いのかなと思ったのです。
自分も「自己流でよくね?」と思ってた時期が長くて、
オブジェクト指向の本をいくつか読むまでFWの恩恵がわからなかったもので。
低レベルな主観で語ってしまいました。ごめんなさい。
0117nobodyさん
2007/07/23(月) 06:11:20ID:???CSSに限らずファイルはすべて前者(viewsにおくかどうか別にして)が可能なように
対応。速度のことを考えて最終公開用に後者に置くことを想定するが、
ファイル変更等は常に前者で。
0118nobodyさん
2007/07/27(金) 02:06:10ID:???を読んで勉強しています。
誤植と思われる箇所を発見しました。
http://userguide.cilab.info/general/controllers.html
のページの真ん中辺にある文章で、「関数呼び出しの再マッピング」のサンプルコードについてです。
function _remap($method)の中の
$this->$method();
は、
$this->method();
ですよね?
=method()の前についている$が不要。
ユーザーガイド日本語版を作成された方は、このスレをご覧になっているでしょうか?
とりいそぎご報告まで(・∀・)
0119nobodyさん
2007/07/27(金) 07:53:56ID:/fnc4AF20122nobodyさん
2007/07/27(金) 08:41:48ID:/fnc4AF2記事関連の各ページに「わけありユーザ上位数名」を表示したいとき。
条件が複雑だからできれば今後のために「ユーザ controller」にまとめたくて。
もう眠いからfile関数で取っちゃおうかな。
0123nobodyさん
2007/07/27(金) 08:45:35ID:???0124nobodyさん
2007/07/27(金) 09:01:52ID:/fnc4AF2サンクスです。
0125nobodyさん
2007/07/27(金) 13:44:27ID:???あああ!意味が分かりました!!!
<?php
$method = "some_method";
$some_method = "name";
echo $$method;//→echo $some_method; と同じ
?>
ってことなんですね。
$this->$method();
にしておけば、実行する関数をその都度指定できると。
私の解釈が間違っていることを気づかせてくれるヒントをいただき、どうもありがとうございました。
0126nobodyさん
2007/07/27(金) 21:47:18ID:kiyCeLtJサイト毎にまとめて設定して、
CodeIgniterをひとつのフォルダにぶっこんで共有したいんだよね…
無理か…
あーバージョン管理大変じゃ。
0127nobodyさん
2007/07/27(金) 21:56:52ID:???同一サーバで、URL/host名が違うって言う意味か?
それなら全然無理じゃないし普通にできるだろ
0128nobodyさん
2007/07/28(土) 09:53:42ID:???http://userguide.cilab.info/general/managing_apps.html
0131nobodyさん
2007/07/28(土) 10:20:57ID:???0132nobodyさん
2007/07/28(土) 10:52:29ID:???そんなに管理の手間はかわらんよ。>>128であろうとCI複数突っ込むのであろうと。
やるならhookつかってconfigクラス拡張+ルータ設定だな。これなら
CI管理はindex.php,applicationも含めて一つでOKだろ。
0133nobodyさん
2007/08/01(水) 06:27:52ID:???徒然なるままにBlog
PHPベンチマーク: Zend Framework vs Symfony vs CakePHP vs CodeIgniter vs PHP on TRAX
http://www.tsujita.jp/blojsom/blog/default/PHP/2007/07/13/PHPベンチマーク-Zend-Framework-vs-Symfony-vs-CakePHP-vs-CodeIgniter-vs-PHP-on-TRAX.html
0134nobodyさん
2007/08/01(水) 09:56:13ID:???0135nobodyさん
2007/08/02(木) 17:13:21ID:S/9lNY0s$newdata = array(
'name' => 'john',
'id' => '1',
'logged_in' => TRUE
);
$this->session->set_userdata($newdata);
セッションがパソコンに保存しくんねーけど、なぜだーーー!
0136nobodyさん
2007/08/02(木) 20:25:34ID:???0137nobodyさん
2007/08/03(金) 10:48:28ID:???出身地及び引き取り先はここですか?
0138nobodyさん
2007/08/03(金) 11:08:37ID:???0139nobodyさん
2007/08/08(水) 21:51:41ID:???こういうのって、どうやって効率よく作業するの?
なんか翻訳支援ツールとかあるんでしょうか。
あと、あの翻訳ってどのくらい時間かかりますか。
別のOSSの翻訳をやってみようかなと考えているので、参考にしたいです。
教えて中の人!
0140nobodyさん
2007/08/08(水) 21:52:45ID:???0141nobodyさん
2007/08/08(水) 21:57:40ID:???嫌いならわざわざこんなとこくるなよ
0142nobodyさん
2007/08/08(水) 21:59:54ID:???0143nobodyさん
2007/08/24(金) 15:33:31ID:???ActiveRecordで、
AND/ORの優先順位指定は出来ないのでしょうか。
$this->db->where('some = 1');
$this->db->where('any = 2');
$this->db->like(array('foo','codeigniter'));
$this->db->orlike(array('bar','framework'));
こうした場合、WHERE句は、 some = 1 AND any =2 AND foo LIKE "%codeigniter" OR bar LIKE "%framework%"
となりますが、AND ( foo LIKE "%codeigniter" OR bar LIKE "%framework%" )
としたいのです。
CI_DB_active_record クラスを眺めたところ、どうもそのような機能がなさそうなのですが
見落としているかもしれないので、質問しました。
よろしくお願いします。
0144143
2007/08/24(金) 16:53:49ID:???やっぱり出来そうにないので
http://codeigniter.com/forums/viewthread/45922/
のようにやります。
0145nobodyさん
2007/09/15(土) 16:58:09ID:???改めて調べてCodeIgniterを見付けて、いいじゃんと思った。
パフォーマンス重視のシンプル設計というのがいい。
バージョンも1.0越えてリリースになってるし(ベータのフレームワークって多いよね)。
ちょっとやってみる!
0146nobodyさん
2007/09/22(土) 11:44:41ID:???CodeIgniter in Japan
ttp://codeigniter.biz/
RSS検索で「CodeIgniter」と検索したらた出てきた。
今後の情報として、rapyd frameworkの日本語訳に期待。
0147nobodyさん
2007/09/22(土) 13:07:40ID:???と聞いて
日本語の公式サイトができたのか。
と思った
0148nobodyさん
2007/09/22(土) 13:12:41ID:???>CodeIgniter(コードイグニタ)
CodeIgniter(コードイグナイタ)じゃないのか?
0149nobodyさん
2007/09/22(土) 17:07:04ID:???price-change:blog
ttp://pricewave.blog110.fc2.com/
携帯対応とかがかなり参考になります。
0150nobodyさん
2007/09/24(月) 17:32:06ID:???0151nobodyさん
2007/09/24(月) 18:12:43ID:???「ビジネス」とか好んで言いたがる奴ってゴミが多いし
0152nobodyさん
2007/10/05(金) 23:49:53ID:???Create it!
ttp://tuevin.jugem.jp/
こちらのサイトですが、CodeIgniterのTipsを取り扱っています。
使っていて、あれどうやるのかなぁ、と思うネタが結構載っていて重宝します。
0153nobodyさん
2007/10/06(土) 01:01:46ID:???マトモなサイトなら別に荒らされたりしないから。
とりあえず乙
0154nobodyさん
2007/10/19(金) 17:33:20ID:???http://www.amazon.com/dp/1847191746/
発売されてから2ヶ月半立っても話題に出ないから貼っておく。
0155nobodyさん
2007/10/19(金) 20:46:31ID:???0156nobodyさん
2007/10/23(火) 14:19:22ID:???Indexクラス作って、デフォルトコンストラクタ作って、エントリポイントなメソッド(index())作ったところで
コンストラクタとメソッド名かぶるじゃんって気づいた。
トップページはやっぱり welcome じゃなくて index にしたい、ってだけなんだけど、普通どうしてるもの?
0157nobodyさん
2007/10/23(火) 17:28:10ID:???0158nobodyさん
2007/10/23(火) 17:38:14ID:???http://userguide.cilab.info/general/routing.html
0159nobodyさん
2007/10/26(金) 16:49:25ID:WZ/kPbo7いろんな有名どころのフレームワーク試したけど導入で躓いた・・・
DB関連も良さそうだ
これ使う前はZendが一番使いたかったけど、もうこれで十分だな
0160nobodyさん
2007/10/26(金) 17:30:20ID:???0161nobodyさん
2007/10/27(土) 21:08:04ID:stfTQ4kY0163nobodyさん
2007/11/22(木) 16:21:00ID:???0164nobodyさん
2007/11/23(金) 02:05:01ID:???0165nobodyさん
2008/01/17(木) 10:41:51ID:???0166nobodyさん
2008/01/30(水) 01:49:15ID:2r+EzdWP0167nobodyさん
2008/01/30(水) 09:57:56ID:tmBsdMJoURLヘルパでこの設定使わなかったら片手落ちもいいとこなんだが…
0169166
2008/01/30(水) 17:06:19ID:2r+EzdWPバクトラック投げてくれた方に感謝です。
0170nobodyさん
2008/01/30(水) 19:40:03ID:???当たり前じゃねーよ
・ルールに従ってスマートなURLをパースし、パラメータにする機能
・パラメータを元に、ルールに従ってスマートなURLを組み立てる機能
これはペアだ
0172nobodyさん
2008/02/01(金) 08:03:32ID:???<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
って書いてる?
0173nobodyさん
2008/02/01(金) 08:58:03ID:???検索もPOSTでしろと??
0174nobodyさん
2008/02/01(金) 09:43:29ID:???$config['uri_protocol'] = "PATH_INFO";
で出来たわん
0175nobodyさん
2008/02/01(金) 09:49:34ID:???ciは基幹クラスを上書きできるのがいいな
0176nobodyさん
2008/02/01(金) 10:23:44ID:???0177nobodyさん
2008/02/01(金) 11:37:18ID:???ciに習ってphp4式(プロパティーはvar、アクセス修飾子なし)で書くか、
php5式で書くか、dotch?
0179nobodyさん
2008/02/01(金) 19:41:43ID:???って仕様ダサくね?
methodとぶつかりまくりじゃん
というよりも、methodにプレフィックス付けるようにするべきだろ
常識で考えて
0181nobodyさん
2008/02/01(金) 21:28:10ID:???0182nobodyさん
2008/02/01(金) 22:26:18ID:???なんでそんな話になるんだよw
俺の実装がどうとかいう話じゃねえ
ユーザー全てにおいて起こりうる問題だから言ってんだよ
0183nobodyさん
2008/02/01(金) 23:08:14ID:???ほんまやんけ!
CodeIgniter1.6、キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
http://codeigniter.com/news/codeigniter_1_6_hits_the_streets/
CodeIgniter1.6は街に出かけます。
EllisLabはCodeIgniter1.6のリリース、私たちのオープンソースウェブアプリケーション枠組みを発表するのを誇りに思っています。 リリースは、枠組みの開発で新しい回転をマークして、EllisLab開発者と共同体の両方からかなりの配慮を受けました。
多くの新しい能力の中では、このリリースは以下を特集します。
Database Forgeのクラス: データベース不可知論者テーブルと分野操作
高められたActive Recordライブラリ
「フラッシュ変数」と追加担保がある改訂されたSession Class
自動loadable Modelsとextendable Model Class
既存のHelpersへのExtendable Helpers、追加、および増進
複数の視点の簡単な包含を考慮する改訂された視点構造
そして、120以上の異なった増進、改良、およびバグフィックス
心から信じられない共同体に感謝するには瞬間かかりたいと思います。(共同体はサポート、提案、フィックス、増進、および奨励を精力的に提供しました)。 私たちの開発の新型はあなた方のすべて周りで築き上げられます--感謝。
CodeIgniterは成長して、発展し続けています、そして、仕事は次のリリースのために既に始まりました。
すべての変化のリストに関しては、 Change Logを見てください。 現在CodeIgniterを走らせているなら、 アップデート説明書を読んでください。
2008年1月30日にデリック・アラードによって掲示されます。
0184nobodyさん
2008/02/01(金) 23:34:54ID:???0185nobodyさん
2008/02/02(土) 08:15:19ID:NjVdwivu機械翻訳ひどいな
0186nobodyさん
2008/02/02(土) 10:44:24ID:???ハンドリングがうまくいってないのか…
0187nobodyさん
2008/02/03(日) 21:28:38ID:???> って仕様ダサくね?
> methodとぶつかりまくりじゃん
メソッド名は動詞、クラス名は名詞になるから
普通に作っていたら、まずありえないな。
0188nobodyさん
2008/02/03(日) 23:18:33ID:???0189nobodyさん
2008/02/04(月) 08:32:42ID:???0190nobodyさん
2008/02/04(月) 10:13:31ID:???というよりもメソッドが動詞になるということ自体勝手なマイルールじゃん
そんな心くばりに依存するような実装はセンスがないと言っている
最初から名前空間を分ければいいこと
0191nobodyさん
2008/02/04(月) 13:00:32ID:???>曖昧な基準
英語を勉強したことがあれば知ってることだが、英会話の中では基本的に、名詞と動詞は区別できる。
>名詞と動詞が同型の単語は?
set
【名】一組{ひとくみ}、ひとそろい、一式
【自動】(ゼリーなどが)固まる、(骨が)くっつく[固定{こてい}する]
【他動】〜を正しい位置{いち}に置く[取り付ける]、整える、定める、配置{はいち}する、設定{せってい}する
こういう単語は気をつけないといけない。
メソッド名には動詞+目的語という形にして動詞単独で使わなければ、動詞と名詞が重複することはない。
>名前空間を分ければいい
PHP6では名前空間によって、重複が少なくなる?
0193nobodyさん
2008/02/04(月) 19:44:52ID:???俺はお前のコードは見たくないわ。
0194nobodyさん
2008/02/04(月) 23:39:11ID:???http://www.atmarkit.co.jp/farc/rensai/goodmodel01/goodmodel01.html
>
> 名詞・動詞分析法
> ユースケースや用語集から、名詞、名詞句を探し出して、クラスの候補とし、
> 動詞、動詞句を探し出して、メソッドの候補として作成していく方法。
たしかに名詞と動詞が同じものもあるから完全には決まらないが、
こんなの大体でいい。メソッドの場合は() 括弧がつくのだから
たとえ同じでも動作に不都合は無い。人間がわかりやすくするためのものなのだから
大体それで区別できれば問題ないわけだよ。
0195nobodyさん
2008/02/05(火) 00:41:07ID:???俺としてはAuth関係を標準で入れてほしかったなあ。
0196nobodyさん
2008/02/05(火) 01:35:22ID:???なんかPHPってC++とJavaを足して2で割ったような言語になってきているような気がする。
お手軽な言語から敷居の高い言語に変わっていくような気が・・・。
やだな〜。
0197nobodyさん
2008/02/05(火) 02:23:24ID:???後方互換性=PHP4、PHP5の文法で書かれたコードが実行できる状態で拡張、改善されるなら問題ないと思うけど。
0198nobodyさん
2008/02/05(火) 02:28:34ID:???0199nobodyさん
2008/02/05(火) 07:27:59ID:???ASPでもJSPでもそうなんだが。
まあ実際にはやらないけど、例えば1行で日付だけ表示させるようなプログラムでも
前ならHTMLの表示させたい場所に<phpで埋め込めば一瞬だったけど
MVCとかにすると表示する関数をモデルに用意して、テンプレに表示用用意しておいてコントローラーからビューにアサインしてみたいな面倒なことになる。
デザインとコードを分離できるのはメリットでもあるが、関係箇所が分離される事により
関連を探す手間も増えて見る場所も増えてでデメリットもあるのがなあ。
0200nobodyさん
2008/02/05(火) 10:53:55ID:???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+ここがほんとに安全なら楽になるな。
ユーザ側保存に不安があって自前で作るの面倒だったから。
■ このスレッドは過去ログ倉庫に格納されています