From kojima157 @ gmail.com Tue Mar 19 18:02:15 2013 From: kojima157 @ gmail.com (=?ISO-2022-JP?B?GyRCPi5FZzdyQkBPOhsoQg==?=) Date: Tue, 19 Mar 2013 18:02:15 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= Message-ID: お疲れ様です。小島と申します。 CodeIgniterのアクティブレコードで質問させてください。 例えば以下のような台帳系テーブルがあるとします。 (サンプルとして障害対応記録のようなものを例に挙げます) t_daichou (受付者ID,受付内容,対応者ID,対応内容,更新者ID,更新日) uke_id | uke_naiyou | tai_id | tai_naiyou | update_id | updatedate 00013 | test | 00023 | test | 00999 | 2013-01-01 00002 | test | 00301 | test | 00008 | 2013-01-03 00992 | test | 00003 | test | 00192 | 2013-01-04 00432 | test | 00231 | test | 00204 | 2013-01-04 00011 | test | 00022 | test | 00003 | 2013-01-05 00054 | test | 00031 | test | 00098 | 2013-01-07 このとき、受付者IDも対応者IDも更新者IDもスタッフマスタ(m_staff)からとってくる場合、CodeIgniterのModelへ下記のような記述をした場合、当然エラーとなります。 function getList(){ $this->db->select("*"); $this->db->from(t_daichou); $this->db->join("m_staff","t_test.uke_id=m_staff.staff_id","left"); $this->db->join("m_staff","t_test.tai_id=m_staff.staff_id","left"); $this->db->join("m_staff","t_test.update_id=m_staff.staff_id","left"); } 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 何かそのような記述方法というものがあるのででしょうか? (通常のSQLだったら回避するような書き方があるようですが アクティブレコード(?)でどのような記述となるのでしょうか) ないようでしたらあきらめがつきます。 宜しくお願い致します。 From kenichi.h @ gmail.com Tue Mar 19 18:57:22 2013 From: kenichi.h @ gmail.com (Kenichi Hayashi) Date: Tue, 19 Mar 2013 18:57:22 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: Message-ID: 林です。こんにちは。 > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 > 何かそのような記述方法というものがあるのででしょうか? m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 "m_staff as s1" "m_staff as s2" "m_staff as s3" のような感じで。 -- Kenichi Hayashi From saitou @ jin-soft.jp Wed Mar 20 12:56:11 2013 From: saitou @ jin-soft.jp (=?ISO-2022-JP?B?GyRCc25GI0pdGyhC?=) Date: Wed, 20 Mar 2013 12:56:11 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: Message-ID: 横入りで失礼いたします。 JIN SOFTWAREという会社で、自社製品に CodeIgniterを使用させていただいている齊藤と申します。 よろしくお願いいたします。 アクティブレコードは弊社では使用しておらず、 SQLをダイレクトに組んで投げる方式をとっておりますが、 アクティブレコードが引数を元に最終的にはSQLを組み上げる ものであるならば、下記のような書き方になるのかと、 推測します。 $this->db->select("*"); $this->db->from(t_daichou as d); $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); これによって内部的に select * from t_daichou as d left join m_staff as s1 on d.uke_id=s1.staff_id left join m_staff as s2 on d.tai_id=s2.staff_id left join m_staff as s3 on d.update_id=s3.staff_id というSQLが投げられるようならこれでいけるかと 思います。 弊社では、上記の記述を見て分かる通り、アクティブレコードを 使用するのとSQLを自前で組むことの差異を感じられなかったため 使用しない選択をしたのですが、アクティブレコードを使用する事の メリット等ありましたら、ご教示いただけるとありがたいです。 ちなみに弊社では今後も自社製品(受注も含め)には全て CodeIgniterを使用する計画でおります。 session周りで若干バグ臭い動きもありますが、回避出来ない レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに 必要な機能が揃っていると実感しています。 導入の際には日本CodeIgniterユーザ会の発信される情報を 頼りにさせていただきました。あらためて御礼申し上げます。 今後ともよろしくお願い申し上げます。 2013年3月19日 18:57 Kenichi Hayashi : > 林です。こんにちは。 > > > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 > > 何かそのような記述方法というものがあるのででしょうか? > > m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 > > "m_staff as s1" > "m_staff as s2" > "m_staff as s3" > > のような感じで。 > > -- > Kenichi Hayashi > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > -- /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B JIN SOFTWARE株式会社 代表取締役 齊藤 保 TEL: 03-6915-1215 FAX: 03-6915-1216 Mobil: 090-4416-0111 Mail saitou @ jin-soft.jp WEB http://jin-soft.jp /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130320/eae01eeb/attachment.htm From info @ scissorhands.jpn.org Wed Mar 20 15:27:08 2013 From: info @ scissorhands.jpn.org (=?iso-2022-jp?B?GyRCOE1FRCEhOS0bKEI=?=) Date: Wed, 20 Mar 2013 15:27:08 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: Message-ID: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> こんにちは、戸田です。 > 弊社では、上記の記述を見て分かる通り、アクティブレコードを > 使用するのとSQLを自前で組むことの差異を感じられなかったため > 使用しない選択をしたのですが、アクティブレコードを使用する事の > メリット等ありましたら、ご教示いただけるとありがたいです。 私がすぐ思いつく大きな違いは 2点ありまして、 その違いは、開発内容で言えば 初期条件が FIX して変わりにくい委託開発よりも 常に変化・柔軟な対応を求められる 自社パッケージの開発・展開などで利いてくると思っています。 1. Active Record を使うと、仮に RDBMS が変わることになっても Model のコードを変更する必要がありません。 2. CodeIgniter では、 Active Record を使うと /application/config/database.php で設定できる dbprefix が すべての SQL に対して自動的に付与されるようになっています。 dbprefix を変更する時は、 database.php を書き換えるだけで Model のコードを変更せずに、一元的に変更できます。 以上です。 On 2013/03/20, at 12:56, 齊藤保 wrote: > 横入りで失礼いたします。 > JIN SOFTWAREという会社で、自社製品に > CodeIgniterを使用させていただいている齊藤と申します。 > よろしくお願いいたします。 > > アクティブレコードは弊社では使用しておらず、 > SQLをダイレクトに組んで投げる方式をとっておりますが、 > アクティブレコードが引数を元に最終的にはSQLを組み上げる > ものであるならば、下記のような書き方になるのかと、 > 推測します。 > > $this->db->select("*"); > $this->db->from(t_daichou as d); > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > > これによって内部的に > select * from t_daichou as d > left join m_staff as s1 on d.uke_id=s1.staff_id > left join m_staff as s2 on d.tai_id=s2.staff_id > left join m_staff as s3 on d.update_id=s3.staff_id > > というSQLが投げられるようならこれでいけるかと > 思います。 > > 弊社では、上記の記述を見て分かる通り、アクティブレコードを > 使用するのとSQLを自前で組むことの差異を感じられなかったため > 使用しない選択をしたのですが、アクティブレコードを使用する事の > メリット等ありましたら、ご教示いただけるとありがたいです。 > > ちなみに弊社では今後も自社製品(受注も含め)には全て > CodeIgniterを使用する計画でおります。 > session周りで若干バグ臭い動きもありますが、回避出来ない > レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに > 必要な機能が揃っていると実感しています。 > > 導入の際には日本CodeIgniterユーザ会の発信される情報を > 頼りにさせていただきました。あらためて御礼申し上げます。 > > 今後ともよろしくお願い申し上げます。 > > > > > 2013年3月19日 18:57 Kenichi Hayashi : > 林です。こんにちは。 > > > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 > > 何かそのような記述方法というものがあるのででしょうか? > > m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 > > "m_staff as s1" > "m_staff as s2" > "m_staff as s3" > > のような感じで。 > > -- > Kenichi Hayashi > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > > > -- > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > > 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B > JIN SOFTWARE株式会社 > 代表取締役 齊藤 保 > TEL: 03-6915-1215 FAX: 03-6915-1216 > Mobil: 090-4416-0111 > Mail saitou @ jin-soft.jp WEB http://jin-soft.jp > > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130320/a5f5758f/attachment-0001.htm From saitou @ jin-soft.jp Wed Mar 20 18:27:07 2013 From: saitou @ jin-soft.jp (=?ISO-2022-JP?B?GyRCc25GI0pdGyhC?=) Date: Wed, 20 Mar 2013 18:27:07 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> References: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> Message-ID: 戸田様 ご教示ありがとうございます。 とてもよく理解出来ました。 弊社でも少し研究してみます。 2013年3月20日 15:27 戸田 広 : > こんにちは、戸田です。 > > 弊社では、上記の記述を見て分かる通り、アクティブレコードを > 使用するのとSQLを自前で組むことの差異を感じられなかったため > 使用しない選択をしたのですが、アクティブレコードを使用する事の > メリット等ありましたら、ご教示いただけるとありがたいです。 > > > 私がすぐ思いつく大きな違いは 2点ありまして、 > その違いは、開発内容で言えば > 初期条件が FIX して変わりにくい委託開発よりも > 常に変化・柔軟な対応を求められる > 自社パッケージの開発・展開などで利いてくると思っています。 > > > 1. Active Record を使うと、仮に RDBMS が変わることになっても > Model のコードを変更する必要がありません。 > > 2. CodeIgniter では、 Active Record を使うと > /application/config/database.php で設定できる dbprefix が > すべての SQL に対して自動的に付与されるようになっています。 > dbprefix を変更する時は、 database.php を書き換えるだけで > Model のコードを変更せずに、一元的に変更できます。 > > > > 以上です。 > > > > On 2013/03/20, at 12:56, 齊藤保 wrote: > > 横入りで失礼いたします。 > JIN SOFTWAREという会社で、自社製品に > CodeIgniterを使用させていただいている齊藤と申します。 > よろしくお願いいたします。 > > アクティブレコードは弊社では使用しておらず、 > SQLをダイレクトに組んで投げる方式をとっておりますが、 > アクティブレコードが引数を元に最終的にはSQLを組み上げる > ものであるならば、下記のような書き方になるのかと、 > 推測します。 > > $this->db->select("*"); > $this->db->from(t_daichou as d); > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > > これによって内部的に > select * from t_daichou as d > left join m_staff as s1 on d.uke_id=s1.staff_id > left join m_staff as s2 on d.tai_id=s2.staff_id > left join m_staff as s3 on d.update_id=s3.staff_id > > というSQLが投げられるようならこれでいけるかと > 思います。 > > 弊社では、上記の記述を見て分かる通り、アクティブレコードを > 使用するのとSQLを自前で組むことの差異を感じられなかったため > 使用しない選択をしたのですが、アクティブレコードを使用する事の > メリット等ありましたら、ご教示いただけるとありがたいです。 > > ちなみに弊社では今後も自社製品(受注も含め)には全て > CodeIgniterを使用する計画でおります。 > session周りで若干バグ臭い動きもありますが、回避出来ない > レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに > 必要な機能が揃っていると実感しています。 > > 導入の際には日本CodeIgniterユーザ会の発信される情報を > 頼りにさせていただきました。あらためて御礼申し上げます。 > > 今後ともよろしくお願い申し上げます。 > > > > > 2013年3月19日 18:57 Kenichi Hayashi : > >> 林です。こんにちは。 >> >> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 >> > 何かそのような記述方法というものがあるのででしょうか? >> >> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 >> >> "m_staff as s1" >> "m_staff as s2" >> "m_staff as s3" >> >> のような感じで。 >> >> -- >> Kenichi Hayashi >> >> _______________________________________________ >> Codeigniter-users mailing list >> Codeigniter-users @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> > > > > -- > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > > 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B > JIN SOFTWARE株式会社 > 代表取締役 齊藤 保 > TEL: 03-6915-1215 FAX: 03-6915-1216 > Mobil: 090-4416-0111 > Mail saitou @ jin-soft.jp WEB http://jin-soft.jp > > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > -- /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B JIN SOFTWARE株式会社 代表取締役 齊藤 保 TEL: 03-6915-1215 FAX: 03-6915-1216 Mobil: 090-4416-0111 Mail saitou @ jin-soft.jp WEB http://jin-soft.jp /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130320/aebdd22a/attachment.htm From kojima157 @ gmail.com Thu Mar 21 09:57:12 2013 From: kojima157 @ gmail.com (=?ISO-2022-JP?B?GyRCPi5FZzdyQkBPOhsoQg==?=) Date: Thu, 21 Mar 2013 09:57:12 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> Message-ID: お世話になっております。 質問者です。 ご回答ありがとうございます。 みなさまからアドバイス頂いたように $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); の書き方で正常に動作することを確認することができました。 大変助かりました。 また、アクティブレコードを使用することのメリットも大変参考になりました。 今後ともよろしくお願いいたします。 小島 **************************************** 2013年3月20日 18:27 齊藤保 : > 戸田様 > > ご教示ありがとうございます。 > とてもよく理解出来ました。 > 弊社でも少し研究してみます。 > > > > 2013年3月20日 15:27 戸田 広 : > >> こんにちは、戸田です。 >> >> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >> 使用するのとSQLを自前で組むことの差異を感じられなかったため >> 使用しない選択をしたのですが、アクティブレコードを使用する事の >> メリット等ありましたら、ご教示いただけるとありがたいです。 >> >> >> 私がすぐ思いつく大きな違いは 2点ありまして、 >> その違いは、開発内容で言えば >> 初期条件が FIX して変わりにくい委託開発よりも >> 常に変化・柔軟な対応を求められる >> 自社パッケージの開発・展開などで利いてくると思っています。 >> >> >> 1. Active Record を使うと、仮に RDBMS が変わることになっても >> Model のコードを変更する必要がありません。 >> >> 2. CodeIgniter では、 Active Record を使うと >> /application/config/database.php で設定できる dbprefix が >> すべての SQL に対して自動的に付与されるようになっています。 >> dbprefix を変更する時は、 database.php を書き換えるだけで >> Model のコードを変更せずに、一元的に変更できます。 >> >> >> >> 以上です。 >> >> >> >> On 2013/03/20, at 12:56, 齊藤保 wrote: >> >> 横入りで失礼いたします。 >> JIN SOFTWAREという会社で、自社製品に >> CodeIgniterを使用させていただいている齊藤と申します。 >> よろしくお願いいたします。 >> >> アクティブレコードは弊社では使用しておらず、 >> SQLをダイレクトに組んで投げる方式をとっておりますが、 >> アクティブレコードが引数を元に最終的にはSQLを組み上げる >> ものであるならば、下記のような書き方になるのかと、 >> 推測します。 >> >> $this->db->select("*"); >> $this->db->from(t_daichou as d); >> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >> >> これによって内部的に >> select * from t_daichou as d >> left join m_staff as s1 on d.uke_id=s1.staff_id >> left join m_staff as s2 on d.tai_id=s2.staff_id >> left join m_staff as s3 on d.update_id=s3.staff_id >> >> というSQLが投げられるようならこれでいけるかと >> 思います。 >> >> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >> 使用するのとSQLを自前で組むことの差異を感じられなかったため >> 使用しない選択をしたのですが、アクティブレコードを使用する事の >> メリット等ありましたら、ご教示いただけるとありがたいです。 >> >> ちなみに弊社では今後も自社製品(受注も含め)には全て >> CodeIgniterを使用する計画でおります。 >> session周りで若干バグ臭い動きもありますが、回避出来ない >> レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに >> 必要な機能が揃っていると実感しています。 >> >> 導入の際には日本CodeIgniterユーザ会の発信される情報を >> 頼りにさせていただきました。あらためて御礼申し上げます。 >> >> 今後ともよろしくお願い申し上げます。 >> >> >> >> >> 2013年3月19日 18:57 Kenichi Hayashi : >>> >>> 林です。こんにちは。 >>> >>> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 >>> > 何かそのような記述方法というものがあるのででしょうか? >>> >>> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 >>> >>> "m_staff as s1" >>> "m_staff as s2" >>> "m_staff as s3" >>> >>> のような感じで。 >>> >>> -- >>> Kenichi Hayashi >>> >>> _______________________________________________ >>> Codeigniter-users mailing list >>> Codeigniter-users @ lists.sourceforge.jp >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >> >> >> >> -- >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B >> JIN SOFTWARE株式会社 >> 代表取締役 齊藤 保 >> TEL: 03-6915-1215 FAX: 03-6915-1216 >> Mobil: 090-4416-0111 >> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> _______________________________________________ >> Codeigniter-users mailing list >> Codeigniter-users @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >> >> >> _______________________________________________ >> Codeigniter-users mailing list >> Codeigniter-users @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> > > > > -- > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > > 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B > JIN SOFTWARE株式会社 > 代表取締役 齊藤 保 > TEL: 03-6915-1215 FAX: 03-6915-1216 > Mobil: 090-4416-0111 > Mail saitou @ jin-soft.jp WEB http://jin-soft.jp > > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > From kojima157 @ gmail.com Thu Mar 21 13:02:47 2013 From: kojima157 @ gmail.com (=?ISO-2022-JP?B?GyRCPi5FZzdyQkBPOhsoQg==?=) Date: Thu, 21 Mar 2013 13:02:47 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> Message-ID: すみません、あとは解決できるつもりでしたが 解決できなかったので再度相談させてください。 同問題でModel側で1つのマスタを複数回参照した後、 ControllerとViewで下記のような流れでデータを取り出そうと していますが、予想と異なりうまくいきませんでした。 //Model function getList(){ $this->db->select("*"); $this->db->from(t_daichou as d); $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); return $this->db->get(); } //Controller function listAll(){ $data[rsList] = $this->m_sample->getList(); $this->load->view('v_listAll',$data); } //View foreach($rsList->result() as $List){ //test echo $List->s1.staff_name; echo $List->s2.staff_name; echo $List->s3.staff_name; } エラーの内容 Undefineed property:stdClass::$s1 FIlename:libraries/Loader.php(673):eval()'d code これもまた何かViewでの記述方法があるのでしょうか? (Codeigniter以前の未熟な問題だったらすみません) たびたび申し訳ありません、宜しくお願い致します。 小島 ********************************* 2013年3月21日 9:57 小島健太郎 : > お世話になっております。 > 質問者です。 > ご回答ありがとうございます。 > > みなさまからアドバイス頂いたように > > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > > の書き方で正常に動作することを確認することができました。 > 大変助かりました。 > また、アクティブレコードを使用することのメリットも大変参考になりました。 > > 今後ともよろしくお願いいたします。 > > 小島 > > > **************************************** > > 2013年3月20日 18:27 齊藤保 : >> 戸田様 >> >> ご教示ありがとうございます。 >> とてもよく理解出来ました。 >> 弊社でも少し研究してみます。 >> >> >> >> 2013年3月20日 15:27 戸田 広 : >> >>> こんにちは、戸田です。 >>> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の >>> メリット等ありましたら、ご教示いただけるとありがたいです。 >>> >>> >>> 私がすぐ思いつく大きな違いは 2点ありまして、 >>> その違いは、開発内容で言えば >>> 初期条件が FIX して変わりにくい委託開発よりも >>> 常に変化・柔軟な対応を求められる >>> 自社パッケージの開発・展開などで利いてくると思っています。 >>> >>> >>> 1. Active Record を使うと、仮に RDBMS が変わることになっても >>> Model のコードを変更する必要がありません。 >>> >>> 2. CodeIgniter では、 Active Record を使うと >>> /application/config/database.php で設定できる dbprefix が >>> すべての SQL に対して自動的に付与されるようになっています。 >>> dbprefix を変更する時は、 database.php を書き換えるだけで >>> Model のコードを変更せずに、一元的に変更できます。 >>> >>> >>> >>> 以上です。 >>> >>> >>> >>> On 2013/03/20, at 12:56, 齊藤保 wrote: >>> >>> 横入りで失礼いたします。 >>> JIN SOFTWAREという会社で、自社製品に >>> CodeIgniterを使用させていただいている齊藤と申します。 >>> よろしくお願いいたします。 >>> >>> アクティブレコードは弊社では使用しておらず、 >>> SQLをダイレクトに組んで投げる方式をとっておりますが、 >>> アクティブレコードが引数を元に最終的にはSQLを組み上げる >>> ものであるならば、下記のような書き方になるのかと、 >>> 推測します。 >>> >>> $this->db->select("*"); >>> $this->db->from(t_daichou as d); >>> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >>> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >>> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >>> >>> これによって内部的に >>> select * from t_daichou as d >>> left join m_staff as s1 on d.uke_id=s1.staff_id >>> left join m_staff as s2 on d.tai_id=s2.staff_id >>> left join m_staff as s3 on d.update_id=s3.staff_id >>> >>> というSQLが投げられるようならこれでいけるかと >>> 思います。 >>> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の >>> メリット等ありましたら、ご教示いただけるとありがたいです。 >>> >>> ちなみに弊社では今後も自社製品(受注も含め)には全て >>> CodeIgniterを使用する計画でおります。 >>> session周りで若干バグ臭い動きもありますが、回避出来ない >>> レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに >>> 必要な機能が揃っていると実感しています。 >>> >>> 導入の際には日本CodeIgniterユーザ会の発信される情報を >>> 頼りにさせていただきました。あらためて御礼申し上げます。 >>> >>> 今後ともよろしくお願い申し上げます。 >>> >>> >>> >>> >>> 2013年3月19日 18:57 Kenichi Hayashi : >>>> >>>> 林です。こんにちは。 >>>> >>>> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 >>>> > 何かそのような記述方法というものがあるのででしょうか? >>>> >>>> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 >>>> >>>> "m_staff as s1" >>>> "m_staff as s2" >>>> "m_staff as s3" >>>> >>>> のような感じで。 >>>> >>>> -- >>>> Kenichi Hayashi >>>> >>>> _______________________________________________ >>>> Codeigniter-users mailing list >>>> Codeigniter-users @ lists.sourceforge.jp >>>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >>> >>> >>> >>> >>> -- >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >>> >>> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B >>> JIN SOFTWARE株式会社 >>> 代表取締役 齊藤 保 >>> TEL: 03-6915-1215 FAX: 03-6915-1216 >>> Mobil: 090-4416-0111 >>> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp >>> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >>> _______________________________________________ >>> Codeigniter-users mailing list >>> Codeigniter-users @ lists.sourceforge.jp >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >>> >>> >>> >>> _______________________________________________ >>> Codeigniter-users mailing list >>> Codeigniter-users @ lists.sourceforge.jp >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >>> >> >> >> >> -- >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B >> JIN SOFTWARE株式会社 >> 代表取締役 齊藤 保 >> TEL: 03-6915-1215 FAX: 03-6915-1216 >> Mobil: 090-4416-0111 >> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> _______________________________________________ >> Codeigniter-users mailing list >> Codeigniter-users @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> -- *********************************************** 医療法人栄和会泉川病院 医療情報部 情報システム課    小島 健太郎 E-mail:kojima157 @ gmail.com Tel:0957-72-2017 *********************************************** From kunitsuji @ gmail.com Thu Mar 21 15:32:09 2013 From: kunitsuji @ gmail.com (tsuji kuni) Date: Thu, 21 Mar 2013 15:32:09 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> Message-ID: こんにちは。 Kunitsujiともうします。 $List->s1.staff_name; エラーの内容を見る限り、 この書き方に問題がある、と言うことだとおもいます。 SQLの書き方のs1. staff_nameというものが、phpでは理解できない、ということではないでしょうか。 細かく検証してないので、詳しくはわかりませんが、 SELECT s1.staff_name as s1_staff_name とか事前に変えておけば間違いはないと思います。 そのような複数テーブルでの全ての項目を取り出した場合、結果がどういう形で取り出せているかは、 var_damp等で確認してみれば、わかるかもしれませんね。 2013/03/21 13:03 "小島健太郎" : > すみません、あとは解決できるつもりでしたが > 解決できなかったので再度相談させてください。 > > 同問題でModel側で1つのマスタを複数回参照した後、 > ControllerとViewで下記のような流れでデータを取り出そうと > していますが、予想と異なりうまくいきませんでした。 > > //Model > function getList(){ > > $this->db->select("*"); > $this->db->from(t_daichou as d); > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > > return $this->db->get(); > } > > //Controller > function listAll(){ > $data[rsList] = $this->m_sample->getList(); > $this->load->view('v_listAll',$data); > } > > //View > foreach($rsList->result() as $List){ > //test > echo $List->s1.staff_name; > echo $List->s2.staff_name; > echo $List->s3.staff_name; > } > > エラーの内容 > Undefineed property:stdClass::$s1 > FIlename:libraries/Loader.php(673):eval()'d code > > これもまた何かViewでの記述方法があるのでしょうか? > (Codeigniter以前の未熟な問題だったらすみません) > たびたび申し訳ありません、宜しくお願い致します。 > > 小島 > > ********************************* > > 2013年3月21日 9:57 小島健太郎 : > > お世話になっております。 > > 質問者です。 > > ご回答ありがとうございます。 > > > > みなさまからアドバイス頂いたように > > > > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > > > > の書き方で正常に動作することを確認することができました。 > > 大変助かりました。 > > また、アクティブレコードを使用することのメリットも大変参考になりました。 > > > > 今後ともよろしくお願いいたします。 > > > > 小島 > > > > > > **************************************** > > > > 2013年3月20日 18:27 齊藤保 : > >> 戸田様 > >> > >> ご教示ありがとうございます。 > >> とてもよく理解出来ました。 > >> 弊社でも少し研究してみます。 > >> > >> > >> > >> 2013年3月20日 15:27 戸田 広 : > >> > >>> こんにちは、戸田です。 > >>> > >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを > >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため > >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の > >>> メリット等ありましたら、ご教示いただけるとありがたいです。 > >>> > >>> > >>> 私がすぐ思いつく大きな違いは 2点ありまして、 > >>> その違いは、開発内容で言えば > >>> 初期条件が FIX して変わりにくい委託開発よりも > >>> 常に変化・柔軟な対応を求められる > >>> 自社パッケージの開発・展開などで利いてくると思っています。 > >>> > >>> > >>> 1. Active Record を使うと、仮に RDBMS が変わることになっても > >>> Model のコードを変更する必要がありません。 > >>> > >>> 2. CodeIgniter では、 Active Record を使うと > >>> /application/config/database.php で設定できる dbprefix が > >>> すべての SQL に対して自動的に付与されるようになっています。 > >>> dbprefix を変更する時は、 database.php を書き換えるだけで > >>> Model のコードを変更せずに、一元的に変更できます。 > >>> > >>> > >>> > >>> 以上です。 > >>> > >>> > >>> > >>> On 2013/03/20, at 12:56, 齊藤保 wrote: > >>> > >>> 横入りで失礼いたします。 > >>> JIN SOFTWAREという会社で、自社製品に > >>> CodeIgniterを使用させていただいている齊藤と申します。 > >>> よろしくお願いいたします。 > >>> > >>> アクティブレコードは弊社では使用しておらず、 > >>> SQLをダイレクトに組んで投げる方式をとっておりますが、 > >>> アクティブレコードが引数を元に最終的にはSQLを組み上げる > >>> ものであるならば、下記のような書き方になるのかと、 > >>> 推測します。 > >>> > >>> $this->db->select("*"); > >>> $this->db->from(t_daichou as d); > >>> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > >>> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > >>> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > >>> > >>> これによって内部的に > >>> select * from t_daichou as d > >>> left join m_staff as s1 on d.uke_id=s1.staff_id > >>> left join m_staff as s2 on d.tai_id=s2.staff_id > >>> left join m_staff as s3 on d.update_id=s3.staff_id > >>> > >>> というSQLが投げられるようならこれでいけるかと > >>> 思います。 > >>> > >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを > >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため > >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の > >>> メリット等ありましたら、ご教示いただけるとありがたいです。 > >>> > >>> ちなみに弊社では今後も自社製品(受注も含め)には全て > >>> CodeIgniterを使用する計画でおります。 > >>> session周りで若干バグ臭い動きもありますが、回避出来ない > >>> レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに > >>> 必要な機能が揃っていると実感しています。 > >>> > >>> 導入の際には日本CodeIgniterユーザ会の発信される情報を > >>> 頼りにさせていただきました。あらためて御礼申し上げます。 > >>> > >>> 今後ともよろしくお願い申し上げます。 > >>> > >>> > >>> > >>> > >>> 2013年3月19日 18:57 Kenichi Hayashi : > >>>> > >>>> 林です。こんにちは。 > >>>> > >>>> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 > >>>> > 何かそのような記述方法というものがあるのででしょうか? > >>>> > >>>> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 > >>>> > >>>> "m_staff as s1" > >>>> "m_staff as s2" > >>>> "m_staff as s3" > >>>> > >>>> のような感じで。 > >>>> > >>>> -- > >>>> Kenichi Hayashi > >>>> > >>>> _______________________________________________ > >>>> Codeigniter-users mailing list > >>>> Codeigniter-users @ lists.sourceforge.jp > >>>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >>> > >>> > >>> > >>> > >>> -- > >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >>> > >>> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B > >>> JIN SOFTWARE株式会社 > >>> 代表取締役 齊藤 保 > >>> TEL: 03-6915-1215 FAX: 03-6915-1216 > >>> Mobil: 090-4416-0111 > >>> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp > >>> > >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >>> _______________________________________________ > >>> Codeigniter-users mailing list > >>> Codeigniter-users @ lists.sourceforge.jp > >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >>> > >>> > >>> > >>> _______________________________________________ > >>> Codeigniter-users mailing list > >>> Codeigniter-users @ lists.sourceforge.jp > >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >>> > >> > >> > >> > >> -- > >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> > >> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B > >> JIN SOFTWARE株式会社 > >> 代表取締役 齊藤 保 > >> TEL: 03-6915-1215 FAX: 03-6915-1216 > >> Mobil: 090-4416-0111 > >> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp > >> > >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> > >> _______________________________________________ > >> Codeigniter-users mailing list > >> Codeigniter-users @ lists.sourceforge.jp > >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >> > > > > -- > > *********************************************** > 医療法人栄和会泉川病院 > 医療情報部 情報システム課 > 小島 健太郎 > E-mail:kojima157 @ gmail.com > Tel:0957-72-2017 > *********************************************** > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130321/3ed61ea4/attachment-0001.htm From kojima157 @ gmail.com Thu Mar 21 16:45:08 2013 From: kojima157 @ gmail.com (=?ISO-2022-JP?B?GyRCPi5FZzdyQkBPOhsoQg==?=) Date: Thu, 21 Mar 2013 16:45:08 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> Message-ID: ご回答ありがとうございます。 ご提案頂いたようにモデルを //Model function getList(){ $this->db->select("s1.staff_name,s2.staff_name,s3.staff_name"); $this->db->from(t_daichou as d); $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); return $this->db->get(); } のように修正しましたが、エラーの内容が変わりませんでした。 なのでView側で var_dump(rsList->result()); として中身を確認したところ、項目名は全て「s1.」「s2.」などがなくなった状態となっていました。 とり急ぎこれは「ムリ」と判断して、アクティブレコードを使わないく方向で解決しようと思います。 たびたびどうもありがとうございました。 (自分が大きな勘違いをしている可能性がありますが) もし同様のことを試していただいて、うまくいくやり方がありましたらご連絡いただけると幸いです。 小島 **************************** 2013年3月21日 15:32 tsuji kuni : > こんにちは。 > Kunitsujiともうします。 > > $List->s1.staff_name; > エラーの内容を見る限り、 > この書き方に問題がある、と言うことだとおもいます。 > SQLの書き方のs1. staff_nameというものが、phpでは理解できない、ということではないでしょうか。 > 細かく検証してないので、詳しくはわかりませんが、 > SELECT s1.staff_name as s1_staff_name > とか事前に変えておけば間違いはないと思います。 > そのような複数テーブルでの全ての項目を取り出した場合、結果がどういう形で取り出せているかは、 > var_damp等で確認してみれば、わかるかもしれませんね。 > > 2013/03/21 13:03 "小島健太郎" : > >> すみません、あとは解決できるつもりでしたが >> 解決できなかったので再度相談させてください。 >> >> 同問題でModel側で1つのマスタを複数回参照した後、 >> ControllerとViewで下記のような流れでデータを取り出そうと >> していますが、予想と異なりうまくいきませんでした。 >> >> //Model >> function getList(){ >> >> $this->db->select("*"); >> $this->db->from(t_daichou as d); >> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >> >> return $this->db->get(); >> } >> >> //Controller >> function listAll(){ >> $data[rsList] = $this->m_sample->getList(); >> $this->load->view('v_listAll',$data); >> } >> >> //View >> foreach($rsList->result() as $List){ >> //test >> echo $List->s1.staff_name; >> echo $List->s2.staff_name; >> echo $List->s3.staff_name; >> } >> >> エラーの内容 >> Undefineed property:stdClass::$s1 >> FIlename:libraries/Loader.php(673):eval()'d code >> >> これもまた何かViewでの記述方法があるのでしょうか? >> (Codeigniter以前の未熟な問題だったらすみません) >> たびたび申し訳ありません、宜しくお願い致します。 >> >> 小島 >> >> ********************************* >> >> 2013年3月21日 9:57 小島健太郎 : >> > お世話になっております。 >> > 質問者です。 >> > ご回答ありがとうございます。 >> > >> > みなさまからアドバイス頂いたように >> > >> > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >> > >> > の書き方で正常に動作することを確認することができました。 >> > 大変助かりました。 >> > また、アクティブレコードを使用することのメリットも大変参考になりました。 >> > >> > 今後ともよろしくお願いいたします。 >> > >> > 小島 >> > >> > >> > **************************************** >> > >> > 2013年3月20日 18:27 齊藤保 : >> >> 戸田様 >> >> >> >> ご教示ありがとうございます。 >> >> とてもよく理解出来ました。 >> >> 弊社でも少し研究してみます。 >> >> >> >> >> >> >> >> 2013年3月20日 15:27 戸田 広 : >> >> >> >>> こんにちは、戸田です。 >> >>> >> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >> >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため >> >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の >> >>> メリット等ありましたら、ご教示いただけるとありがたいです。 >> >>> >> >>> >> >>> 私がすぐ思いつく大きな違いは 2点ありまして、 >> >>> その違いは、開発内容で言えば >> >>> 初期条件が FIX して変わりにくい委託開発よりも >> >>> 常に変化・柔軟な対応を求められる >> >>> 自社パッケージの開発・展開などで利いてくると思っています。 >> >>> >> >>> >> >>> 1. Active Record を使うと、仮に RDBMS が変わることになっても >> >>> Model のコードを変更する必要がありません。 >> >>> >> >>> 2. CodeIgniter では、 Active Record を使うと >> >>> /application/config/database.php で設定できる dbprefix が >> >>> すべての SQL に対して自動的に付与されるようになっています。 >> >>> dbprefix を変更する時は、 database.php を書き換えるだけで >> >>> Model のコードを変更せずに、一元的に変更できます。 >> >>> >> >>> >> >>> >> >>> 以上です。 >> >>> >> >>> >> >>> >> >>> On 2013/03/20, at 12:56, 齊藤保 wrote: >> >>> >> >>> 横入りで失礼いたします。 >> >>> JIN SOFTWAREという会社で、自社製品に >> >>> CodeIgniterを使用させていただいている齊藤と申します。 >> >>> よろしくお願いいたします。 >> >>> >> >>> アクティブレコードは弊社では使用しておらず、 >> >>> SQLをダイレクトに組んで投げる方式をとっておりますが、 >> >>> アクティブレコードが引数を元に最終的にはSQLを組み上げる >> >>> ものであるならば、下記のような書き方になるのかと、 >> >>> 推測します。 >> >>> >> >>> $this->db->select("*"); >> >>> $this->db->from(t_daichou as d); >> >>> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> >>> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> >>> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >> >>> >> >>> これによって内部的に >> >>> select * from t_daichou as d >> >>> left join m_staff as s1 on d.uke_id=s1.staff_id >> >>> left join m_staff as s2 on d.tai_id=s2.staff_id >> >>> left join m_staff as s3 on d.update_id=s3.staff_id >> >>> >> >>> というSQLが投げられるようならこれでいけるかと >> >>> 思います。 >> >>> >> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >> >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため >> >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の >> >>> メリット等ありましたら、ご教示いただけるとありがたいです。 >> >>> >> >>> ちなみに弊社では今後も自社製品(受注も含め)には全て >> >>> CodeIgniterを使用する計画でおります。 >> >>> session周りで若干バグ臭い動きもありますが、回避出来ない >> >>> レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに >> >>> 必要な機能が揃っていると実感しています。 >> >>> >> >>> 導入の際には日本CodeIgniterユーザ会の発信される情報を >> >>> 頼りにさせていただきました。あらためて御礼申し上げます。 >> >>> >> >>> 今後ともよろしくお願い申し上げます。 >> >>> >> >>> >> >>> >> >>> >> >>> 2013年3月19日 18:57 Kenichi Hayashi : >> >>>> >> >>>> 林です。こんにちは。 >> >>>> >> >>>> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 >> >>>> > 何かそのような記述方法というものがあるのででしょうか? >> >>>> >> >>>> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 >> >>>> >> >>>> "m_staff as s1" >> >>>> "m_staff as s2" >> >>>> "m_staff as s3" >> >>>> >> >>>> のような感じで。 >> >>>> >> >>>> -- >> >>>> Kenichi Hayashi >> >>>> >> >>>> _______________________________________________ >> >>>> Codeigniter-users mailing list >> >>>> Codeigniter-users @ lists.sourceforge.jp >> >>>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >>> >> >>> >> >>> >> >>> >> >>> -- >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >>> >> >>> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B >> >>> JIN SOFTWARE株式会社 >> >>> 代表取締役 齊藤 保 >> >>> TEL: 03-6915-1215 FAX: 03-6915-1216 >> >>> Mobil: 090-4416-0111 >> >>> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp >> >>> >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >>> _______________________________________________ >> >>> Codeigniter-users mailing list >> >>> Codeigniter-users @ lists.sourceforge.jp >> >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >>> >> >>> >> >>> >> >>> _______________________________________________ >> >>> Codeigniter-users mailing list >> >>> Codeigniter-users @ lists.sourceforge.jp >> >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >>> >> >> >> >> >> >> >> >> -- >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >> >> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B >> >> JIN SOFTWARE株式会社 >> >> 代表取締役 齊藤 保 >> >> TEL: 03-6915-1215 FAX: 03-6915-1216 >> >> Mobil: 090-4416-0111 >> >> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp >> >> >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >> >> _______________________________________________ >> >> Codeigniter-users mailing list >> >> Codeigniter-users @ lists.sourceforge.jp >> >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >> >> >> >> >> -- >> >> _______________________________________________ >> Codeigniter-users mailing list >> Codeigniter-users @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > From kunitsuji @ gmail.com Thu Mar 21 17:25:00 2013 From: kunitsuji @ gmail.com (tsuji kuni) Date: Thu, 21 Mar 2013 17:25:00 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> Message-ID: あ、その場合なら、 s1.staff_name as s1_staff_name, と、別名にすれば、くべつてまきますよ。取り出すときは、 s1_staff_nameと 別名にした名前でとれます。 2013/03/21 16:45 "小島健太郎" : > ご回答ありがとうございます。 > ご提案頂いたようにモデルを > > //Model > function getList(){ > $this->db->select("s1.staff_name,s2.staff_name,s3.staff_name"); > $this->db->from(t_daichou as d); > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > return $this->db->get(); > } > > のように修正しましたが、エラーの内容が変わりませんでした。 > なのでView側で > > var_dump(rsList->result()); > > として中身を確認したところ、項目名は全て「s1.」「s2.」などがなくなった状態となっていました。 > > とり急ぎこれは「ムリ」と判断して、アクティブレコードを使わないく方向で解決しようと思います。 > たびたびどうもありがとうございました。 > (自分が大きな勘違いをしている可能性がありますが) > > もし同様のことを試していただいて、うまくいくやり方がありましたらご連絡いただけると幸いです。 > > 小島 > > **************************** > > 2013年3月21日 15:32 tsuji kuni : > > こんにちは。 > > Kunitsujiともうします。 > > > > $List->s1.staff_name; > > エラーの内容を見る限り、 > > この書き方に問題がある、と言うことだとおもいます。 > > SQLの書き方のs1. staff_nameというものが、phpでは理解できない、ということではないでしょうか。 > > 細かく検証してないので、詳しくはわかりませんが、 > > SELECT s1.staff_name as s1_staff_name > > とか事前に変えておけば間違いはないと思います。 > > そのような複数テーブルでの全ての項目を取り出した場合、結果がどういう形で取り出せているかは、 > > var_damp等で確認してみれば、わかるかもしれませんね。 > > > > 2013/03/21 13:03 "小島健太郎" : > > > >> すみません、あとは解決できるつもりでしたが > >> 解決できなかったので再度相談させてください。 > >> > >> 同問題でModel側で1つのマスタを複数回参照した後、 > >> ControllerとViewで下記のような流れでデータを取り出そうと > >> していますが、予想と異なりうまくいきませんでした。 > >> > >> //Model > >> function getList(){ > >> > >> $this->db->select("*"); > >> $this->db->from(t_daichou as d); > >> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > >> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > >> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > >> > >> return $this->db->get(); > >> } > >> > >> //Controller > >> function listAll(){ > >> $data[rsList] = $this->m_sample->getList(); > >> $this->load->view('v_listAll',$data); > >> } > >> > >> //View > >> foreach($rsList->result() as $List){ > >> //test > >> echo $List->s1.staff_name; > >> echo $List->s2.staff_name; > >> echo $List->s3.staff_name; > >> } > >> > >> エラーの内容 > >> Undefineed property:stdClass::$s1 > >> FIlename:libraries/Loader.php(673):eval()'d code > >> > >> これもまた何かViewでの記述方法があるのでしょうか? > >> (Codeigniter以前の未熟な問題だったらすみません) > >> たびたび申し訳ありません、宜しくお願い致します。 > >> > >> 小島 > >> > >> ********************************* > >> > >> 2013年3月21日 9:57 小島健太郎 : > >> > お世話になっております。 > >> > 質問者です。 > >> > ご回答ありがとうございます。 > >> > > >> > みなさまからアドバイス頂いたように > >> > > >> > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > >> > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > >> > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > >> > > >> > の書き方で正常に動作することを確認することができました。 > >> > 大変助かりました。 > >> > また、アクティブレコードを使用することのメリットも大変参考になりました。 > >> > > >> > 今後ともよろしくお願いいたします。 > >> > > >> > 小島 > >> > > >> > > >> > **************************************** > >> > > >> > 2013年3月20日 18:27 齊藤保 : > >> >> 戸田様 > >> >> > >> >> ご教示ありがとうございます。 > >> >> とてもよく理解出来ました。 > >> >> 弊社でも少し研究してみます。 > >> >> > >> >> > >> >> > >> >> 2013年3月20日 15:27 戸田 広 : > >> >> > >> >>> こんにちは、戸田です。 > >> >>> > >> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを > >> >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため > >> >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の > >> >>> メリット等ありましたら、ご教示いただけるとありがたいです。 > >> >>> > >> >>> > >> >>> 私がすぐ思いつく大きな違いは 2点ありまして、 > >> >>> その違いは、開発内容で言えば > >> >>> 初期条件が FIX して変わりにくい委託開発よりも > >> >>> 常に変化・柔軟な対応を求められる > >> >>> 自社パッケージの開発・展開などで利いてくると思っています。 > >> >>> > >> >>> > >> >>> 1. Active Record を使うと、仮に RDBMS が変わることになっても > >> >>> Model のコードを変更する必要がありません。 > >> >>> > >> >>> 2. CodeIgniter では、 Active Record を使うと > >> >>> /application/config/database.php で設定できる dbprefix が > >> >>> すべての SQL に対して自動的に付与されるようになっています。 > >> >>> dbprefix を変更する時は、 database.php を書き換えるだけで > >> >>> Model のコードを変更せずに、一元的に変更できます。 > >> >>> > >> >>> > >> >>> > >> >>> 以上です。 > >> >>> > >> >>> > >> >>> > >> >>> On 2013/03/20, at 12:56, 齊藤保 wrote: > >> >>> > >> >>> 横入りで失礼いたします。 > >> >>> JIN SOFTWAREという会社で、自社製品に > >> >>> CodeIgniterを使用させていただいている齊藤と申します。 > >> >>> よろしくお願いいたします。 > >> >>> > >> >>> アクティブレコードは弊社では使用しておらず、 > >> >>> SQLをダイレクトに組んで投げる方式をとっておりますが、 > >> >>> アクティブレコードが引数を元に最終的にはSQLを組み上げる > >> >>> ものであるならば、下記のような書き方になるのかと、 > >> >>> 推測します。 > >> >>> > >> >>> $this->db->select("*"); > >> >>> $this->db->from(t_daichou as d); > >> >>> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); > >> >>> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); > >> >>> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); > >> >>> > >> >>> これによって内部的に > >> >>> select * from t_daichou as d > >> >>> left join m_staff as s1 on d.uke_id=s1.staff_id > >> >>> left join m_staff as s2 on d.tai_id=s2.staff_id > >> >>> left join m_staff as s3 on d.update_id=s3.staff_id > >> >>> > >> >>> というSQLが投げられるようならこれでいけるかと > >> >>> 思います。 > >> >>> > >> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを > >> >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため > >> >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の > >> >>> メリット等ありましたら、ご教示いただけるとありがたいです。 > >> >>> > >> >>> ちなみに弊社では今後も自社製品(受注も含め)には全て > >> >>> CodeIgniterを使用する計画でおります。 > >> >>> session周りで若干バグ臭い動きもありますが、回避出来ない > >> >>> レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに > >> >>> 必要な機能が揃っていると実感しています。 > >> >>> > >> >>> 導入の際には日本CodeIgniterユーザ会の発信される情報を > >> >>> 頼りにさせていただきました。あらためて御礼申し上げます。 > >> >>> > >> >>> 今後ともよろしくお願い申し上げます。 > >> >>> > >> >>> > >> >>> > >> >>> > >> >>> 2013年3月19日 18:57 Kenichi Hayashi : > >> >>>> > >> >>>> 林です。こんにちは。 > >> >>>> > >> >>>> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 > >> >>>> > 何かそのような記述方法というものがあるのででしょうか? > >> >>>> > >> >>>> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 > >> >>>> > >> >>>> "m_staff as s1" > >> >>>> "m_staff as s2" > >> >>>> "m_staff as s3" > >> >>>> > >> >>>> のような感じで。 > >> >>>> > >> >>>> -- > >> >>>> Kenichi Hayashi > >> >>>> > >> >>>> _______________________________________________ > >> >>>> Codeigniter-users mailing list > >> >>>> Codeigniter-users @ lists.sourceforge.jp > >> >>>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >> >>> > >> >>> > >> >>> > >> >>> > >> >>> -- > >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >>> > >> >>> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B > >> >>> JIN SOFTWARE株式会社 > >> >>> 代表取締役 齊藤 保 > >> >>> TEL: 03-6915-1215 FAX: 03-6915-1216 > >> >>> Mobil: 090-4416-0111 > >> >>> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp > >> >>> > >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >>> _______________________________________________ > >> >>> Codeigniter-users mailing list > >> >>> Codeigniter-users @ lists.sourceforge.jp > >> >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >> >>> > >> >>> > >> >>> > >> >>> _______________________________________________ > >> >>> Codeigniter-users mailing list > >> >>> Codeigniter-users @ lists.sourceforge.jp > >> >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >> >>> > >> >> > >> >> > >> >> > >> >> -- > >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >> > >> >> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B > >> >> JIN SOFTWARE株式会社 > >> >> 代表取締役 齊藤 保 > >> >> TEL: 03-6915-1215 FAX: 03-6915-1216 > >> >> Mobil: 090-4416-0111 > >> >> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp > >> >> > >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ > >> >> > >> >> _______________________________________________ > >> >> Codeigniter-users mailing list > >> >> Codeigniter-users @ lists.sourceforge.jp > >> >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >> >> > >> > >> > >> > >> -- > > >> > >> _______________________________________________ > >> Codeigniter-users mailing list > >> Codeigniter-users @ lists.sourceforge.jp > >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > > > > > _______________________________________________ > > Codeigniter-users mailing list > > Codeigniter-users @ lists.sourceforge.jp > > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130321/5853f702/attachment-0001.htm From kojima157 @ gmail.com Thu Mar 21 17:48:34 2013 From: kojima157 @ gmail.com (=?ISO-2022-JP?B?GyRCPi5FZzdyQkBPOhsoQg==?=) Date: Thu, 21 Mar 2013 17:48:34 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?MRskQiREJE4lXiU5JT8kchsoQmxl?= =?iso-2022-jp?b?ZnRqb2luGyRCJEdKIz90MnM7Mj5IGyhC?= In-Reply-To: References: <30CBD4D4-B6E9-4B6C-B54C-FA2FB081E816@scissorhands.jpn.org> Message-ID: ありがとうございます おかげさまでうまくいきました。 大変参考になりました。 小島 ***************************** 2013年3月21日 17:25 tsuji kuni : > あ、その場合なら、 > > s1.staff_name as s1_staff_name, > と、別名にすれば、くべつてまきますよ。取り出すときは、 > s1_staff_nameと > 別名にした名前でとれます。 > > 2013/03/21 16:45 "小島健太郎" : > >> ご回答ありがとうございます。 >> ご提案頂いたようにモデルを >> >> //Model >> function getList(){ >> $this->db->select("s1.staff_name,s2.staff_name,s3.staff_name"); >> $this->db->from(t_daichou as d); >> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >> return $this->db->get(); >> } >> >> のように修正しましたが、エラーの内容が変わりませんでした。 >> なのでView側で >> >> var_dump(rsList->result()); >> >> として中身を確認したところ、項目名は全て「s1.」「s2.」などがなくなった状態となっていました。 >> >> とり急ぎこれは「ムリ」と判断して、アクティブレコードを使わないく方向で解決しようと思います。 >> たびたびどうもありがとうございました。 >> (自分が大きな勘違いをしている可能性がありますが) >> >> もし同様のことを試していただいて、うまくいくやり方がありましたらご連絡いただけると幸いです。 >> >> 小島 >> >> **************************** >> >> 2013年3月21日 15:32 tsuji kuni : >> > こんにちは。 >> > Kunitsujiともうします。 >> > >> > $List->s1.staff_name; >> > エラーの内容を見る限り、 >> > この書き方に問題がある、と言うことだとおもいます。 >> > SQLの書き方のs1. staff_nameというものが、phpでは理解できない、ということではないでしょうか。 >> > 細かく検証してないので、詳しくはわかりませんが、 >> > SELECT s1.staff_name as s1_staff_name >> > とか事前に変えておけば間違いはないと思います。 >> > そのような複数テーブルでの全ての項目を取り出した場合、結果がどういう形で取り出せているかは、 >> > var_damp等で確認してみれば、わかるかもしれませんね。 >> > >> > 2013/03/21 13:03 "小島健太郎" : >> > >> >> すみません、あとは解決できるつもりでしたが >> >> 解決できなかったので再度相談させてください。 >> >> >> >> 同問題でModel側で1つのマスタを複数回参照した後、 >> >> ControllerとViewで下記のような流れでデータを取り出そうと >> >> していますが、予想と異なりうまくいきませんでした。 >> >> >> >> //Model >> >> function getList(){ >> >> >> >> $this->db->select("*"); >> >> $this->db->from(t_daichou as d); >> >> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> >> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> >> $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >> >> >> >> return $this->db->get(); >> >> } >> >> >> >> //Controller >> >> function listAll(){ >> >> $data[rsList] = $this->m_sample->getList(); >> >> $this->load->view('v_listAll',$data); >> >> } >> >> >> >> //View >> >> foreach($rsList->result() as $List){ >> >> //test >> >> echo $List->s1.staff_name; >> >> echo $List->s2.staff_name; >> >> echo $List->s3.staff_name; >> >> } >> >> >> >> エラーの内容 >> >> Undefineed property:stdClass::$s1 >> >> FIlename:libraries/Loader.php(673):eval()'d code >> >> >> >> これもまた何かViewでの記述方法があるのでしょうか? >> >> (Codeigniter以前の未熟な問題だったらすみません) >> >> たびたび申し訳ありません、宜しくお願い致します。 >> >> >> >> 小島 >> >> >> >> ********************************* >> >> >> >> 2013年3月21日 9:57 小島健太郎 : >> >> > お世話になっております。 >> >> > 質問者です。 >> >> > ご回答ありがとうございます。 >> >> > >> >> > みなさまからアドバイス頂いたように >> >> > >> >> > $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> >> > $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> >> > $this->db->join("m_staff as s3","d.update_id=s3.staff_id","left"); >> >> > >> >> > の書き方で正常に動作することを確認することができました。 >> >> > 大変助かりました。 >> >> > また、アクティブレコードを使用することのメリットも大変参考になりました。 >> >> > >> >> > 今後ともよろしくお願いいたします。 >> >> > >> >> > 小島 >> >> > >> >> > >> >> > **************************************** >> >> > >> >> > 2013年3月20日 18:27 齊藤保 : >> >> >> 戸田様 >> >> >> >> >> >> ご教示ありがとうございます。 >> >> >> とてもよく理解出来ました。 >> >> >> 弊社でも少し研究してみます。 >> >> >> >> >> >> >> >> >> >> >> >> 2013年3月20日 15:27 戸田 広 : >> >> >> >> >> >>> こんにちは、戸田です。 >> >> >>> >> >> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >> >> >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため >> >> >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の >> >> >>> メリット等ありましたら、ご教示いただけるとありがたいです。 >> >> >>> >> >> >>> >> >> >>> 私がすぐ思いつく大きな違いは 2点ありまして、 >> >> >>> その違いは、開発内容で言えば >> >> >>> 初期条件が FIX して変わりにくい委託開発よりも >> >> >>> 常に変化・柔軟な対応を求められる >> >> >>> 自社パッケージの開発・展開などで利いてくると思っています。 >> >> >>> >> >> >>> >> >> >>> 1. Active Record を使うと、仮に RDBMS が変わることになっても >> >> >>> Model のコードを変更する必要がありません。 >> >> >>> >> >> >>> 2. CodeIgniter では、 Active Record を使うと >> >> >>> /application/config/database.php で設定できる dbprefix が >> >> >>> すべての SQL に対して自動的に付与されるようになっています。 >> >> >>> dbprefix を変更する時は、 database.php を書き換えるだけで >> >> >>> Model のコードを変更せずに、一元的に変更できます。 >> >> >>> >> >> >>> >> >> >>> >> >> >>> 以上です。 >> >> >>> >> >> >>> >> >> >>> >> >> >>> On 2013/03/20, at 12:56, 齊藤保 wrote: >> >> >>> >> >> >>> 横入りで失礼いたします。 >> >> >>> JIN SOFTWAREという会社で、自社製品に >> >> >>> CodeIgniterを使用させていただいている齊藤と申します。 >> >> >>> よろしくお願いいたします。 >> >> >>> >> >> >>> アクティブレコードは弊社では使用しておらず、 >> >> >>> SQLをダイレクトに組んで投げる方式をとっておりますが、 >> >> >>> アクティブレコードが引数を元に最終的にはSQLを組み上げる >> >> >>> ものであるならば、下記のような書き方になるのかと、 >> >> >>> 推測します。 >> >> >>> >> >> >>> $this->db->select("*"); >> >> >>> $this->db->from(t_daichou as d); >> >> >>> $this->db->join("m_staff as s1","d.uke_id=s1.staff_id","left"); >> >> >>> $this->db->join("m_staff as s2","d.tai_id=s2.staff_id","left"); >> >> >>> $this->db->join("m_staff as >> >> >>> s3","d.update_id=s3.staff_id","left"); >> >> >>> >> >> >>> これによって内部的に >> >> >>> select * from t_daichou as d >> >> >>> left join m_staff as s1 on d.uke_id=s1.staff_id >> >> >>> left join m_staff as s2 on d.tai_id=s2.staff_id >> >> >>> left join m_staff as s3 on d.update_id=s3.staff_id >> >> >>> >> >> >>> というSQLが投げられるようならこれでいけるかと >> >> >>> 思います。 >> >> >>> >> >> >>> 弊社では、上記の記述を見て分かる通り、アクティブレコードを >> >> >>> 使用するのとSQLを自前で組むことの差異を感じられなかったため >> >> >>> 使用しない選択をしたのですが、アクティブレコードを使用する事の >> >> >>> メリット等ありましたら、ご教示いただけるとありがたいです。 >> >> >>> >> >> >>> ちなみに弊社では今後も自社製品(受注も含め)には全て >> >> >>> CodeIgniterを使用する計画でおります。 >> >> >>> session周りで若干バグ臭い動きもありますが、回避出来ない >> >> >>> レベルでなく、何より敷居の低さ、手軽さが魅力で、軽量なのに >> >> >>> 必要な機能が揃っていると実感しています。 >> >> >>> >> >> >>> 導入の際には日本CodeIgniterユーザ会の発信される情報を >> >> >>> 頼りにさせていただきました。あらためて御礼申し上げます。 >> >> >>> >> >> >>> 今後ともよろしくお願い申し上げます。 >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> 2013年3月19日 18:57 Kenichi Hayashi : >> >> >>>> >> >> >>>> 林です。こんにちは。 >> >> >>>> >> >> >>>> > 要は同じテーブルをleftjoinで複数回参照する場合の書き方ですが、 >> >> >>>> > 何かそのような記述方法というものがあるのででしょうか? >> >> >>>> >> >> >>>> m_staffにそれぞれエイリアスを指定してみてはどうでしょう。 >> >> >>>> >> >> >>>> "m_staff as s1" >> >> >>>> "m_staff as s2" >> >> >>>> "m_staff as s3" >> >> >>>> >> >> >>>> のような感じで。 >> >> >>>> >> >> >>>> -- >> >> >>>> Kenichi Hayashi >> >> >>>> >> >> >>>> _______________________________________________ >> >> >>>> Codeigniter-users mailing list >> >> >>>> Codeigniter-users @ lists.sourceforge.jp >> >> >>>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> -- >> >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >>> >> >> >>> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B >> >> >>> JIN SOFTWARE株式会社 >> >> >>> 代表取締役 齊藤 保 >> >> >>> TEL: 03-6915-1215 FAX: 03-6915-1216 >> >> >>> Mobil: 090-4416-0111 >> >> >>> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp >> >> >>> >> >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >>> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >>> _______________________________________________ >> >> >>> Codeigniter-users mailing list >> >> >>> Codeigniter-users @ lists.sourceforge.jp >> >> >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >> >>> >> >> >>> >> >> >>> >> >> >>> _______________________________________________ >> >> >>> Codeigniter-users mailing list >> >> >>> Codeigniter-users @ lists.sourceforge.jp >> >> >>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >> >>> >> >> >> >> >> >> >> >> >> >> >> >> -- >> >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >> >> >> >> 〒167-0043 東京都杉並区上荻1-16-3 森谷ビル4B >> >> >> JIN SOFTWARE株式会社 >> >> >> 代表取締役 齊藤 保 >> >> >> TEL: 03-6915-1215 FAX: 03-6915-1216 >> >> >> Mobil: 090-4416-0111 >> >> >> Mail saitou @ jin-soft.jp WEB http://jin-soft.jp >> >> >> >> >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >> /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ >> >> >> >> >> >> _______________________________________________ >> >> >> Codeigniter-users mailing list >> >> >> Codeigniter-users @ lists.sourceforge.jp >> >> >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> >> >> >> >> >> >> >> >> >> >> -- >> >> >> >> >> _______________________________________________ >> >> Codeigniter-users mailing list >> >> Codeigniter-users @ lists.sourceforge.jp >> >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> > >> > >> > _______________________________________________ >> > Codeigniter-users mailing list >> > Codeigniter-users @ lists.sourceforge.jp >> > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users >> > >> >> _______________________________________________ >> Codeigniter-users mailing list >> Codeigniter-users @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > From qqb25mgd @ trad.ocn.ne.jp Wed Mar 27 17:59:16 2013 From: qqb25mgd @ trad.ocn.ne.jp (t.koyama) Date: Wed, 27 Mar 2013 17:59:16 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?T2JqZWN0IE5vdCBGb3VuZCAhIA==?= =?iso-2022-jp?b?GyRCJCw9UCRrJE4kTzI/OE4kRyQ3JGckJiQrGyhC?= Message-ID: <000101ce2ac9$60144fa0$203ceee0$@ocn.ne.jp> xampp(win32) 1.8.1 に codelgniter 2.0.3-1 をインストールしてTest していま す。 フォルダ構成は htodocs/ php/ 直下に system/ と webapi / が並列にあり、 webapi / 直下に  application/ と index.php が並列に存在します。 index.phpの設定は $system_path = '../system'; $application_folder = './application'; としていま す。 この状態でユーザーガイド・フォームバリデーションユーザーガイド   http://codeigniter.jp/user_guide_ja/libraries/form_validation.html の 「フォームバリデーション(検証)チュートリアル」 記載の入力フォーム myform.php と成功ページ formsuccess.php を application/views/ フォルダに、 コントローラ form.php を application/controllers/ フォルダの中に保存しまし た。 ブラウザで  http://localhost/php/webapi/index.php/form/ [Enter] とすると、フォームが表示 されます。 ところが、各欄空白のまま送信しても、あるいは、各欄データ記入して送信しても、 URI が http://localhost/php/webaspi/index.php/form となって、Error 404 が出てしま います。 ( webapi が webaspi となり s が付加されている)。 これは何故でしょう か?  不具合を解決するにはどのようにすれば良いでしょうか? 因みに、コントローラ wel.php を次のように書き、 load->view('welcome_message'); } } これで applications/views/ フォルダにある welcome_message.php を呼び出して みると、 http://localhost/php/webapi/index.php/wel/index となって、「Codinalgnite へ ようこそ!」の画面は表示されます。 ******************************** -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130327/ff07ae01/attachment.htm From kunitsuji @ gmail.com Wed Mar 27 18:03:10 2013 From: kunitsuji @ gmail.com (tsuji kuni) Date: Wed, 27 Mar 2013 18:03:10 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?T2JqZWN0IE5vdCBGb3VuZCAhIA==?= =?iso-2022-jp?b?GyRCJCw9UCRrJE4kTzI/OE4kRyQ3JGckJiQrGyhC?= In-Reply-To: <000101ce2ac9$60144fa0$203ceee0$@ocn.ne.jp> References: <000101ce2ac9$60144fa0$203ceee0$@ocn.ne.jp> Message-ID: kunitsujiです。 移動したら、URLがかわってるということですかね? http://localhost/php/webaspi/index.php/form となって、Error 404 が出てしまいます。**** ( webapi が webaspi となり s が付加されている)。 これは何故でしょうか? **** 不具合を解決するにはどのようにすれば良いでしょうか? であれば、config.phpでのサイトのURLの設定の記述が間違っているのではないでしょうか? 2013年3月27日 17:59 t.koyama : > xampp(win32) 1.8.1 に codelgniter 2.0.3-1 をインストールしてTest しています。**** > > フォルダ構成は htodocs/ php/ 直下に system/ と webapi / が並列にあり、**** > > webapi / 直下に application/ と index.php が並列に存在します。**** > > index.phpの設定は $system_path = '../system'; **** > > $application_folder = './application'; としています。** > ** > > ** ** > > この状態でユーザーガイド・フォームバリデーションユーザーガイド**** > > http://codeigniter.jp/user_guide_ja/libraries/form_validation.htmlの「フォームバリデーション > (検証)チュートリアル」**** > > 記載の入力フォーム myform.php と成功ページ formsuccess.php を application/views/ フォルダに、** > ** > > コントローラ form.php を application/controllers/ フォルダの中に保存しました。**** > > ** ** > > ブラウザで http://localhost/php/webapi/index.php/form/ [Enter] > とすると、フォームが表示されます。**** > > ところが、各欄空白のまま送信しても、あるいは、各欄データ記入して送信しても、URI が**** > > http://localhost/php/webaspi/index.php/form となって、Error 404 が出てしまいます。**** > > ( webapi が webaspi となり s が付加されている)。 これは何故でしょうか? **** > > 不具合を解決するにはどのようにすれば良いでしょうか?**** > > ** ** > > 因みに、コントローラ wel.php を次のように書き、**** > > **** > > class Wel extends CI_Controller {**** > > public function index()**** > > {**** > > $this->load->view('welcome_message');**** > > }**** > > }**** > > これで applications/views/ フォルダにある welcome_message.php を呼び出してみると、**** > > http://localhost/php/webapi/index.php/wel/index となって、「Codinalgnite へようこそ! > 」の画面は表示されます。**** > > ** ** > > ************************************ > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130327/cae6da24/attachment-0001.htm From qqb25mgd @ trad.ocn.ne.jp Wed Mar 27 20:06:31 2013 From: qqb25mgd @ trad.ocn.ne.jp (t.koyama) Date: Wed, 27 Mar 2013 20:06:31 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?T2JqZWN0IE5vdCBGb3VuZCAhIA==?= =?iso-2022-jp?b?GyRCJCw9UCRrJE4kTzI/OE4kRyQ3JGckJiQrGyhC?= In-Reply-To: References: <000101ce2ac9$60144fa0$203ceee0$@ocn.ne.jp> Message-ID: <000901ce2adb$23c26570$6b473050$@ocn.ne.jp> Kunitsuji 様 ご指摘の通り、 config.php 設定時のミスプリがありました。 修正したところ、無事、正常に view が表示されました。 ありがとうございます。 From: codeigniter-users-bounces @ lists.sourceforge.jp [mailto:codeigniter-users-bounces @ lists.sourceforge.jp] On Behalf Of tsuji kuni Sent: Wednesday, March 27, 2013 6:03 PM To: codeigniter-users @ lists.sourceforge.jp Subject: Re: [Codeigniter-users] Object Not Found ! が出るのは何故でしょうか kunitsujiです。 移動したら、URLがかわってるということですかね? http://localhost/php/webaspi/index.php/form となって、Error 404 が出てしま います。 ( webapi が webaspi となり s が付加されている)。 これは何故でしょう か?  不具合を解決するにはどのようにすれば良いでしょうか? であれば、config.phpでのサイトのURLの設定の記述が間違っているのではないで しょうか? 2013年3月27日 17:59 t.koyama : xampp(win32) 1.8.1 に codelgniter 2.0.3-1 をインストールしてTest していま す。 フォルダ構成は htodocs/ php/ 直下に system/ と webapi / が並列にあり、 webapi / 直下に  application/ と index.php が並列に存在します。 index.phpの設定は $system_path = '../system'; $application_folder = './application'; としていま す。 この状態でユーザーガイド・フォームバリデーションユーザーガイド  http://codeigniter.jp/user_guide_ja/libraries/form_validation.html の 「フォームバリデーション(検証)チュートリアル」 記載の入力フォーム myform.php と成功ページ formsuccess.php を application/views/ フォルダに、 コントローラ form.php を application/controllers/ フォルダの中に保存しまし た。 ブラウザで http://localhost/php/webapi/index.php/form/ [Enter] とすると、 フォームが表示されます。 ところが、各欄空白のまま送信しても、あるいは、各欄データ記入して送信しても、 URI が http://localhost/php/webaspi/index.php/form となって、Error 404 が出てしま います。 ( webapi が webaspi となり s が付加されている)。 これは何故でしょう か?  不具合を解決するにはどのようにすれば良いでしょうか? 因みに、コントローラ wel.php を次のように書き、 load->view('welcome_message'); } } これで applications/views/ フォルダにある welcome_message.php を呼び出して みると、 http://localhost/php/webapi/index.php/wel/index となって、「Codinalgnite へ ようこそ!」の画面は表示されます。 ******************************** _______________________________________________ Codeigniter-users mailing list Codeigniter-users @ lists.sourceforge.jp http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130327/8f9a2276/attachment.htm From qqb25mgd @ trad.ocn.ne.jp Fri Mar 29 20:47:38 2013 From: qqb25mgd @ trad.ocn.ne.jp (t.koyama) Date: Fri, 29 Mar 2013 20:47:38 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?GyRCJTMlcyU5JUglaSUvJT8bKEI=?= =?iso-2022-jp?b?GyRCJE49cSQtSn0kSyREJCQkRhsoQg==?= Message-ID: <000001ce2c73$36e76a80$a4b63f80$@ocn.ne.jp> 今一、ピンと来ないので、つかぬことをうかがいます。 CodeIgniter ユーザガイド 日本語版 Version 2.0.3 によれば、 フォームバリデーションクラスのコントローラー form.php の書き方として、 load->helper(array('form', 'url')); $this->load->library('form_validation'); if ($this->form_validation->run() == FALSE){ $this->load->view('myform'); }else{ $this->load->view('formsuccess'); } } } ?> と例示されています。 この form.php にコンストラクタを付け加えて書くとすれば、どのように書けば良い のでしょうか? load->helper(array('form', 'url')); $this->load->library('form_validation'); if ($this->form_validation->run() == FALSE){ $this->load->view('myform'); }else{ $this->load->view('formsuccess'); } } } ?> と、並記の形で書けば良いのでしょうか? -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130329/f8e5441b/attachment.htm From kunitsuji @ gmail.com Fri Mar 29 23:21:30 2013 From: kunitsuji @ gmail.com (tsuji kuni) Date: Fri, 29 Mar 2013 23:21:30 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?GyRCJTMlcyU5JUglaSUvJT8bKEI=?= =?iso-2022-jp?b?GyRCJE49cSQtSn0kSyREJCQkRhsoQg==?= In-Reply-To: <000001ce2c73$36e76a80$a4b63f80$@ocn.ne.jp> References: <000001ce2c73$36e76a80$a4b63f80$@ocn.ne.jp> Message-ID: Kunitsujiともうします。 かかれている形でいいと思います。 2013/03/29 20:47 "t.koyama" : > 今一、ピンと来ないので、つかぬことをうかがいます。**** > > ** ** > > CodeIgniter ユーザガイド 日本語版 Version 2.0.3 によれば、**** > > フォームバリデーションクラスのコントローラー form.php の書き方として、**** > > > class Form extends CI_Controller { **** > > function index() {**** > > $this->load->helper(array('form', > 'url')); **** > > > $this->load->library('form_validation'); > **** > > if ($this->form_validation->run() == FALSE){** > ** > > $this->load->view('myform');**** > > }else{**** > > > $this->load->view('formsuccess');**** > > }**** > > }**** > > }**** > > ?>**** > > と例示されています。**** > > この form.php にコンストラクタを付け加えて書くとすれば、どのように書けば良いのでしょうか?**** > > > class Form extends CI_Controller {**** > > public function __construct() {**** > > parent::__construct();**** > > } **** > > function index() {**** > > $this->load->helper(array('form', > 'url')); **** > > > $this->load->library('form_validation'); > **** > > if ($this->form_validation->run() == FALSE){** > ** > > $this->load->view('myform');**** > > }else{**** > > > $this->load->view('formsuccess');**** > > }**** > > }**** > > }**** > > ?>**** > > と、並記の形で書けば良いのでしょうか?**** > > ** ** > > _______________________________________________ > Codeigniter-users mailing list > Codeigniter-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > > -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130329/8384c714/attachment-0001.htm From qqb25mgd @ trad.ocn.ne.jp Sat Mar 30 08:53:53 2013 From: qqb25mgd @ trad.ocn.ne.jp (t.koyama) Date: Sat, 30 Mar 2013 08:53:53 +0900 Subject: [Codeigniter-users] =?iso-2022-jp?b?GyRCJTMlcyU5JUglaSUvJT8bKEI=?= =?iso-2022-jp?b?GyRCJE49cSQtSn0kSyREJCQkRhsoQg==?= In-Reply-To: References: <000001ce2c73$36e76a80$a4b63f80$@ocn.ne.jp> Message-ID: <000c01ce2cd8$ab810300$02830900$@ocn.ne.jp> Kunitsuji様 早速のご回答を頂き、ありがとうございました。 理解できました。 重ねて感謝です。 ::: t.koyama ::: From: codeigniter-users-bounces @ lists.sourceforge.jp [mailto:codeigniter-users-bounces @ lists.sourceforge.jp] On Behalf Of tsuji kuni Sent: Friday, March 29, 2013 11:22 PM To: codeigniter-users @ lists.sourceforge.jp Subject: Re: [Codeigniter-users] コンストラクタの書き方について Kunitsujiともうします。 かかれている形でいいと思います。 2013/03/29 20:47 "t.koyama" : 今一、ピンと来ないので、つかぬことをうかがいます。 CodeIgniter ユーザガイド 日本語版 Version 2.0.3 によれば、 フォームバリデーションクラスのコントローラー form.php の書き方として、 load->helper(array('form', 'url')); $this->load->library('form_validation'); if ($this->form_validation->run() == FALSE){ $this->load->view('myform'); }else{ $this->load->view('formsuccess'); } } } ?> と例示されています。 この form.php にコンストラクタを付け加えて書くとすれば、どのように書けば良い のでしょうか? load->helper(array('form', 'url')); $this->load->library('form_validation'); if ($this->form_validation->run() == FALSE){ $this->load->view('myform'); }else{ $this->load->view('formsuccess'); } } } ?> と、並記の形で書けば良いのでしょうか? _______________________________________________ Codeigniter-users mailing list Codeigniter-users @ lists.sourceforge.jp http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/codeigniter-users/attachments/20130330/3eb04950/attachment.htm