トップページphp
995コメント290KB

【PHP】フレームワーク CakePHP 13ホール目【v2.0】

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん2011/11/09(水) 01:05:10.60ID:???
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
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/
0842nobodyさん2012/03/28(水) 23:15:51.51ID:???
>>841
管理画面があったとして、
ユーザID・1が投稿したお知らせのID2を見たいとする。

ピュアPHPなら、edit.php?user_id=1&id=2だよな?
Cakeなら/edit/1/2か/edit/user_id:1/id:2だな。
セッションに含めて持ち回る方法もあるけど、
毎回セッションに入れるのはおかしくないか?って思うからさ。
0843nobodyさん2012/03/28(水) 23:24:56.61ID:???
edit.php?id=2
じゃだめなの?
0844nobodyさん2012/03/28(水) 23:32:10.02ID:???
ピュアPHPだとそれで良いんだよ。でもCakeだと迷うだろ?
Cakeの書き方で言えば、
/news/add/1  この1はuser_idの1
/news/edit/2  この2はidの2
URLを見ただけでは混乱する
0845nobodyさん2012/03/28(水) 23:46:26.83ID:???
POSTすりゃええやん
0846nobodyさん2012/03/28(水) 23:58:08.70ID:???
迷うだろって言われても迷わないよな
0847nobodyさん2012/03/28(水) 23:59:20.33ID:???
>>846
ほんとに?自分だけで分かるからOKって考え方なの?
ちなみに、/edit/1/2みたいな書き方はBaserCMSでもやってた
0848nobodyさん2012/03/29(木) 00:03:50.49ID:???
自己レスだけど、コーディング時は迷う事はないか。
Router::url('/news/edit/' . $data['Newsr']['userid'] . '/' . $data['News']['id'])
になるわけだし。単なるURL上での事ならこだわる必要ないかな。
外部に公開するわけでもないし。
0849nobodyさん2012/03/29(木) 00:06:24.29ID:???
>>847
自分だけわかるもくそも、URLの規則を万民にわかるように書くことなんてそもそも無理じゃね?
0850nobodyさん2012/03/29(木) 00:14:21.30ID:???
>>849
そうだな。規約に従おうとこだわりすぎてたわ。
自分が作りやすい方法でやるよ。色々ありがとう
0851nobodyさん2012/03/29(木) 00:19:24.06ID:???
>>850
URLでなんのページかわかりやすくしようというのは、ユーザビリティの面からも正しい考え方だけど
この件に関しては>>844の書き方で充分わかりやすいといえる範疇だと思う
0852nobodyさん2012/03/29(木) 04:02:59.81ID:???
>ピュアPHPなら、edit.php?user_id=1&id=2だよな?
>Cakeなら/edit/1/2か/edit/user_id:1/id:2だな。

誰がこんなこと決めたの?
Cakeだって/edit?id=1&id=2ってやるだろ。
0853nobodyさん2012/03/29(木) 10:57:51.78ID:???
さすがにそれはやらない
0854nobodyさん2012/03/29(木) 22:50:57.56ID:???
/edit/parent_id/1/id/2 とか
0855nobodyさん2012/03/29(木) 23:14:23.59ID:???
user_idがidから引っ張ってこれるんならURLに含めないな
usernameなら/news/tanaka_ichiro/123みたいな感じで含めてもいいと思うけど
どうしてもuser_idもidも含めたいのならnamedパラメータ使って/news/user_id:1/id:2とかにする
0856nobodyさん2012/04/01(日) 00:45:58.67ID:OiSFrCKx
ブラウザのエンコードの切替ができないんだけど2.x系って特別な設定あるのかな?

