【PHP】フレームワーク CakePHP 13ホール目【v2.0】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/11/09(水) 01:05:10.60ID:???CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※他フレームワークとの比較等はスレ違いです
テンプレは>>1-5くらい
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
http://github.com/cakephp
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
前スレ
【PHP】フレームワーク CakePHP 12ホール目【笑】
http://hibari.2ch.net/test/read.cgi/php/1309505626/
0724nobodyさん
2012/03/05(月) 10:09:01.94ID:???つうかペース早いな
0725nobodyさん
2012/03/05(月) 19:23:27.93ID:???公式サイトも変わってCookBookもなんか綺麗になったー
マイグレーションガイドによると.htaccessの変更が必要という、
アップグレード時に見落としがちな変更があるのにリリース文では触れられてないな・・・
http://book.cakephp.org/2.0/en/appendices/2-1-migration-guide.html
http://bakery.cakephp.org/articles/lorenzo/2012/03/05/cakephp_2_1_0_just_landed
0726nobodyさん
2012/03/05(月) 20:11:55.24ID:???0727nobodyさん
2012/03/05(月) 20:59:06.49ID:???2.0.xは今までのバージョン系列で一番寿命が短いし、下手したら1.3.xより今後のアップデートが期待できない気がする
0729nobodyさん
2012/03/05(月) 23:42:52.00ID:WIGrArNU自分の一つ上のレスも見ようぜ!
0730nobodyさん
2012/03/06(火) 01:02:47.42ID:???2.0系は結局書籍も出ずじまいか。
0731nobodyさん
2012/03/06(火) 03:40:14.04ID:???0733nobodyさん
2012/03/06(火) 22:01:24.25ID:???2.0は短命だったね・・・
本が出ないのもしょうが無いというか、出してしまっていたらすごい中途半端なタイミングになっていたと思う
1.2 2008/12
1.3 2010/04
2.0 2011/10
2.1 2012/03
0734nobodyさん
2012/03/06(火) 23:43:25.94ID:???普通にqueryでベタSQL投げないと駄目?
0735nobodyさん
2012/03/07(水) 18:16:47.78ID:???0736nobodyさん
2012/03/07(水) 22:24:25.29ID:???俺はSNSで3ヶ月。
0737nobodyさん
2012/03/08(木) 08:15:28.96ID:???2ヶ月3000万円
0739nobodyさん
2012/03/08(木) 10:16:55.80ID:???国のシステムだからそんなに凝ったことはしてないだろうけど、
どんな機能があって2ヶ月なんだろ?
0740nobodyさん
2012/03/09(金) 11:27:56.60ID:???0741nobodyさん
2012/03/09(金) 11:43:23.36ID:???0742nobodyさん
2012/03/09(金) 12:57:11.13ID:???0743nobodyさん
2012/03/09(金) 13:13:11.92ID:???0744nobodyさん
2012/03/09(金) 14:27:27.18ID:???0745nobodyさん
2012/03/09(金) 16:18:01.14ID:???0746nobodyさん
2012/03/09(金) 16:24:51.22ID:???0747nobodyさん
2012/03/09(金) 16:51:22.89ID:???エイリアス使ってるバカってまだいたんだwwwwwwwwwwww
0748nobodyさん
2012/03/09(金) 16:54:34.34ID:???0749nobodyさん
2012/03/09(金) 17:40:19.41ID:???0750nobodyさん
2012/03/09(金) 17:54:30.33ID:???繋げるにはどうすればいいのでしょうか?
0751nobodyさん
2012/03/11(日) 02:18:22.14ID:???0752nobodyさん
2012/03/11(日) 10:46:34.94ID:???PHPSESSIDをくっつけたい(?PHPSESSID=hoge)んだけど、どうしたらいいかな
コアの$html->link()を書き換えたりしたらいけそうだけど、
もっとスマートな方法ある?
0753nobodyさん
2012/03/11(日) 11:29:49.63ID:???自己解決
'options' =>
array(
'?' => array(session_name() => $this->Session->id())
)
こうした
0754nobodyさん
2012/03/11(日) 16:36:31.78ID:???CakePHPでのCookieを書き込む際に暗号化したデータをJavaScriptで復号するロジックはありますか?
0755nobodyさん
2012/03/11(日) 22:15:13.63ID:+TvrXerPいいからCakePHPで複合主キーに対応する為のプラグインを誰か書けや。
な?
0756nobodyさん
2012/03/11(日) 23:31:02.18ID:???ソース見る限り、Security::$typeで設定した暗号方式でSecurity.salt使って
それをbase64_encodeして暗号化してるっぽいので
それを逆に処理すればJavascriptでも復号化できると思う。
詳しくはcookie componentのソース見て。
だけど、複合に必要なキーのSecurity.saltをJavascriptに
書かないといけないので、そもそもなんで暗号化したんだって
ことになるので設計を見なおしたほうがいい。
0757nobodyさん
2012/03/12(月) 00:06:16.05ID:uEcRtOSh老婆心ながら、>>756が言っていることを強調しておく。
設計を見直せ。salt の意味がない。
0758nobodyさん
2012/03/12(月) 13:24:30.73ID:???@以前のユーザ作成してるのかな?noreplyみたいな
存在しないアカウントをreturn-pathに設定してメール送ってるのかな?
0759nobodyさん
2012/03/12(月) 16:18:31.39ID:???複数チェックボックスを使って、チェックした項目をDBに登録し、
後から検索できるようにしたいと思います。疑問は2点。
1:テーブルの1つのカラム内にカンマ区切りで登録するのでしょうか?
2:その場合、conditionsで検索できるのでしょうか?
0760nobodyさん
2012/03/12(月) 17:53:27.28ID:???テーブルに保存してますか?
afterFindなどで組み立ててますか?
それとも、ビューでその都度組み立ててますか?
0761nobodyさん
2012/03/12(月) 18:10:15.80ID:???0763nobodyさん
2012/03/12(月) 19:58:56.46ID:???どうやって検索するのでしょうか?
1カラムにカンマ区切りのレコードがあったとして、
それをCakeのconditionsで検索する方法がわかりません
0765nobodyさん
2012/03/12(月) 21:33:33.63ID:???0767nobodyさん
2012/03/12(月) 22:27:22.65ID:???find時にconditionsで絞り込むのは無理みたいですね・・。
>>766
はい。それは分かりますが、登録されている値が
「1,10,11」みたいな場合、likeは利かないと思います。
0768nobodyさん
2012/03/12(月) 23:32:17.51ID:???>>757
ありがとうございます。
サーバサイドのJSでの実装を考えているため、種が漏れることはないと考えています。
ご回答/ご指摘ありがとうございました。
0769nobodyさん
2012/03/12(月) 23:45:06.08ID:???ソート順さえあっていれば、1かつ10かつ11なら column LIKE '%1,%10,%11,%' とかでいけるんじゃないの
ソートしてないのなら column LIKE '%1,%' AND column LIKE '%10,%' AND column LIKE '%11,%'
0770nobodyさん
2012/03/12(月) 23:58:59.56ID:???さすがにひどい。
>>767
方法1.「ビット演算 チェックボックス」でぐぐれ。
方法2.項目ごとにカラムを分ける。
0771nobodyさん
2012/03/13(火) 02:48:15.55ID:???http://www.1x1.jp/blog/2012/03/mass_assignment_vulnerability_cakephp.html
0772nobodyさん
2012/03/13(火) 10:18:36.45ID:???もっと頭使おうぜ
1,10,11
ではなくて
001,010,011
みたいにすれば、like %001% で検索できるだろ。
あくまで1例だから、データに何がくるかによって
良い実装があると思うので、よく考えて。
0773nobodyさん
2012/03/13(火) 12:48:03.37ID:???0774760
2012/03/13(火) 13:20:03.94ID:???ビューが条件分岐だらけになりませんか?
if (!empty($post['Post']['image_filename']):
....
else:
こんな風に。
$post->getImageUrl(array('mobile' => true));
みたいに書けたらいいんですけどねぇ・・・
0776nobodyさん
2012/03/13(火) 13:45:55.38ID:???そうなんですけど、
モデルの返り値が配列じゃなくてエンティティなら、
もっとスマートに書けるのに、と思いまして・・・
これがCake流なんですかね
0777nobodyさん
2012/03/13(火) 13:53:09.13ID:???その考えはありませんでした。勉強になります!
ビット演算の事を>>770さんから教えていただき勉強しましたが、
数学が苦手な私の頭ではさっぱりで、
単純にテーブルを分ける(Cake的にhasMany)を考えていました。
テーブルを分けて正規化する方法も一般的なようですが、
正直、チェックボックスを使用するカラムが必要な度に
テーブルを生成するのもどうかと思い、悩んでいました。
772さんの方法も視野に入れて設計面を工夫してみます。
みなさん、ありがとうございました。
0778nobodyさん
2012/03/13(火) 22:24:16.17ID:???遅くなるだろw
0780776
2012/03/14(水) 03:34:06.02ID:???今はYiiを調べてる。
0781大便
2012/03/15(木) 08:30:03.53ID:UhuckWxP早速ペニーオークションで破産しました。
0783nobodyさん
2012/03/15(木) 16:11:21.14ID:???お問い合わせフォームとか会員専用ページとか
どのサイトでもよく使うファイルをプラグインにまとめるべきか否か悩みます。
0786nobodyさん
2012/03/15(木) 21:56:56.36ID:???0787nobodyさん
2012/03/16(金) 00:00:22.47ID:???0788nobodyさん
2012/03/16(金) 09:41:57.89ID:???俺はまとめてるよ。
ログイン
リマインダー
新規会員登録
アフィリエイト機能とか。
うまく作れば使いまわし効く。
全部プラグインでやれるから
最近やることなくなった。
0790nobodyさん
2012/03/16(金) 10:41:05.32ID:pS4d35yuログインすると
$this->Session->write('user',$user_id);
のようにコントローラ内のSessionに情報を保存していますが、これが数時間でread()しても値が取れなくなるようです。
core.php内で
Configure::write('Session.save','cake');
Configure::write('Session.timeout', (24*60*60*7));
ini_set('session.gc_probability', 1);
ini_set('session.gc_divisor', 1000);
ini_set('session.cookie_lifetime', (24*60*60*7));
ini_set('session.gc_maxlifetime', (24*60*60*7));
Configure::write('Security.level', 'low');
としているので、1週間持って欲しいのですがダメみたいです。
何か方法はありますでしょうか。
0791nobodyさん
2012/03/16(金) 20:57:57.62ID:???具体的にいうと、
プラグインの中に
ビヘイビアと、コンポーネントを作る。
それをusercontrollerとmodelに読み込ませる感じ。
0794nobodyさん
2012/03/17(土) 19:37:12.80ID:???または修正版のサイトとかあれば
0795nobodyさん
2012/03/19(月) 15:45:40.35ID:???これって結局安いの高いの
0796nobodyさん
2012/03/19(月) 16:50:34.02ID:???さくらインターネットのメールサーバにQdmail使ってSMTP AUTHでメール送信してるんだけど、
何回か(4,5回が多い)に1回だけメール送れないんだよな
QdSmtp error: No Responce SYSTEM TIME OUT line -> 603
QdSmtp error: getMessage error line -> 543
QdSmtp error: Error From setting line -> 488
QdSmtp error: Send Data Error or Auth Error line -> 415
Qdmail error: Qdmail Version 1.2.6b ,PHP Version 5.2.11
Qdmail error: OS WINNT ; PHP Version 5.2.11 ; Qdmail version 1.2.6b
php.ini status: mb_language = Japanese ; mb_internal_encoding = UTF-8 ; mb_detect_order = ASCII,JIS,UTF-8,EUC-JP,SJIS
Qdmail Status debug: 0, log: 3, errorlog: 0
Qdmail error: No send . Because SMTP mail method replied error line -> 2190
Qdmail error: Send Error line -> 2115
Qdmail error: Error happen, see upper line -> 2194
Qdmail error: Send Error line -> 2115
画面にこんなエラーが吐き出されてメール送信されない。
エラー行だって言われてるところを見てもエラー行を出力する処理しか書いてなくて
どういうエラーが起こったのか全然わからない・・・。
同じような事になった人いないかな?
0797nobodyさん
2012/03/19(月) 17:26:02.77ID:???0798nobodyさん
2012/03/19(月) 17:27:57.85ID:???すまん、一応CakePHPのコンポーネントとして使ってるし、
Cake使ってる人でメール送信する人はこれ使ってる人多そうだからここで聞いてみた
PHP質問スレで聞いたが、そこでもスレ違いだとさ・・・。
ライブラリの質問できる場所無いみたいなんだよな
0799nobodyさん
2012/03/19(月) 19:02:54.22ID:???そうじゃなくて、ライブラリ自体、公式でサポートしてるんだから
そっち行けってことっでしょ。エラーメッセージすら読めてないし。
フレームワーク以前の問題だ
0800nobodyさん
2012/03/20(火) 05:09:01.21ID:???エラーメッセージもいいかげんだし。
0802nobodyさん
2012/03/20(火) 22:24:51.38ID:???メール送信なんて今まで作っていたのあるだろ。
0803nobodyさん
2012/03/20(火) 23:14:24.46ID:???・HTMLメール
・添付ファイル
こういうの対応しようとすると結構自作でやるのはな、、、
0804nobodyさん
2012/03/21(水) 12:11:52.99ID:???フレームワーク使う前に作っていたものがあるだろ。それ使えよ。
0805nobodyさん
2012/03/21(水) 18:27:13.50ID:???0806nobodyさん
2012/03/21(水) 20:09:46.98ID:???0808nobodyさん
2012/03/21(水) 23:19:44.62ID:ZAI6cSPi'fields' => array(
'Foo.id',
'Foo.firstname'
)))));
とすると、
$form->select("Foo.bar", array($select), 0, array('empty' => null))
で
select要素の中に
<option value="Fooのid">Fooのfirstnameの中身</option>
というのができるんですが、
これを
<option value="Fooのid">Fooのsecondnameの中身 Fooのfirstnameの中身</option>
としたいんですが、find('list')は一対でしか使えないんでしょうか?
やり方をご教示いただけたら幸いです
0809808
2012/03/21(水) 23:27:53.96ID:ZAI6cSPiallで読んで、
foreach ($select as $value) {
$talent_data[$value['Foo']['id']] = $value['Foo']['secondname'] . ' ' . $value['Foo']['firstname'];
}
$this->set('select', $select);
でlistで作ったoption群と同じ形式のリストデータが生成されました
0810nobodyさん
2012/03/22(木) 00:13:00.01ID:???urlが空でもよくて、入っていれば正しいURLか判定する、という風にするやり方がありましたらお教えください
0811nobodyさん
2012/03/22(木) 00:20:23.77ID:???0814nobodyさん
2012/03/22(木) 10:58:28.03ID:???煽る意味がわからん。他人のライブラリは使えないと言い、
自分でも自作できないとかワガママすぎるだろ。
0816nobodyさん
2012/03/23(金) 00:01:31.13ID:???自分でコンポーネントやヘルパー作れるようになってるんだから。
0817nobodyさん
2012/03/23(金) 10:24:37.19ID:???0818nobodyさん
2012/03/23(金) 11:50:45.97ID:???0819nobodyさん
2012/03/23(金) 13:36:50.00ID:???いきなりフレームワーク使い出したというのか?
大体は参考書やらネットの情報やらで適当なプログラム作って、
慣れた後に効率化を求めてフレームワークを使い出すと思うんだが。
0820nobodyさん
2012/03/23(金) 13:42:01.91ID:???文字化けしたり、上手く送れなくてネットで調べながら
自分なりの「メール送信ライブラリ」を作ると思うんだが。
で、その後に添付ファイルやらHTMLメールやらを送信したくなって
qdmailのような他人が作ったライブラリを探すというのなら分かるよ。
でも、いきなり上記の部分すっ飛ばしてCake使って
「上手く動きません><」とか言われても、勉強不足以外の何者でもないだろ。
0821nobodyさん
2012/03/23(金) 16:25:24.36ID:???0822nobodyさん
2012/03/24(土) 15:01:00.43ID:oSWZUaYy0823nobodyさん
2012/03/24(土) 18:51:05.67ID:???■ このスレッドは過去ログ倉庫に格納されています