トップページphp
1001コメント305KB

【PHP】フレームワーク CakePHP 8ホール目【1.3】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2010/03/18(木) 10:00:59ID:6+kHM8kH
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう

※sage推奨
テンプレは>>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
0291nobodyさん2010/04/30(金) 12:13:53ID:???
>>290
ありがとうございます。 
scaffoldはそういうものということで納得します。

bakeして書き換えも試してみようと思います。
0292nobodyさん2010/04/30(金) 15:27:09ID:???
scaffold使うより自分で書いたほうが早くないか?
0293nobodyさん2010/04/30(金) 15:39:48ID:???
やばい、わかり始めるとホントに楽しい。
0294nobodyさん2010/04/30(金) 16:13:16ID:???
でもそのうち単調な処理を書くのが嫌になってくる
0295nobodyさん2010/04/30(金) 16:19:20ID:???
分かり始めたと思ったらHABTMでわからなくなった。
cakebookのHABTMを保存の項がリンクおかしくなってるし。
0296nobodyさん2010/04/30(金) 16:46:22ID:???
>>295
タグ機能の実装解説してるブログなどを参考にするとわかりやすい
0297nobodyさん2010/04/30(金) 17:47:47ID:???
フォームにテキスト入力した時、半角英数入力に自動的になるような
viewの書き方はあるでしょうか?

validateでalphanumericをすると、事後的にチェックはできるのですが、
そもそも入力した時点で半角しか入力できないようにしたいのです。

formのtypeをpasswordにしたらそのような設定になるようですが、
textで見えている状態で強制的に半角入力にする方法を探しています。
0298nobodyさん2010/04/30(金) 18:22:22ID:???
>textで見えている状態で強制的に半角入力にする方法
ってことはアプリ側のロジックでなくて、ブラウザ側の話になるんでは?
スレ違いだけど、CSSのime-modeとかある、
0299nobodyさん2010/04/30(金) 18:33:13ID:???
>>294

なんとなくわかるわw

それに同じようなコードを書くことになるんだよな・・・
0300nobodyさん2010/04/30(金) 19:23:09ID:???
>>298

ありがとうございます!
ブラウザ側から処理するcakeの機能がないかなと調べていました。

ぐぐって調べてみます!
0301nobodyさん2010/05/01(土) 00:30:06ID:???
これだけ機能があるのにアップロードの機能は乏しいんだな・・・。
Media プラグインはなんか扱いにくそうだし。

画像のURLとアクション呼び出すURLの仕組みの違いもわからんし…
0302nobodyさん2010/05/01(土) 03:01:43ID:???
>>299
横レスだが、俺は今更ながら本家RoRに浮気してみてるところ。
Cakeに対して理解をもってから望んだら、おもしろいくらいRoRがさっくり理解出来そうだったので。

で、CakeにあったDRYじゃない感やなんかがRoR(というかRuby)で解消されるならあっちに旅立つ予定。
やっぱCakeがいいやってなったらしれっと戻って来るw
0303nobodyさん2010/05/01(土) 10:00:05ID:???
>>302
興味深いからその後どうなったか教えてほしい
俺はRoRを使えるような場に恵まれないため今のとこ利用しないが。
0304nobodyさん2010/05/01(土) 12:19:40ID:???
1.2から1.3の移行が結構大変・・・
0305nobodyさん2010/05/01(土) 12:23:27ID:???
1.2から1.3で変わったことまとめとか探し中
0306nobodyさん2010/05/01(土) 12:32:45ID:???
そんなに困るほどはかわってないきが
0307nobodyさん2010/05/01(土) 12:33:01ID:???
$sessionが使えなくて迷った
0308nobodyさん2010/05/01(土) 17:27:41ID:???
307の補足ね。

layoutのdefault.ctpとか、1.2だと
$session->flash
になってるんだけど、1.3だと
$this->Session->flash
になってる。レイアウトを移行する時は要注意。
0309nobodyさん2010/05/01(土) 17:43:56ID:???
公式にあるまとめでいいじゃん
0310nobodyさん2010/05/01(土) 18:05:55ID:???
>>308
違う、$this-> は推奨だけど無しでも動く
echoが必要になった

