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

[PHP][フレームワーク]CodeIgniterスレ

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/04/27(金) 23:17:16ID:???
公式:http://www.codeigniter.com/
チュートリアル:http://codeigniter.com/tutorials/

ユーザガイド日本語訳:http://ci-user-guide-ja.nought-point-999.net/

小回りの利くフレームワークの話題をひとつ!
0402nobodyさん2008/06/16(月) 04:05:37ID:???
なんか宣伝くせーな
0403nobodyさん2008/06/16(月) 10:32:47ID:uqAO2CKu
昨日本屋で見てきました。
パラパラとしか見てないけど、即買い!という判断には至らなかった。
自分が本を買う基準の一つとして、購入後の利用頻度を考慮しますが、2〜3回読んだら終わりかな?と思ったので。

>>401
フレームワーク自体に慣れてない人、初心者にとっては役立つ
=CIのマニュアル代わりとして使う用途なら、紙ベースなので便利
と思いました。
0404nobodyさん2008/06/17(火) 20:04:27ID:???
他のFW本よりもわかりやすかったよ。
CIそのものが簡単ということなのかな。
0405nobodyさん2008/06/24(火) 05:50:32ID:???
404エラーページの取り回しダサくね?
標準の処理と同じコンテクストで処理するのが自然なんだから
エラー用のクラス名とメソッド名だけ指定するようにするべきだろJK
しかもビューチフルにハックもしにくいし
所詮ハゲが書いたFWか・・
0406nobodyさん2008/06/26(木) 00:50:52ID:???
と、ハックに挫折したハゲが申しております。
0407nobodyさん2008/06/26(木) 00:55:50ID:???
config周辺もひどい
アメ公の美意識の低さは異常
0408nobodyさん2008/07/01(火) 04:00:36ID:???
CIでXoopsモジュールとか作った人いたりする?
0409nobodyさん2008/07/02(水) 18:00:54ID:???
Fatal error: Call to a member function get() on a non-object in C:\xampp\htdocs\ci\system\application\controllers\blog.php on line 15

DBオブジェクトが取れてないようなんだけど、取れてない部分のエラーが出てこないのはなんで?
0410nobodyさん2008/07/02(水) 18:12:41ID:???
ライブラリが登録されてなかった。

でもエラーが出ないのはうんこだろ。
0411nobodyさん2008/07/03(木) 10:15:29ID:XZ5SMLTk
AppControllerとかAppModelとかおきたい場合って
どうすればいいんでしょうか?
0412nobodyさん2008/07/03(木) 17:29:46ID:EmmaV8CT
管理者用の画面を作るときって どうやってる?

controller/admin 掘って そこにコントローラ置いて
あとは admin にルーティングすればいいのかな?

ログイン認証なんかのコントローラとか どうやってわけるのがいいんだろう…
0413nobodyさん2008/07/03(木) 17:40:04ID:???
>>412
ぶっちゃけ、どんなURLにしたいかで変わる様な気がする
別ドメインがよければ、Apacheの設定も絡むし。
一般的なのはどんな感じなんだろうねえ
04144122008/07/03(木) 17:54:55ID:???
>>413

ありがとう そだね

とりあえずは controller/admin/ にディレクトリ掘って
そこに置くことにした


あと 管理者関連のコントローラだけ 共通の認証チェック処理いれたいんだけど
その辺のやり方がわからない


前にCakePHPさわったときは beforeFilter なんかで
コントローラ共通の処理入れられたんだけど
CIは 自分でControllerクラス継承して 作らないとだめなのかな?

管理ページ周りの処理で 参考になるとこあったら教えてください…
04154122008/07/03(木) 18:02:00ID:???
Controllerクラス継承して作る場合は
>>411 の言ってることと同じだね


一応 コアクラスの継承は

system/application/library/ に Controllerクラスを継承したMY_Controller.php
とか作ればいいみたいだよ


ログイン認証の共通処理も そうやってAppController 作ればいいんかな…
その辺りの情報がないから どうやるのがいいのか
いまいちわからん
0416nobodyさん2008/07/03(木) 18:06:26ID:???
>>414
CIさわらずにKohana触ってる邪道な俺だけど、俺も知りたい
便乗w

俺は、libraries の中にBaseController, UserController, AdminController って作っちゃったな・・・