1.x系の場合コントローラに
function beforeFilter(){
//携帯なら
if($this->Ktai->is_ktai()){
Configure::write('App.encoding', 'SJIS');
$this->layout = "mobile_layout"; //charset=shift_jis"
}else{
って書けばブラウザのエンコードが既存の「UTF-8」から「SJIS」に切り替わるのに2.x系だと「UTF-8」のまんまだ。。。
かなり嵌ってるんだけど分かる人いるかな?
てか俺の環境がおかしいのかな??
0857nobodyさん2012/04/01(日) 02:38:57.47ID:???
App.encodingってシステム的なエンコードの設定で、出力のエンコードとは関係ないんじゃないの
設定したことないから知らないが
ヘッダーはutf8とsjisどっちなの?
0858nobodyさん2012/04/01(日) 03:16:24.89ID:OiSFrCKx
>>857
PCと携帯でエンコードを分岐したくて
PC -> UTF-8 携帯 -> shift_jis
core.php自体に記述しているのは
Configure::write('App.encoding', 'UTF-8');
なんだけど、携帯のページを表示するときは
beforeFilterでConfigure::write('App.encoding', 'SJIS'); に変更してます
cakephp1.3だとこの設定でブラウザのエンコードはshift_jisに変更されるんだけど
2.x系だとUTF-8のまま。。。
core.php自体をConfigure::write('App.encoding', 'UTF-8');に書き換えると
ブラウザのエンコードはshift_jisに代わるんだけどcore.phpだと分岐処理書けないから困っています。
2.x系だと別の処理が必要なのかな?
0859nobodyさん2012/04/01(日) 03:18:29.30ID:OiSFrCKx
>>858
>core.php自体をConfigure::write('App.encoding', 'UTF-8');に書き換えると

上記は
Configure::write('App.encoding', 'SJIS');の間違いです。
誤植すいません。。。
0860nobodyさん2012/04/01(日) 17:58:24.58ID:???
軽く調べてみたけどApp.encodingは内部コードの設定だからやっぱり出力のエンコードとは関係ないよ
ケータイ対応したいならこういう感じに書いたら?
http://webengineerlife.com/2012/02/08/cakephp-pc-mobile/
0861nobodyさん2012/04/02(月) 00:51:25.23ID:ZyijX88y
>860
ありがとう
ちょっと試してみます。
携帯ライブラリとか使って複雑になってるのも原因の1つかもです。。。
0862nobodyさん2012/04/03(火) 18:18:51.92ID:???
cakephpでもhavingが使えるんだな。
そしてhavingってめちゃくちゃ便利だな。
これのお陰でDBの設計が楽になった。
0863nobodyさん2012/04/04(水) 18:16:19.49ID:???
フォームヘルパーでのサニタイズは何もしなくても自動でしてくれるけど、
表示(コントローラからset)の場合は、個別でサニタイズしなきゃいけないんだな

この点忘れてた・・・
0864nobodyさん2012/04/05(木) 00:28:36.65ID:???
1.2経験しかなかったんだけど初めて2.1使ってみたら
ローカルのxampp環境でmodelがbake出来ないんですけど。。
cliのphpが「問題が発生したため・・・」になる
0865nobodyさん2012/04/05(木) 23:35:57.76ID:???
findの条件で、
テーブルFoosのflagがonのものだけ取り出したいとき、
'conditions' => array(
'Foo.flag' => 'on'
),
と書いてできたんですが、
Foosのflagがonでかつ、
Foosのlawと同じ値のBarsテーブルのidの、deleteがoffのもの、というのを条件にしたい場合どう書けばいいでしょうか?

具体的には、
Foosのテーブルには商品リスト、Barsには業者データがあり、
取り扱っている商品、でかつ、倒産していない業者、の商品リストだけ取り出したいのです

よろしくお願いします
0866nobodyさん2012/04/06(金) 01:33:16.23ID:???
ローカル環境にApach + PHP + MySQLの設定をするのが
面倒なのでレンタルサーバにリモートプロジェクトとしてEclipseでバンドして
作業してるんですが、こういった開発手法ってNGでしょうか?
0867nobodyさん2012/04/06(金) 11:00:58.23ID:???
自分が良ければおkだと思うよ
0868nobodyさん2012/04/06(金) 11:22:58.85ID:???
ありがとう。勇気付けられました(?)


ローカルとサーバで2度設定をする手間を考えるとやはり
直接サーバ上でコードをいじった方が効率が良いと思うんだよね。
0869nobodyさん2012/04/06(金) 11:44:34.19ID:???
>>868
俺もそう思う。
0870nobodyさん2012/04/07(土) 00:51:33.09ID:4OZyxrY6
下記サイトを参考にしCakePHP 2.1.1安定板をダウンロードし
さくらインターネットに設定しようと思っているのですがどうしてもうまくいきません。
http://mori.moripower.jp/eqwip/cakephp/370.html

どの部分でエラーが起きているか追いかけてみたところ
/home/user_name/www/app1/index.php
において、下記判定処理でインクルードに失敗していました。
if (!include(CAKE_CORE_INCLUDE_PATH . DS . 'Cake' . DS . 'bootstrap.php')) {

bootstrap.php自体のパスは下記が正の筈なので
直接(べた)書きで試してみましたがやはりダメでした。
(bootstrap.phpの権限を 755に設定してもダメ)
/home/user_name/cake/lib/Cake/bootstrap.php

どなたか同じ様な体験をされた方はいませんでしょうか?
0871nobodyさん2012/04/07(土) 01:04:14.05ID:ET0rgidW
そんなこと今更知ったのか、バカを晒して楽しいか?
0872nobodyさん2012/04/07(土) 01:11:46.23ID:???
>>870
それだけ見るとディレクトリ構成を間違えたかindex.phpのパスの設定が間違ってるっぽいけどなあ
0873nobodyさん2012/04/07(土) 01:52:28.91ID:???
>>872
>>870
に記載のURL通りに指定しております。
ちなみに bootstrap.php の中では定数等を定義しているだけの様なのですが
このファイルの読込は、CakePHPの実行には必須なのでしょうか?

また、さくらインターネットにおいて、最新のCakePHPの導入が出来る様に
解説したサイトをご存じでしたらお教えください。

どうも私の方でぐぐってヒットするサイトは
2・3年前の古い物ばかりで最新のCakePHPには即していない様です。
0874nobodyさん2012/04/07(土) 09:38:19.35ID:PHPJ9271
1.3時代からいじっていないから何か違うかもしれないが

>bootstrap.phpは必須か?
bootstrapは、起動時の設定をまとめたりしてるもんなんで必須なはず

おまいさんのスキルが見えないので余計なアドバイスかもしれないがとりあえず、CAKE_CORE_INCLUDE_PATHの内容を調べてみてどうよ?
08755192012/04/07(土) 11:17:18.36ID:???
>>874
見事なIDを見た
0876nobodyさん2012/04/07(土) 11:21:45.79ID:???
名無しに戻し忘れorz
ぬかったわ。。。
0877nobodyさん2012/04/07(土) 12:05:32.12ID:???
>>874
定義された内容でもって直接includeしたのですが
それでもダメでした。

もうちょっといろいろと試してみます。
0878nobodyさん2012/04/07(土) 12:43:18.13ID:???
ちょっと気になっているんですけど
CakePHP って途中で開発終了の可能性は他のFWと比べて高いですか?低いですか?
0879nobodyさん2012/04/07(土) 12:54:05.32ID:???
誰にもわからないことだな

1つ言えることは、ZFに比べたら確実に高いということぐらい。。
0880nobodyさん2012/04/07(土) 13:09:04.61ID:???
せっかくCakePHPの癖をつかんだとしても
終了してしまったら学習コストの無駄になるのを恐れている。

やっぱしZFの方が無難かな?
0881nobodyさん2012/04/07(土) 13:23:49.88ID:???
zendはコンポーネント群にすぎないから、位置づけがCakeとは異なるよな。
0882nobodyさん2012/04/07(土) 14:05:56.13ID:???
コストの無駄たって、経営者が新人教育について言ってるんだならまだしも
自分の脳みそのしわを増やすのにコストで考えるのはわからんw
浅く広くでもどれでも触って使えるようになっとけばいいよ
0883nobodyさん2012/04/07(土) 16:48:09.15ID:???
とりあえず、俺は1.3をあと2年は使い続ける
0884nobodyさん2012/04/07(土) 18:01:43.94ID:???
フォームの確認ページでのサニタイズってどうしてます?
$this->dataを一括でサニタイズする処理をするか、
確認ページのビューで<?php echo h($this->data['Post']['name'])?>
みたいにするかどちらかだと思っているのですが、
他に良い方法や考え方はありますでしょうか?
0885nobodyさん2012/04/07(土) 18:21:39.17ID:???
サニタイズいうなキャンペーン開始
0886nobodyさん2012/04/07(土) 23:59:10.64ID:???
Cakeでそう言う名前だろw
0887nobodyさん2012/04/08(日) 10:36:25.86ID:4ALRLsfw
>>875
うぉ!自分で書いてて気づかなかった。IDの仕組み分からんからこの書き込みIDどうなるか分からん。。。

>>884
ビューでエスケイプ。責任をしっかり分けておかないと後で後悔する
0888nobodyさん2012/04/09(月) 01:52:30.87ID:???
>>873
さくらじゃなくてxreaとかcoreserverとかの設置方法見たら?
/home/username/cakephp
/home/username/www
という感じに分けて、コアファイルをパブリックに置かないようにするのは一緒だよ

xreaだと
/virtual/username/cakephp
/virtual/username/public_html
とかになるけど
0889nobodyさん2012/04/09(月) 11:26:19.21ID:gWXPCP/C
Cakephp2.1.1のモデルのファイル名に関して質問させてください
ローカル(mac)の環境ではファイル名を小文字のみ(example.php)にしても読み込まれるのですが、
サーバー(centos)では一文字目を大文字(Example.php)にしないと読み込まれません
最新のCakephpはモデルのファイル名が大文字で始まるようなのですが
ローカル環境では小文字でも動いています
これはapacheの設定かphpの設定かosの設定なのでしょうか!?
0890nobodyさん2012/04/09(月) 12:26:26.44ID:???
ローカルのOSがファイル名の大小を区別するかは調べた?
0891nobodyさん2012/04/09(月) 13:37:22.79ID:???
下記階層にCakePHP一式を配置し各種設定を行った後、
マルチドメインにて設定したパスに、アクセスしてみたところ
一応CakeFW自体は正常に動作している様に見受けられるのですが
(CakePHP:the rapid development php framework が表示されました。)

/home/{user_name}/www/multi_domain_directory

下記CSSがあたっていません。
<link rel="stylesheet" type="text/css" href="/css/cake.generic.css" />

ソースを開きその中のCSSの読込をクリックすると
本来は app/webroot/css/cake.generiuc.css
が認識されないといけないハズなのですが webroot/css が認識されないです。

どうすればCSSが正常に認識される様になりますでしょうか?

※一応CakeFWを追いかけると lib/Cake/view/Helper/HtmlHelper.php / function css()
にてロードをやっている様なのですが
こちらは、FW本体なので手は入れたく無いです。
0892nobodyさん2012/04/09(月) 16:51:20.49ID:gWXPCP/C
>>890
おーこれだ
macのファイルシステムがHFS+ってのでこれが大文字小文字区別しないんですね
半日も嵌ってしまたけど勉強になった
どうもです
0893nobodyさん2012/04/09(月) 17:02:12.28ID:???
1.3系でプラグインの作成で質問です。

>>721でindexアクションを作ればプラグイン名のみでアクセス可能となりますが、
/pizza/addの場合、エラーになります。/pizza/indexでもエラーです。

プラグイン内のコントローラを参照しているからこうなると思うのですが、
プラグインで/pizza/addとか/pizza/editのアクション指定したい場合は、
ルーティングをいじらないといけないのでしょうか?
0894nobodyさん2012/04/09(月) 20:13:47.19ID:???
cakePHPってYiiとかなり似通ってるね。
0895nobodyさん2012/04/10(火) 11:26:36.93ID:???
レイアウト全体をキャッシュせずに
「$content_for_layout」の内容のみキャッシュしたいのですが、
どうすればいいのでしょうか?
0896nobodyさん2012/04/10(火) 12:05:36.17ID:???
外部に公開する場合に

→ Error: 23423Controller could not be found. ←

こーいうエラーメッセージを表示せずに
存在しないページ、URLでアクセスされた場合には
事前に用意したエラーページ(メッセージ)を表示したいのですが
どうすればよいでしょうか?
0897nobodyさん2012/04/10(火) 12:24:22.68ID:R7ZoSsIJ
2になってから$_GET['url']って読まなくなった?
0898nobodyさん2012/04/10(火) 13:53:53.12ID:???
>>897
マイグレーションガイドぐらいは読もうぜ
http://book.cakephp.org/2.0/en/appendices/2-0-migration-guide.html#request-handling-get-url-and-htaccess-files
0899nobodyさん2012/04/10(火) 15:35:48.29ID:???
仕様を変える方が悪い
0900nobodyさん2012/04/10(火) 15:45:33.60ID:???
POSTフォームだと$this->request->dataの内容に応じて
インプットの値が自動で上書きされるのに、
GETフォームだと、空のままなんですが、
自分でマージするしかないのでしょうか・・・?

$this->request->data = $this->request->query;
とやってもダメでした。
0901nobodyさん2012/04/10(火) 16:19:05.60ID:???
>>895
layoutのcontent_for_layout以外のところをnocacheでくくってみたら?

>>900
getでもフォームの内容は引き継がれるはずだよ
遷移先のフォームのIDとかnameが変わっちゃってない?
09029002012/04/10(火) 16:51:59.32ID:???
>>901
うーん・・・私の環境だと引き継がれませんね。
ちなみに2.1系です。
09038642012/04/10(火) 23:50:19.65ID:???
もし同じ状況の人がいたらあれなんで一応動いた解決法
http://d.hatena.ne.jp/kanonji/20090819/1250655003
↑のとおりdll書き換えてCLI落ちなくなった
0904nobodyさん2012/04/11(水) 10:44:38.27ID:???
誘導されましたのでよろしくお願い致します。


cakePHPのヘルパーを使って画面遷移させようと
しているのですが、出力されたリンクに関係ない文字列(ここでは、 /app )
が勝手に付加されてしまい困っています。

<?php echo $this->Html->link('JUMP', '/jump', array('class' => 'button', 'target' => '_self')); ?>


ここでは、本当は (B)の形でhtmlを出力したいです。どうすれば良いでしょうか?

(A) <a href="/app/jump" class="button" target="_self">jump</a>
(B) <a href="/jump" class="button" target="_self">jump</a>
0905nobodyさん2012/04/11(水) 16:48:45.18ID:???
管理者が管理画面から会員ページに移動したいと思っています。
会員のパスワードは暗号化されるので、通常のログインでは無理です。
こういう場合って、単にAuthのセッション情報を付与して
会員ページにリダイレクトするだけでしょうか?
0906nobodyさん2012/04/11(水) 18:45:08.55ID:???
管理者としてではなく、管理者が会員Aさんになりすましてログインするってこと?
嫌な仕様だなw

会員ページのメンテナンスとかしたいなら管理者権限でそう言うのできるアクションを
作ればいいのでは
0907nobodyさん2012/04/11(水) 21:58:40.91ID:???
>>904
PHP上級者スレとのマルチ
09088642012/04/11(水) 22:08:14.47ID:???
>>904
cakeでの/はcake_appのルートになるからその動作が適切だよ
普通にHTMLで
<a href="/jump" class="button" target="_self">jump</a>
って書けばいいじゃん。
もしかしたら
'/../jump'で解釈してくれたりしないかな?知らないけど
0909nobodyさん2012/04/11(水) 22:08:55.22ID:???
名前やちまたorz
0910nobodyさん2012/04/11(水) 22:12:31.92ID:???
てかこれでブラウザが解釈してくれるわな
吐き出されるのはこうなるけど
<a href="/app/../jump" class="button" target="_self">jump</a>
0911nobodyさん2012/04/11(水) 22:50:15.55ID:Ko+Ap9VU
>>904
routingのprefixかなんかで特殊な設定してない?
appという文字列がどこからやってきたのか検討もつかない状態なの?

>>905
Authでログインしようとしても無理だと思うので>>906でいいんじゃない
0912nobodyさん2012/04/11(水) 23:12:38.64ID:???
>>908
cakePHPをせっかく使っているので直接書きはしたくないです。

>>911
基本的にcakePHPのベースコードは何もいじっていないのですが
FWにデバッグコードを入れておっかけてみます。

>>907
お前の投稿自体マルチだろ。しね。
0913nobodyさん2012/04/11(水) 23:16:31.45ID:???
>>908ですが、、、

あれ?cakeルートがサーバーのウェブルートで無い場合に、
Html->link()つかってサーバールートへリンクしたいってことじゃないの?

つまり、サーバールートの下にappってディレクトリがあってそこがcakeのルートになってるんじゃないの?
0914nobodyさん2012/04/12(木) 12:04:20.30ID:???
cakePHPでは一般的に共通で使用されるファンクションは
どこに定義しますか?

パスを教えてください。
Utility的な自己ライブラリを定義したいと考えています。
0915nobodyさん2012/04/12(木) 12:18:39.89ID:???
ファンクション群ならbootstrapじゃね
外部にしてincludeか
09169052012/04/12(木) 13:56:49.96ID:???
>>906>>911

私も管理画面に会員情報を編集できるページを作っていたのですが、
管理画面から対象の会員としてログインし、
会員情報の修正をしている市販CMSを結構見るんです。

たぶん、同じような箇所を管理画面用・会員用と分けて作るのは
手間がかかるからログインし直すという事で対処していると思うのですが、
あまり良いやり方ではないみたいですね。
0917nobodyさん2012/04/12(木) 18:05:37.36ID:???
成りすましをしているようで変態的
0918nobodyさん2012/04/13(金) 01:19:58.45ID:???
>>914
vendorにライブラリとして突っ込む

>>916
ユーザーが実行できる範囲の行動を管理者が行うという前提であれば
手抜きの方法としてナシではないのかもしれないけど、スマートでないのは確か
というかユーザーが修正できるんならユーザーに修正させるべきじゃね?
管理者がユーザーの設定代行するって言うのはかなりの最終手段のような気がする
0919nobodyさん2012/04/13(金) 14:04:43.06ID:???
Cakephp のメソッド引数として全角文字列を入れて動かしているのですが、
なぜかIEでだけ、動きません。

http://hostname.jp/controller/action/全角の検索ワード

という感じのアクションなのですが、Chromeでは問題なく動いているのですが、
IE系のブラウザではまったく動いてくれません。検索ワードが半角文字だけですと、IEでも動いています。

そもそもCakeのメソッド引数に上記の方法で全角文字列を渡してもいいものなのでしょうか?
なにか別にいい策があればご教示ください。
0920nobodyさん2012/04/13(金) 14:52:39.24ID:???
全角?
古臭い用語だな
0921nobodyさん2012/04/13(金) 15:01:55.33ID:???
>>920
マルチバイト文字のことです。正確にはUTF-8の日本語文字列です。
0922nobodyさん2012/04/14(土) 00:10:19.08ID:???
>>919
Cakeとか関係ない。

UTF-8で書かれたページでPOSTしたら
サーバーに投げられる文字コード何か?

EUC-JPで書かれたページでPOSTしたら
サーバーに投げられる文字コード何か?

この2つの例でサーバーに投げられ文字コードは何で決まるのか?

http://hostname.jp/controller/action/全角の検索ワード
の「全角の検索ワード 」の部分の文字コードはどうやって決めるのが正しいか

考えてみれば良い。
0923nobodyさん2012/04/14(土) 09:35:05.93ID:???
文字コードも関係ないwww
0924nobodyさん2012/04/14(土) 10:00:41.58ID:???
URLエンコード
0925nobodyさん2012/04/14(土) 10:52:00.00ID:???
アホか。URLエンコード するときの
文字コードは何だよ。言ってみろ
0926nobodyさん2012/04/14(土) 12:26:15.35ID:???
cakePHP2.1.1を使用してコントローラの中からモデル内に定義した
ファンクションをコールしようとしているのですが
下記の様なエラーが出てしまいます。
どこに間違いがあるのでしょうか?

[model]
class Test extends AppModel
{
var $name = 'Test';
function Testxxx(){echo "Test!";}
}

[controller]
var $uses = array('Test');
$this->Test->Testxxx();

[error]
Error: SQLSTATE[42000]: Syntax error or access violation: 1064
You have an error in your SQL syntax; check the manual that corresponds to your
MySQL server version for the right syntax to use near 'Testxxx' at line 1
0927nobodyさん2012/04/14(土) 13:43:48.92ID:???
Error: SQLSTATE[42000]: Syntax error or access violation: 1064
You have an error in your SQL syntax; check the manual that corresponds to your
MySQL server version for the right syntax to use near 'Testxxx' at line 1
0928nobodyさん2012/04/14(土) 13:50:12.49ID:???
エラーメッセージを繰り返したら誰かが答えるとでも?
0929nobodyさん2012/04/14(土) 14:11:27.02ID:???
>>926>>927 は別人だろうが。
>>928お前はミサイルで頭を破壊した方がいいよ。どうせまともなルックスしていない下種野郎だろうしな。
0930nobodyさん2012/04/14(土) 15:09:22.75ID:???
で?それが質問者の態度?
0931nobodyさん2012/04/14(土) 18:06:38.12ID:???
cakePHP で特定のコントローラ

例)
denyController.php


へのアクセスを禁止するには一般的にどうしますか?

.htaccess or cakePHPでなにがしかの設定が可能?

0932nobodyさん2012/04/14(土) 18:42:11.68ID:???
cakePHPでdeleteAllに削除条件を指定しても無効なのでしょうか?
下記コードを実行すると、全レコードが削除されてしまいます><;

$deleteCondition = array("hoge_id" => 3333);
$this->Hoge->deleteAll( $deleteCondition );
0933nobodyさん2012/04/14(土) 18:52:06.84ID:???
>>932
条件の与え方はfindと同じだよ。
その条件でfindしたら検索されるの?
0934nobodyさん2012/04/14(土) 19:34:52.76ID:V2giXwsG
>>931
俺ならコントローラー全てのアクションにprefixつけてprefixルーティング&アクセス制御って感じかな
0935nobodyさん2012/04/14(土) 19:38:18.38ID:???
>>933
自己解決しました。

英語のドキュメントを見たところ
cake2.1.1 になってから呼出し方が微妙に変わっていました。
0936nobodyさん2012/04/14(土) 19:55:02.70ID:???
>>935
一応、どう変わったのか書いてほしいな
0937nobodyさん2012/04/14(土) 20:25:02.13ID:???
>>936
実際には delete は変わってませんでした。

findについては、

findAll → find('all')

といった感じです。
しかし、なぜ同じコードで>>932が今度は正常に削除出来たか不明。
0938nobodyさん2012/04/14(土) 20:33:32.07ID:???
controllersの下にサブフォルダを作ってコントローラーを置くと認識されますが、view以下で同じことをやるとエラーになります。
viewsのパスを任意に追加するにはどうすればいいのでしょうか?
ソース見たらApp::path('views')でパスは取れるみたいだけど追加の関数がない。
0939nobodyさん2012/04/15(日) 02:11:36.29ID:???
なれると cakePHP むっちゃ便利やんかぁ。
0940nobodyさん2012/04/15(日) 08:46:03.26ID:???
cakePHP と Pear って一緒に使える?
0941nobodyさん2012/04/15(日) 19:57:59.30ID:???
はい
レス数が900を超えています。1000を超えると表示できなくなるよ。