echo $this->Session->flush();
0311nobodyさん2010/05/01(土) 18:06:28ID:???
あと移行ガイドのリンクがテンプレ>>1-5にあるからね
0312nobodyさん2010/05/01(土) 18:13:00ID:???
>>310
本当だ。移行ガイドにも書いてあった。ありがとう。
移行ガイド、斜め読み程度で良いと思ってたけど、しっかり読もう。。。
0313nobodyさん2010/05/02(日) 20:40:40ID:???
漢もすなるフレームワークといふものをしてみむと思ってるんですけど、
CakePHPっていうのが人気なんでしょうか。
NetBeansのプラグインにSymphonyっていうのとZendっていうのしかないんですけど
それでもCakePHPがいいですかねぇ?
0314nobodyさん2010/05/02(日) 20:45:19ID:???
しらん
0315nobodyさん2010/05/03(月) 01:09:54ID:???
>>313
プラグイン?なんだそれ、喰えるのか?
俺はPHPエディタの延長のつもりでNetBeansでCake焼いてるよ。
0316nobodyさん2010/05/03(月) 01:28:15ID:???
動的言語にIDEなど不要
0317nobodyさん2010/05/03(月) 12:10:40ID:???
>>315
プラグインのことは気にせずやってみます。

>>316
IDEは便利ですよ。
使わないのは損です。
0318nobodyさん2010/05/03(月) 13:05:07ID:???
動的言語にも使えるIDEの機能は大抵テキストエディタでも実現できる
0319nobodyさん2010/05/03(月) 13:17:52ID:???
NetBeansと同等のことができるテキストエディタ教えてちょ♥
0320nobodyさん2010/05/03(月) 13:43:59ID:???
vimもIDEになりますか><
CakeOnVimを使ってるけれど、そこまで重要なファクターではないなあ
0321nobodyさん2010/05/03(月) 13:53:06ID:???
vimって使ったことないけど
自動補完とか文法チェックもできるんだね

でも見た目がアレだから、慣れないとストレスたまりそう…
0322nobodyさん2010/05/03(月) 14:15:21ID:???
MacのTextMateでCakePHPのBundleを入れてる。
Railsのスクリーンキャストでよく見かけるTextMate的な補完や操作が出来る。
昔はEclipseとかZDEとか使ってたけど、PHPに限って言えばIDE不要。
手になじむエディタ(それが人によってemacsかvimか秀丸かEmEditorかTextMateかBBEditか変わるが)
があればむしろ小回りが効いて良い。動的言語で手練れになるなら絶対コッチ。
0323nobodyさん2010/05/03(月) 22:42:04ID:???
補完だけならね

FTPやらバージョン管理やらしようと思えばIDEのほうが断然便利だな
関数の定義元も一瞬で表示されるし
0324nobodyさん2010/05/03(月) 22:58:23ID:???
ここはrsyncコマンドやscpコマンドやsvnコマンドやgitコマンドが使えないインターネッツですね
0325nobodyさん2010/05/03(月) 23:16:54ID:???
IDEのほうが断然便利だな
0326nobodyさん2010/05/04(火) 01:18:42ID:???
じゃぁちょっと使って見るかな
0327nobodyさん2010/05/04(火) 01:30:32ID:???
IDEは便利。
一発で整形が出来るのが便利。
エディタでも出来るかもしれんがw

Xdebugとか要求してきてメンドイが
0328nobodyさん2010/05/04(火) 18:50:23ID:???

1.3使っているのですが、
Shellから
静的HTML吐きだしたいのです。
ctpとViewのrender使ってレンダリング結果を保存しようとしたのですが、
ViewTaskも使えず、
Controllerをnewしてrenderしてもエラーがでてしまいます。

どなたか対処法ご存じないでしょうか?
上記方法はぐぐってでてきたので試したのですがダメでした……。
0329nobodyさん2010/05/04(火) 19:31:04ID:???
>>328
html_cacheというafterRenderでhtmlファイルを生成するplugin を使ったほうが早いかも
shellじゃないとだめなの?その場合は必要なファイルをimportしてnewしてって面倒くさいと思うが、今どう書いているのか教えれ
0330nobodyさん2010/05/04(火) 19:46:53ID:???
>>329
おお、そんなプラグインが……。
調べてみます。ありがとうございます。
shellでやりたいのは定期実行で、
古い記事を静的ファイルに落とす処理なのです。
URL叩くのでも良いのですが、その他の処理はTaskになっているので出来れば一度にやりたいと……。
以下、全てShell内部でやってます。