誰か、筋の良いやり方を教えて
04174122008/07/03(木) 18:12:02ID:???
>>415

ちょいウソあったw

AppControllerじゃなくて MY_Controller だね

/system/application/library/MY_Controller.php

class MY_Controller extends Controller {
function MY_Controller() {
parent::Controller();
}
}

こんな感じ。

ログインの共通処理も ここでやろうかと思ったんだけど
それでいいのかがわからん…

>>416 みたいに 種類ごとにクラス作ったほうがいい気もするし…
04184122008/07/03(木) 18:52:48ID:???
>>417 の方法でやってるんだが
/system/application/libraries/MY_Controller.php

のようなの作れば コアクラスは自動で置き換わるらしいんだが
置き換わらないな

コントローラ側で

class bbs extends MY_Controller {
}

みたいに MY_ つけてやらないとダメ
CIのルールだとデフォでMY_付けることになってるけど
これじゃ意味ないじゃん

バグ?
0419nobodyさん2008/07/03(木) 18:57:59ID:???
[/system/application/libraries/MY_Controller.php]
class TEST_Controller extends Controller {
}


[/system/application/controllers/test.php]
class Bbs extends TEST_Controller {
}

にしてもいけちゃう



class Bbs extends Controller {
}

だと TEST_Controller が継承されない
(ルール通りにクラス名を MY_Controller にしても場合も同じ)


コアクラス、置き換わってない…
バグくさいね orz
04204122008/07/03(木) 19:38:23ID:???
ぼけてた 釣ってくる…


でも「コアクラスを拡張する場合のクラス名には MY_ を付ける」
っていう ルールは意味がないね


http://codeigniter.jp/user_guide_ja/general/core_classes.html


ファイルは MY_ 付けないと読み込んでくれないみたいだけど、
クラス名は別に MY_ 付ける必要ないよね?

なんでこんなこと書いてるんだろう
0421nobodyさん2008/07/03(木) 20:15:07ID:???
英語版にはちゃんとした事書いてたりするけ?
0422411 2008/07/03(木) 20:23:33ID:XZ5SMLTk
事故解決してたんだけどありがとう。

ただAppModelは相変わらずわかりません。
どのタイミングでロードすればええんですか?
Hook系もだめぽでした。
04234122008/07/03(木) 22:43:11ID:???
>>422

>>419-420 の方法じゃだめなの?

クラス名 MY_ つけなくてもいけるっぽいから
AppControllerにしとけばいいんじゃ

よくわからん ルールだなあ


おれはてっきり Controller そのものを置き換えてくれるとおもったんだが
ライブラリとかヘルパはそうだよね
0424nobodyさん2008/07/04(金) 15:09:16ID:???
>>422
コントローラはMY_Controllerをextendsして書いてるが、
モデルは仕方ないので各モデルの冒頭で
<?php
require_once(APPPATH."libraries/MY_Model.php");

class Hoge_model extends MY_Model
0425nobodyさん2008/07/14(月) 11:55:08ID:???
$this->db->insert() するときに, created_at とか updated_at というカラムに current_timestamp を指定したいんだけど、どうやったらいいの?
$array = array('name'=>'Foo', 'created_at'=>'current_timestamp');
として insert() してみたけど、current_timestamp にならず 0000-00-00 00:00:00 になった。
ちなみにMySQL5.0
0426nobodyさん2008/07/14(月) 12:05:24ID:???
>>425
Database に、escapeしないでsetする方法ってあったっけ?
それがsetメソッドなら、
$db->エスケープしないset('create_at', '式');
$db->insert('テーブル名') でいけるような気がする。

以上想像。なければ、Databaseを拡張する必要があるかも?
俺もこの辺知りたい。ソース嫁って感じだけど
0427nobodyさん2008/07/14(月) 12:12:17ID:???
NOW()とかも文字列として扱っちゃうから
date('Y-m-d H:i:s') にするしかないと思う

オレは
function now()
{
return date('Y-m-d H:i:s');
}
っていう関数を作ってある
0428nobodyさん2008/07/14(月) 19:00:27ID:???
>>426-427
さんくすです。
できないみたいなので、
fuction current_timestamp() {
return date('Y-m-d H:i:s');
}
を使うことにしました。
でもこれだと、application server と database server が別だと
時刻を必ず揃えておく必要がありますね。
0429nobodyさん2008/07/14(月) 19:12:37ID:???
>>428
サーバの管理がきっちり出来ていれば、どんなサーバも1秒と違わないはずなので、時刻で
よっぽどシビアなソートやチェックをしていない限り、それは大丈夫かと。
また、原則からいうなら元々どちらかに合わせるべきなので、DBの関数が使えない時点で
application側の時刻のみを使うのが必然となるかな。

サーバ間の時刻あわせとは、微妙に話が違うような。
0430nobodyさん2008/07/14(月) 19:47:05ID:???
>>426-428
date_helperのunix_to_human じゃダメなのか?

unix_to_human(time(),TRUE,'eu');
0431nobodyさん2008/07/15(火) 06:26:58ID:???
うちでは、まず application/helpers/database_helper.php として↓を用意して

class SafeMarker {
  private $_str;
  public function __construct($str) { $this->_str = $str; }
  public function __toString() { return $this->_str; }
}
function mark_as_safe($str) {
  return new SafeMarker($str);
}

モデルの中でこんな感じで使ってますよ

$this->load->helper('database');
$this->db->set('foo', $bar);
$this->db->set('created_at', mark_as_safe('NOW()'));
$this->db->insert('mytable');

CI_DB_driver#escape を読むとわかるけど、gettype で 'string' でも 'boolean' でも
NULL でもない値はスルーしてくれるので、オブジェクトでラップすると通る。
ただし __toString はPHP5からかな。
一種のhackなので、NOW()みたいな安全だとわかっているものにしか使いませんが。
0432nobodyさん2008/07/15(火) 07:42:14ID:???
>>431
なんちゅうか、バッドノウハウの香りがw
> gettype で 'string' でも 'boolean' でもNULL でもない値はスルーしてくれる
っていう実装自体も、それに依存してるっていうのも、なんだかなあw