1. 既存コントローラ new
// DebugKit がどうとかでてエラー
App::import('Controller', array('Posts'));
...
$controller = new PostsController();
$controller->components = array('Auth');
$controller->constructClasses();
$posts = $controller->__createStaticHtml();

2. 只のコントローラ new
// エラー
App::import('Core', 'Controller');
...
$this->controller = new Controller();
$content = $this->controller->render('archive' , '' , $filepath );

3. ViewTask
// エラーorz...
var $tasks = array('View');
...
$this->View->getContent('archive', $params);
0331nobodyさん2010/05/05(水) 22:23:38ID:???
Paginatorを使ってみたんだがURLが汚すぎて使い物にならないな…
せめてGET方式に簡単に切り替えられないもんかね?

paginatorヘルパーのオプションでクエリを指定すればそれっぽくはなるんだが、
ソート(order)指定していると、ページリンクでコロン付きのリンクが生成さえれてしまう…
0332nobodyさん2010/05/05(水) 22:49:52ID:???
pagitorのオプションで 'url' => array('order' => null) でいけたわ
ほんと、モデル名がURLに出る仕様はどうかと思うわ

自前でクエリのパラメータ名とModel::paginate()のオプションを相互変換する処理書いたが、
もうちょいうまいやり方はないものなのかねえ
0333nobodyさん2010/05/06(木) 12:38:02ID:???
ルータ使うのは?
0334nobodyさん2010/05/06(木) 21:56:38ID:???
>>333

ルータ使っても名前付きのパラメータついちゃうねえ
page:2 とか

ルータで細かく指定すれば逆ルーティングしてくれるの?
0335nobodyさん2010/05/06(木) 22:07:24ID:???
ちなみに、ルーティングしてない状態だと

/sort:Table.created/direction:desc

とかなってる。
ルーティングだけで

/date/desc

みたいにできるもんなの?
できなくて自前で書いちゃったんだけど、細かく指定してできるんならそっち使うわ
0336nobodyさん2010/05/06(木) 22:37:56ID:???
ちょい試したら

Router::connect('/search/:page',
array('controller' => 'Product', 'action' => 'search')
);

とか書いたらいけたわ…
ソートのほうは、表示名変えるには一個づつ全部かかないと駄目そうだけど

(逆)ルーティングもだいぶ賢くなったんだなあ
0337nobodyさん2010/05/06(木) 22:51:27ID:???
ソートもこれでいけた

Router::connect('/product/search/date/:direction/:page',
array('controller' => 'Product', 'action' => 'search', 'sort' => 'Product.created')
);

ソートキー分だけ全部書かないとだめそうだが、いけた
第3引数で数字のチェックとかすれば、これでいけそう

あなどってたわ・・・w
0338nobodyさん2010/05/06(木) 23:20:16ID:???
virtualFields使ってる場合に問題があるみたい

Router::connect('/product/search/price/:direction/:page',
array('controller' => 'Products', 'action' => 'search', 'sort' => 'Product.price')
);

こんな感じのルーティングで、Product.price がvirtualFieldsの場合、
ソートの方は $paginator->sort(...) で逆ルーティングしてくれるが、
$paginator->next(...) なんかは逆ルーティングできない

Router::connect('/product/search/price/:direction/:page',
array('controller' => 'Products', 'action' => 'search', 'sort' => 'price')
);

とか書いたら $paginator->next(...) のほうはうまくいったが、今度はソートのほうが逆ルーティングできない

両方書いてみたらぱっと見はうまくいくけど、ソートの昇降が切り替えられなくなった

バグだよね
0339nobodyさん2010/05/06(木) 23:25:18ID:???
ルーティング関係なかったわ
virtualFieldsのsort()自体にバグがあるみたい
昇降切り替えができない
0340Beginner2010/05/07(金) 00:00:52ID:???
>>283
レス遅くなりました。

1,2の方法ではうまく行きました。
3の方法ではうまく動かなかったです。