オブジェクトを渡されて、上記みたいにすることも前提にしてるのかな?>CI
(それなら、素直にescapeを回避するset系メソッドをつければいいのではと)
04334312008/07/15(火) 12:59:01ID:???
>>432
どうみてもBKです。本当に(ry
CI内部の実装依存だからCIをバージョンアップすると動かなくなるかも。

個人的には、gettypeを見て判定、の部分はとりたてておかしなコードでは
ないので、マイナーバージョンアップであれば大丈夫だろうという甘い期待w
最悪、mark_as_safe で grep して置き換えれば、なんとかなるだろうとかw
素人にも玄人にもオヌヌメできない。\(^o^)/
04344312008/07/15(火) 13:07:49ID:???
ってよくみたら set($key, $value = '', $escape = TRUE) って
第三引数があるじゃねーかw

$this->db->set('created_at', 'NOW()', FALSE);

で多分いけるね・・・ orz
0435nobodyさん2008/07/15(火) 13:10:36ID:???
>>434
でもそれだと
$this->db->insert('tablename', array('created_at'=>'NOW()'));
とかができないよね。
431の方法のほうが個人的に好み。
0436nobodyさん2008/07/15(火) 13:15:25ID:???
そういうの考えるのが面倒くさかったので、デフォで$this->db->insert($tablename, $valuearray);時は
created_atに作成日時をつっこみ、$this->db->update($tablename, $valuearray);時はupdated_atに
更新日時を突っ込むようにCI_DBを変更して使ってる。
バッドノウハウなのは百も承知だが、symfonyから流れてきた人にはこれが手放せないのよorz
0437nobodyさん2008/07/15(火) 17:00:08ID:???
>>436
それはDBのNOW()やCURRENT_TIMESTAMP()を使うの?
それともPHPのdate()を使うの?
前者ならまねしたいなあ
0438nobodyさん2008/08/02(土) 09:47:59ID:???
いつの間にか1.5から1.6になってる。
なんかかわったの?
0439nobodyさん2008/08/03(日) 18:45:02ID:znW3bDml
あれ、$this->dbがなくなってね?
0440nobodyさん2008/08/03(日) 19:04:30ID:???
kantigaidatta
0441nobodyさん2008/08/20(水) 20:18:05ID:???
CI使ってる人間ってどれぐらいいるんだろうか
0442nobodyさん2008/08/20(水) 20:44:32ID:???
17人
0443nobodyさん2008/08/22(金) 13:30:33ID:???
CIってforward とか redirect とかはどうやるの?
0444nobodyさん2008/08/23(土) 00:51:34ID:???
headerで自分で
0445nobodyさん2008/08/23(土) 01:26:31ID:???
helperとか無かったっけ
まあぶっちゃけ自分でheader(ほげほげ)書くのと変わらないけど
0446nobodyさん2008/08/25(月) 13:31:03ID:Ziu2Tqsv
CodeIgniterでは、URLは「コントローラ名/メソッド名」というのが基本ですが、
このパターンを変更することはできますか。

やりたいのは、
- /blog/index
- /blog/show
- /blog/create
- /blog/edit
というのではなく、
- /blog/maka
- /blog/blackstar
- /blog/deaththekid
のように「コントローラ名/ユーザ名」のようにしたいということです。
つまり /blog 以下のアクセスをある特定のメソッドに縛りたいということです。
0447nobodyさん2008/08/25(月) 15:36:16ID:???
>>446
ヒント
config/routes.php
http://codeigniter.com/user_guide/general/routing.html
http://userguide.cilab.info/general/routing.html
0448nobodyさん2008/08/26(火) 15:08:09ID:???
>>447
ありがとうございます!
0449nobodyさん2008/08/26(火) 15:24:29ID:???
Routingについて質問です。
ユーザーズガイドの例にあったのですが、
$route['product/:num'] = "catalog/product_lookup";
という設定をした場合、「:num」の値は Catalog->product_lookup() の中で
どうやって取得すればいいのでしょうか。
通常だと Catalog->product_lookup() の引数にこの値が渡されますが、
試したところ、$route[] を設定した場合は渡されないようです。
0450nobodyさん2008/08/26(火) 15:37:11ID:???
>>449
英語のドキュメントに書いてありました。
$route['product/(:num)'] = "catalog/product_lookup_by_id/$1";
でいいみたいですね。
お騒がせしました。
0451nobodyさん2008/08/28(木) 12:20:46ID:B/844Qiw
$sql = "SELECT * FROM some_table WHERE id = ? AND status = ? AND author = ?";
$this->db->query($sql, array(3, 'live', 'Rick'));

この時、無関係な?は置換されないようになってますか?
たとえば、クエリの中に、hoge = 'fuga???'があった時など
0452nobodyさん2008/08/28(木) 22:52:42ID:???
>>451
ソレは自分で試してみたほうが早いんじゃない?
0453nobodyさん2008/08/29(金) 08:50:09ID:???
複数のコントローラ間でメソッドを共有したいとき、どうするのがいいでしょうか。
できれば、あるコントローラのメソッド内で、別のコントローラをnewしてメソッドを実行できるのがいちばん理想的なんですが、そんなことできますか。
0454nobodyさん2008/08/29(金) 11:22:01ID:???
>>453
application/libraryにMY_Controllerを置き、共通メソッドはそこに置く。
そのメソッドを使うコントローラはextends MY_Controllerで作る。
0455nobodyさん2008/08/29(金) 11:44:55ID:???
>>454
しかしそれをしていると、だんだん多重継承っぽい事がしたくなってくるという罠

シンプルな処理、Controllerのプロパティ、機能等が必要ない様なものは、
ユーティリティクラスに切り出すとかもありかと思う

そして、libraries がカオスになるというセンスのない俺
0456nobodyさん2008/08/29(金) 14:42:55ID:???
>>454
MY_Controllerに相当するものは作っているんですが、そこにはやはり多くのコントローラに共通するものだけをおきたいです。
あるコントローラAとコントローラBだけが使うようなものは、やっぱりMY_Controllerにはおきたくないですよね。

class AB_Controller extends MY_Controller
class ControllerA extends AB_Controller
class ControllerB extends AB_Controller
みたいなのってできますっけ?


>>455
多重継承やMix-inは欲しくなりますね。
librariesやhelpersがカオスになるのはよくわかります。
今まさにそんなかんじになりつつあるので、整理しているところです。
0457nobodyさん2008/09/07(日) 15:37:47ID:???
>>456
びっくりするくらい亀レスですがw

> class AB_Controller extends MY_Controller
> class ControllerA extends AB_Controller
> class ControllerB extends AB_Controller
> みたいなのってできますっけ?

できますね。うちでは、MY_Controller にはしていませんが。
(この辺のAutoLoderの仕組みがあんまりよくわかってないw)
0458nobodyさん2008/09/12(金) 18:31:21ID:q2obqPa7
>457
Fatal error: Class 'AB_Controller' not found in 呼び出してるコントローラーを継承しているクラス.php on line XX
ってなるんですが、なぜでしょうか。
以下に配置してます。
/system/application/libraries/AB_Controller.php
--------------------------------------------------------
<?php

class AB_Controller extends MY_Controller {

function AB_Controller()
{
parent::MY_Controller();
}
}
?>
0459nobodyさん2008/09/13(土) 01:11:52ID:???
>>458
「MY_がついてて、MY_の後の最初の1文字だけが大文字」の命名ルールに従ってないと
オートローディングできないですよ〜。
(プレフィクスはconfig.phpでMY_以外に変更可能)

命名規則を揃えるか、自前でコントローラクラスにrequire_onceを書くか、どっちかの手当てが
必要。
0460nobodyさん2008/09/14(日) 01:01:21ID:cUARlcyz
>>459
ありがとうございました。大変助かりました!
0461nobodyさん2008/09/18(木) 13:09:07ID:???
CodeIgniter的には、pluginとhelperの違いって何かありますか。
どっちも関数を提供するだけで、違いが内容に見えます。
0462nobodyさん2008/09/18(木) 16:11:44ID:nzPLdxkT
ログのしきい値おかしいね。普通
0 出力なし
1 ERROR
2 INFOも
3 DEBUGも
じゃない?
0463nobodyさん2008/09/18(木) 17:07:43ID:???
syslogの区分けにして欲しいよな
ciはアメリカ人らしく独自すぎるところが結構ある
0464nobodyさん2008/09/18(木) 17:47:47ID:nzPLdxkT
だよね。
しきい値勝手に変えちゃったもん。
0465nobodyさん2008/09/22(月) 21:08:37ID:???
なんかDB使ってるとFromのテーブルがどんどん増えていくんだけれども。
もしかして静的にテーブル溜め込んでんの?
0466nobodyさん2008/10/08(水) 18:34:20ID:???
CIでunit testやってる人いません?

うちはCIのWikiに出てたSimpletesterをいじりながらなんとかやってますけど、
1フォルダ内のテストクラスを全実行することしか出来なくてちょっとこまってます。
ttp://codeigniter.com/wiki/SimpleTester_-_Unit_testing_library/
0467nobodyさん2008/10/20(月) 05:19:44ID:???
base_urlにIndex.phpが引っ付くのはでふぉ?
0468nobodyさん2008/10/20(月) 05:21:12ID:???
ちがったform_openだ
0469nobodyさん2008/10/24(金) 20:58:58ID:???
1.7.0
0470nobodyさん2008/10/28(火) 10:49:17ID:???
1.7でなにか変わった?
0471nobodyさん2008/10/28(火) 14:21:52ID:???
validationクラスがform_validationクラスに名前変更&若干の仕様変更
→configに定義したものから読み込み可能になった

sessionデータをDBに保存するように変更とソレに伴ってテーブル定義変更

この二つ位かな?個人的には

詳しくは
http://codeigniter.com/user_guide/changelog.html
04724702008/10/28(火) 20:20:01ID:???
なるほど、どもです。
0473nobodyさん2008/11/12(水) 18:05:07ID:???
ciってcgi版phpでrewriteを使って
http://www.example.com/index.php/aaa/

http://www.example.com/aaa/
でアクセスできるようにすると、動かないのですかね・・・
0474nobodyさん2008/11/30(日) 21:27:31ID:???
PHP5.0+MySQL4.0で、CI1.6.3だとDBのエラーが出ますね。
>クライアント接続文字エンコードを設定できませんでした

検索したら対策がヒット
ttp://manno.jugem.jp/?eid=500
system/database/DB_driver.php の 178〜188 をコメントアウト(強引にTRUEを返す)したらとりあえず動いた。

ttp://blog.livedoor.jp/dango22/archives/51056076.html
/system/database/DB_driver.php // 178行目からコメントアウト

CodeIgniter入門6章の機能拡張の方法のように、元のファイルを変更しないで、自分で別ファイルを用意して、
/system/database/DB_driver.phpを継承する方法で対応できないでしょうか?

用意されたDBがMySQL4.0で変更できないので、とりあえずこの方法で乗り切る予定ですが^^
0475nobodyさん2008/11/30(日) 21:35:36ID:???
呼び出されたコントローラーとメソッド名取得することって出来ませんかね。
0476nobodyさん2008/12/01(月) 13:31:05ID:4yAH9v9b
>>475
URIクラスを使えばOK?
http://codeigniter.jp/user_guide_ja/libraries/uri.html

URIセグメントの文字列は、URIクラスにより配列にセットされます。
segment_array()メソッドを使うことで、この配列にアクセスできます。
0477nobodyさん2008/12/09(火) 14:53:50ID:3E19WexF
Rapyd使っている人いる?
貧弱なCRUDを補おうと思って使ってみようとしたんだけど、
公式ページのdocumentaionみても全然情報がなくて困ってる・・・

Rapyd: Minimalistic, Open source, Secure, and Small PHP 5 Framework
http://www.rapyd.com/
0478nobodyさん2008/12/17(水) 20:08:15ID:???
>>475
いまさらだが

$this->CI =& get_instance();
$this->CI ->router->fetch_class();
$this->CI ->router->fetch_method();
でもできるみたい。

コントローラやモデル内なら
$this->router->fetch_class();
でアクセス可
0479nobodyさん2008/12/19(金) 18:01:27ID:egThtXwj
みなさんログイン認証は何つかってますか?
>>10にある、UserAuth?
それとも、FreakAuth_lightでしょうか?
simpleloginはさすがに機能がなさ過ぎる感・・・
0480nobodyさん2008/12/19(金) 19:09:31ID:???
>>479
自前です。MY_Contoroller作る方法で。
0481nobodyさん2008/12/19(金) 20:16:08ID:f2L1j1eM
>>480
同じく。それが安心だね。掛け忘れもおきないし。
0482nobodyさん2008/12/20(土) 23:58:43ID:???
>>479
私も最近、ログイン認証のやり方をどうしたらいいか悩みました。

(1)CodeIgniter徹底入門で紹介されていたsimplelogin
(2)もうちょっと高機能なFreakAuth等のライブラリ
(3)自作のMY_Controllerクラスの用意

(2)はまだ試してないけど、今のところ(3)でやってます。

<参考になったサイト>

* LinuxなWEBデザイナーの覚書き。 | CodeIgniterでユーザー認証
http://php-sql-gdgd.jugem.jp/?eid=56
(↑if($this->session->userdata('next'))は、if(!〜)の間違いかな?)

* CodeIgniterで管理ページを作成する
http://dxd8.com/archives/142/

* 日本CodeIgniterユーザ会 - シンプルな認証
http://codeigniter.jp/archives/92

* CI:ユーザー認証
http://o2studio.blog81.fc2.com/blog-entry-306.html
0483nobodyさん2008/12/22(月) 20:02:23ID:???
みなさんありがとう。
MY_Controllerでログイン処理を自前実装?ということでしょうか?

私はリマインダーとかアカウント管理画面を1からは作るの面倒だなーと思ったので、
(というか今の案件で時間がないw)
はてなダイアリーで FreakAuth_light を入れてみた人のを参考にして、
それを試してみています。
0484nobodyさん2008/12/22(月) 22:43:33ID:???
ログイン認証のライブラリについてですが、
CIのMLで紹介されていたDX Authは、今度試してみたいです^^
http://dexcell.shinsengumiteam.com/dx_auth/
0485nobodyさん2008/12/23(火) 14:50:17ID:???
>>484
CL_Authの派生版なんですね。

FreakAuth_light 入れようとしたら、結局 1.7.0 だと改造必要なので困ってしまいました。
DX Auth は1.7.0対応してるみたいなのでよいですね。
0486nobodyさん2008/12/23(火) 19:30:01ID:???
Using Zend_Acl with CodeIgniter

ttp://devzone.zend.com/article/4115-Using-Zend_Acl-with-CodeIgniter
0487nobodyさん2008/12/26(金) 06:39:47ID:???
簡単な認証なら自作した方が早いよ。
0488nobodyさん2008/12/29(月) 00:23:40ID:???
1.7のドキュメント日本語化、がんばってください。
他力本願で申し訳ないけど、早く日本語で読みたいw
翻訳作業に限らず、ユーザ会の皆さんには本当に感謝!
0489nobodyさん2008/12/29(月) 01:22:24ID:???
口語訳→ 「ドキュメントマダー? 俺のためにみんな頑張れ」
04904882008/12/29(月) 12:21:19ID:L94/Z1Ym
>>489
はい、そのとーりですw
100点!
0491nobodyさん2008/12/29(月) 15:23:16ID:???
英語できないなら冗談抜きでプログラマにならないほうがいいと思うよ。
0492nobodyさん2008/12/29(月) 20:26:52ID:???
まず先にver1.6.3の日本語ドキュメントを読んでおけば、
そのあと英語のドキュメントを読んでも理解しやすいよね?

CodeIgniterと英語の勉強になれば一石二鳥だ!
0493みなさん来年も良いお年を!2008/12/29(月) 20:31:46ID:???
翻訳してくれた方々には感謝してます。
おかげでCodeIgniterの学習コストが少しで済んだ。
本も買って、何度も読み返している。

WEBアプリを作るのが楽しいと思える今日この頃。
今もプログラミングしてるし。^^
CodeIgniter日本語版のおかげで、デスマの日々を過ごしたトラウマから立ち直れそうです。(・∀・)
0494nobodyさん2009/01/15(木) 21:00:02ID:???
web関係やったことなかた、俺には本は正直かなりよかった。
願わくば 1.7 の差分を公開を!
今は、Form ValidationやDBのセッション使うみたいだしね
0495nobodyさん2009/01/15(木) 21:02:33ID:???
Form Validationの質問を1つしていいですか?
Validation後の値をとるときってどうすればいいんですかね?
DX_authとか見てるとプログラム中で(controller/auth.phpとかで)
set_value() 使っているんだけど、メソッド名的になんか変なんですが、こんなもんでしょうか?

フォーラムとか見ると、
 $this->input->post('mage');
使えってあったけど、これって直接入れた値なんじゃないのかな?不安なんですが・・
0496nobodyさん2009/01/15(木) 22:08:30ID:???
Validationは基本的に正しい値かどうかをチェックする機能だから、データの修正は別に行うものだと思いますよ。
0497nobodyさん2009/01/15(木) 22:25:21ID:???
>>495
たぶん、サニタイズ?とごっちゃになってるんだろうなー
というか、入力データをとりあえず変換するっていう発想はなかなかなくならないのな。

実際、入力値を変換するっていう処理が本当に必要なのは文字コードの変換くらいだろうと
思うんだが・・・
どうも質問で想定されてるのが、例えば数字・記号の全角半角変換や検索キーワードの
平仮名←→カタカナ変換等の親切処理とか、メール送信等を考えての半角カナ・機種依存
文字や絵文字などを置換・削除する処理などではない雰囲気なのが、なんだかなあ
0498nobodyさん2009/01/15(木) 22:45:47ID:???
>>495
form_validation->run実行してtrueだったらvalidationを通った値ということなので、そのまま$this->input->post使えばいいと思うよ。
それでも心配なら自分でコード書いてテストすればよろし。

という話だと解釈したんだが間違ってたらすまん。
04994952009/01/18(日) 15:11:26ID:???
あああ、そうか理解した。

Validateつまり検証するだけだから、検証にパス(runでTRUEが返る)したら、
その時点でOKだから、input->post使えばいいのか。
修正とか変換するわけではないのね・・・。

set_value() はviewのformに前の入力値をデフォルト表示するためのものだから、
そう使うべきのもの。
0500nobodyさん2009/01/19(月) 18:08:58ID:???
>>499
でもよい子のみんなは、"出力の時"には変換しようね!
お兄さんとの約束だ!
0501nobodyさん2009/01/19(月) 21:52:16ID:???
>>600
いやあ、指南役のお兄さん頼もしいわ。
ほれた
■ このスレッドは過去ログ倉庫に格納されています