絶対URLになってしまったのですが、問題ないのでしょうか?
<form id="FaqCategoryEditForm" method="post" action="http://xxxxx/systemFaqCategories/1/edit/">

今までは、相対URLでしたけど・・・
0341nobodyさん2010/05/07(金) 02:13:33ID:???
>>339

virtualFieldsだと、Controller::paginates()で$paging['options']['order']のモデル名が消えてしまう模様
そのせいかわからないがPaginator::sort()が切り替えられない(逆ルーティングはできる)

Paginator::prev()で逆ルーティングできないのもそのせいかもしれない

原因探してもよくわからないから、paginatorヘルパーのオプション['url']['sort']を明示的に指定するようにしたよ…
0342nobodyさん2010/05/08(土) 01:28:35ID:???
hasManyのモデルのバリデーションってどうすればいいんでしょ?

$this->A->B->create($this->data);
if ($this->A->B->validates()) {....


って感じでバリデーションを調べようとしていて
hasMany関連だから$this->date['B'][0]['field']の形式なんだけど
$this->date['B']{'field']っていうフォーマットってじゃなきゃ、バリデートしてくれないみたい

英語、日本語でググってみたけど、なかなか解決できない…
誰か知ってたら教えてくだせえ
0343nobodyさん2010/05/08(土) 14:35:38ID:???
model内でSessionコンポーネントを使う方法はあるでしょうか?

下記のように書いてみましたが、Session->writeでエラーが出てしまいました。
コントローラに書いた場合、 authByHashは上手く機能するのですが。。

class User extends AppModel {

public $components = array("Session");

function authByHash($id = null){

$conditions = array("hash" => $id);
$user = $this->find($conditions);
$this->Session->write('Auth',$user);
if(!empty($user) ){
return true;
} else {
return false;
}
}

0344nobodyさん2010/05/08(土) 18:06:51ID:???
そもそもmodel内でSessionを使わなければいけないという設計が変だと思う
0345nobodyさん2010/05/08(土) 19:58:36ID:???
>>342
saveAll で、validation => false or only
でいけると思う
0346nobodyさん2010/05/08(土) 19:58:55ID:???
>>345
first or only だった
0347nobodyさん2010/05/08(土) 20:13:26ID:???
Virtual fieldsは、1.3以降の機能?
0348nobodyさん2010/05/08(土) 20:42:38ID:???
>>347
そう
0349nobodyさん2010/05/09(日) 03:09:31ID:???
Auth ログイン情報をブラウザ閉じても保存したいのですが、
オススメの方法はあるでしょうか?

コンポーネントとか使わずに、クッキー処理が正解なのかな。
0350nobodyさん2010/05/09(日) 11:14:42ID:???
cookieコンポーネント。
0351nobodyさん2010/05/09(日) 11:16:11ID:???
thx!
0352nobodyさん2010/05/09(日) 12:38:20ID:???
ググればたくさん出てくるよ
公式のフォーラムにもあったはず
0353nobodyさん2010/05/09(日) 20:37:17ID:???
1.2で開発してるんだが、コンソールで管理するためにシェル書いたんだけど、
Class 'Model' not found in /path/to/app_model.php on line 39
ってなって動かないんだけどこれってバグ?しかも、毎回なるってわけでもなく、たまには動くんだよな。謎。
03543472010/05/10(月) 02:18:33ID:???
>>348
サンクス。そっかー、1.2じゃ使えないのか。。。
面白そうな機能なので、1.3に上げたら使ってみます。

http://d.hatena.ne.jp/hiromi2424/20100204/1265274976
0355nobodyさん2010/05/10(月) 11:32:48ID:???
>>354
AttributeBehavior
http://bakery.cakephp.org/articles/view/attributebehavior-dry-and-powerful

っつうのもある
0356nobodyさん2010/05/10(月) 13:03:35ID:???
cakephp便る杉ワロタ
無知の俺でもデータベース使いまくリングw
0357nobodyさん2010/05/10(月) 17:40:26ID:???
>>345
いけた!ありがとう!たすかったw



てかsaveメソッドなのにsaveしないならvalidatesに引数渡して判断さしたほうが
わかりやすいような気がするぜこれw
0358nobodyさん2010/05/11(火) 15:29:46ID:7YcJ1BHK
皆さんに2点質問です。
cakephp1.3使ってます。
sanitizeについてなんですけど、
mysqlにtext,textareaでデータを格納するとき、

■Sanitize::clean($this->data)か
 Sanitize::html($this->data['User']['・・・'];
どっちつかってますか?

■sanitizeしたデータを取り出すとき、(例えばaddしたデータをeditするときなど)
おおおおおお\n&lt;a href=ageorgja&gt;あぞあおb&lt;/a&gt;\n&lt;?pjfeowjfo&gt;fewjfoewjoewjfoewdj&lt;?&gt;\n&lt;?php fjaeof

こんな風になってしまうんですけど、いい回避方法教えて下さい。
0359nobodyさん2010/05/11(火) 22:45:09ID:???
>>358
>こんな風になってしまうんですけど、いい回避方法教えて下さい。

Sanitizeを使わない
0360nobodyさん2010/05/12(水) 00:13:03ID:???
CakePHP1.2とmysql5.1を使っています。

みなさんに質問なんですが、編集、削除時の楽観排他はどうやって実現されてますか?

1.データ取得時に、更新日時を持っておく。
2.編集(削除)実行前に、対象データを検索して、更新日時を取得
3. 1と2の更新日時を比較
4. 同じなら編集(削除)実行、違ったら何もしない。

こんな感じでしょうか?

CakePHPでSELECT FOR UPDATEってどうやって実現するのでしょうか?
普通にSQL文を投げる?なんとなくCakeぽっくないですが・・・
0361nobodyさん2010/05/12(水) 09:59:39ID:???
>>360
http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=1500&forum=6&post_id=3400
やったことないけど、公式フォーラムにあったよ
見てないけどbehavior作った人もいるみたい
03623582010/05/12(水) 13:42:37ID:ISVrEn/n
スレ違いかもですが、サイト運営したことないんですけど、やっぱ
sanitizeしないと危険ですよね?
皆さんどーしてはるんですか?
0363nobodyさん2010/05/12(水) 14:33:07ID:???
>>362
DBには素のデータを保存し書き出すときにエスケープが基本やで

あとsageてな
0364nobodyさん2010/05/12(水) 14:41:27ID:???
>>362
サニタイズは必要だよ。
359の方法は試したのか?CakePHPのソースあるんだから、人に頼る前に自分でコード追ったり、
どんなSQL文が発行しているのか、確認した方がいいんじゃないか?


ここ、質問スレ?
0365nobodyさん2010/05/12(水) 14:46:52ID:???
×SQL文が
○SQL文を
0366nobodyさん2010/05/12(水) 15:42:41ID:???
勉強会1時間で埋まったね。
0367nobodyさん2010/05/12(水) 15:47:50ID:???
実質30分足らずだった。いったん埋まった後、重複申込みとか消して、その分が埋まったのがその30分後くらい?
あしたまたあるってのは運営GJだと思う
0368sage2010/05/13(木) 22:02:44ID:DXEWzNfV
358です。
>>363
ありがとうございます。
2ちゃん素人なもんでsageは初めて知りました。

>>364
ありがとうございます。
あと、最初にスレ違いかもって断ったし、近くに質問する人いないんで、
勘弁してくださいよ。
0369nobodyさん2010/05/13(木) 22:05:53ID:???
勉強会、今日はペース悪いな
1時間で半分も埋まってない
0370nobodyさん2010/05/13(木) 22:10:10ID:???
質問する人いないので勘弁しろとは傲慢すぎクソワロタ

http://kmaebashi.com/zakki/zakki0042.html
読んでないけど。

つかここCakeのスレだったね
0371nobodyさん2010/05/14(金) 08:33:55ID:???
サニタイズはやっちゃだめだよ
0372sage2010/05/14(金) 13:28:20ID:UVik1blM
>>371
その心は何ですか?
たしかにcleanすると、<記号とか全部変換されちゃってちゃんと
取り出せないから使えないかなとは思ってますが。
0373nobodyさん2010/05/14(金) 13:58:58ID:???
サニタイズってもSQLインジェクション対策の部分とXSS対策の部分があるから
なんでもかんでもエスケープだのタグを無効化だのしとけばいいってわけじゃない。
データをDBに出し入れする時とビューで表示させる時で分けて考えれば良いよ。
0374nobodyさん2010/05/14(金) 16:21:59ID:???
>>372
sageはメール欄にな
0375nobodyさん2010/05/14(金) 16:28:01ID:???
つか1.3はどんな機能が拡張されていくんだろうかな…

出て早々だが、バージョンアップが楽しみだ
0376nobodyさん2010/05/14(金) 18:08:01ID:???
1.3の中では正直機能追加してほしくない・・・
0377nobodyさん2010/05/15(土) 07:54:07ID:???
>>375
え?
0378nobodyさん2010/05/16(日) 05:54:58ID:???
下記サイトの記述に従って、PaginateをModel中で上書きしたところ、Viewで、
”Undefined variable: paginator”と出るようになってしまいました。

どうすれば、View中で$paginatorを取得する事ができるでしょうか。

http://book.cakephp.org/ja/compare/249/Custom-Query-Pagination


model/group.php:
 class Group extends AppModel
 {
    function paginate($conditions=null, $fields=NULL, $order=NULL, $limit=20, $page = 1, $recursive = null, $extra = array()) {
       $conditions = array("Group.id" => "1");
       
       return $this->find('all', compact('conditions', 'fields', 'order', 'limit', 'page', 'recursive'));
    }   

    (以下略)
 }


views/group/index.ctp:
 <?php echo $paginator->prev('< 戻る', array('class'=>'effectived'), null, array('class'=>'disabled')); ?>
 (以下略)


エラーメッセージ: ”Undefined variable: paginator [APP/views/group/index.ctp, line **”
0379nobodyさん2010/05/16(日) 07:57:11ID:???
コントローラーでPagenatorHelper読み込んでないとかじゃないよな
0380nobodyさん2010/05/16(日) 11:43:49ID:???
あと paginate メソッドもいろいろと間違っていると思う
が、modelの中で上書きは関係ないから、まずは>>379あたりからひとつひとつチェックしていくべし
0381nobodyさん2010/05/17(月) 23:13:07ID:???
ひとつのビューに複数ボタンを設置して、押されたボタンによって処理を分けたいのですが、
押されたボタンの名前が入る変数はdataで良いのでしょうか?

<input type="submit" value="登録" name="toroku" />
を押した場合、どの変数にどの様に格納されるのか教えてください。
0382nobodyさん2010/05/18(火) 01:58:05ID:???
>>381
var_dump()なり、pr()なり、debug()なりする。
そんなもん、いちいち聞くな。

自分で実行したもんは、血となり肉と成る。
0383nobodyさん2010/05/20(木) 12:42:48ID:???
http://pc11.2ch.net/test/read.cgi/php/1240977569/
381の様なのが多いからだよな
0384nobodyさん2010/05/21(金) 09:47:01ID:???
突然、あるコントローラのアクションが2回呼ばれるようになっちゃった
今は問題の切り分けのために、アクションの中身はfile_get_contentsで文字列書き込んでるだけのシンプルな形。
なぜかわかる人、教えてください・・・
0385nobodyさん2010/05/21(金) 10:01:20ID:???
>>384
バージョンは?
0386nobodyさん2010/05/21(金) 10:12:08ID:???
>>384
2回呼ばれるというのは何をもって言ってるの?
アクションの先頭でdebug()おいて二回表示されるとか?
たんにfile_get_contents()が二回されてるだけ?
0387nobodyさん2010/05/21(金) 10:32:14ID:2DyunNSv
>>385
1.2.6です

>>386
$text = file_get_contents('test.txt');
$text .= 'a';
file_put_contents('test.txt', $text);

アクションの中身はこうなってて、1回叩くだけでtest.txtの中身が「aa」になっちゃいます・・・
0388nobodyさん2010/05/21(金) 10:52:26ID:???
>>387
debug( file_get_contents('test.txt') );
file_put_contents('test.txt', date() ,FILE_APPEND);

で、問題を切り分けてみたら?
03893872010/05/21(金) 12:42:28ID:2DyunNSv
>>388
今出先なので後で試してみます
0390nobodyさん2010/05/21(金) 19:30:09ID:???
必要なのはまずdebuggerの環境だとおもうけど。
■ このスレッドは過去ログ倉庫に格納されています