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

【PHP】フレームワーク CakePHP 9ホール目【v1.3】

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

※sage推奨
※質問時も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
0268nobodyさん2010/08/25(水) 22:01:18ID:???
>>266
宣伝乙とか言われてたけど、色々と酷いなw
0269nobodyさん2010/08/25(水) 22:03:14ID:???
ひでーな読みたくねーわ
0270nobodyさん2010/08/25(水) 22:11:24ID:???
>>267
個人的には後者のコードの方が好きだけどな
もっとも、自分で書くなら
<? php
echo $a.'<br />'.$b;
?>
ってな感じにするけど。
02712702010/08/25(水) 22:13:12ID:???
地味に間違えてるわorz
0272nobodyさん2010/08/25(水) 22:26:25ID:???
最後まで読めばいいんじゃねとりあえず
そんな俺は買ったけどまだ読んでないw
02732412010/08/26(木) 00:42:52ID:???
Chapter3で気になったところ

・pr()を使わないでprint_r()
   pr()はインデックスに載ってないのでたぶん出てこない
   h()もそうだけど、省略表記が嫌いなんだろうか

・モデルから持ってきたデータを回すときにforeachではなくfor
   好みの問題だけど、foreachの方が使われることが多いし、特に理由がなければ最初はforeach教えた方が・・・

・$this->flashは使わずに$this->redirect
   save完了したときなどはとにかくredirectしてる。メッセージ出してあげた方が親切なんじゃ・・・
   $this->flashもインデックスには載っていないのでry(Session->flashは載ってた)
   ちなみにredirectについてTipsで「redirectはうまく動かない場合もあるので、そういうときはphp.iniを修正」という
   解説が載っている。問題起きやすいのならとりあえずflashでいい気がするけど・・・

・beforeFindの実践例で「limitやorderが設定されていなかったらデフォの設定で上書き」というもの
   limitはともかくorderは普通にmodelで設定できるからbeforeFind使わないでも・・・

・VALID_NOT_EMPTYは1.2まで使われていたバリデーション用の定数という説明
   1.2の時点で非推奨になっていたような・・・(ちょっと自信なし)

・ユーザーデータ用のテーブルがPersonalsテーブル
   形容詞じゃなくて名詞でUserテーブルとか、Peopleテーブル(Personモデル)とか・・・

・<a href="/cake/sample/boards/edit/<?php echo $id; ?>">※この投稿を編集する</a>
   $html->linkが嫌いなのか、後半を見ても基本的に直でHTML書いてます
   ルーティング使うときとか便利だし、とりあえずhtml->link使うように教えた方がいい気がします

・記事を見るのはshowアクション、投稿者のデータを見るのはshow2アクション
   さすがにshow2はないんじゃないでしょうか
   なんか昔のcgi説明サイトを思い出しました
02742412010/08/26(木) 00:45:18ID:???
・変なバリデーション
if(!empty($this->data)) {
 $this->Board->save($this->data);
}
if($this->Board->validates()) {
 $this->redirect('.');
}
検証してないんですが、たぶんこれだと2回バリデーションが行われるんじゃないでしょうか
if(!empty($this->data)) {
 if($this->Board->save($this->data)) $this->redirect('.');
}
とかでいい気がします

誤植
・P78 bloards_controller
・P168 コードの方はnotEmptyになってるけど、解説文がVALID_NOT_EMPTY


もうポストイットがもったいない気がしてきた。
0275nobodyさん2010/08/26(木) 00:56:46ID:???
>>273
買う価値がないのは十分分かったからもういいよ
あとはブログにでも書いてなよ
0276nobodyさん2010/08/26(木) 01:41:03ID:???
俺も$html->linkは使わない
デザイナから上がってきたAタグを$html->linkに置き換えるのは面倒。
どんな属性が入ってるかわからんからその都度optionsに入れる必要がある。

だから href="<?php echo $html->url(array(......))"って書き換えるようにしてる。
0277Perl忍者 ◆M5ZWRnXOj6 2010/08/26(木) 07:17:20ID:/qgtmxHg
PHPでも $ 使うんですかwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww


真似しかできないwwwwwww

Perlの真似
0278nobodyさん2010/08/26(木) 11:14:50ID:???
等と供述しており
0279nobodyさん2010/08/26(木) 12:38:59ID:???
>>278
相手にすんな
0280nobodyさん2010/08/26(木) 13:47:51ID:???
>>241
詳細なレポとても価値があるぞ。
アマゾンのカスタマーレビューに書いてくれるとなおよい。
02812412010/08/26(木) 14:05:08ID:???
書くの疲れたから、これ以上は書かないよ。
>>273の言うように、買う価値がないと伝わればそれで十分だし。
アマゾンとかブログで書くと個人特定されちゃうしね。

もう秀和システムの本は買わない。
0282nobodyさん2010/08/26(木) 22:30:09ID:???
参考になった。ありがとう。
・・・ver1.1から使ってて基本はわかってるし
あとはネットの情報で補完していくのが利口みたいだね。
0283nobodyさん2010/08/26(木) 23:15:45ID:bJUkFpkI
質問です。

CakePHPのURIって、以下のように成っていかと思いますが、

http://hoge.com/~piyo/home/コントローラー名/アクション名

http://hoge.com/~piyo/home ←この部分を定数にしたいです。


http://hoge.comは、FULL_BASE_URLという定数が用意されているので、取得できるのですが


取得する方法を知っている方は、教えてください。

0284nobodyさん2010/08/26(木) 23:43:37ID:???
あほだろお前
0285nobodyさん2010/08/27(金) 01:57:26ID:???
CakePHPのctpってHTMLのデザイナーにとってすごい見づらいね
htmlの中にPHPが大量にそのまま混ざってるって、ちょっとありえない

お前らその辺はあきらめて使ってるわけ?
0286nobodyさん2010/08/27(金) 02:13:56ID:???
<?php echo $hoge;?>
とか
<?php foreach ($arr as $foo):?>
<?php endforeach;?>
とか
<?php echo $this->element('bar');?>
くらいしか殆ど描かないんだけどいやなの?

いやならsmartyつかえばいいけど
0287nobodyさん2010/08/27(金) 02:24:01ID:???
お前らって。このスレ、デザイナーも見てるの?
0288nobodyさん2010/08/27(金) 02:25:46ID:???
>>285
PHP?なにそれ?って奴に頼んでるのかお前は
テンプレートエンジンのループなら意味解るけどfor文だとさっぱりとか言う奴の方がむしろおかしい
どうせツールで読み込めば<??>タグなんて無視されるんだし
0289nobodyさん2010/08/27(金) 10:27:21ID:eU+Zo85k
Paginatorのソートについて質問です。
Viewでソートをする場合
<?php echo $paginator->sort('ID', 'User.id');?> と書きます。

1:アソシエーションしているモデルを選択している場合、モデル名が必要ですが、
 Userというモデル名を書きたくないです。書かずにソートさせる方法はありますか?
2:ソートをクリックした後、URLがsort:User.idのようになりますが、
 カラム名がURLに表示する事に違和感を受けます。
 数字などに置きかえ出来ないでしょうか?
0290nobodyさん2010/08/27(金) 10:38:44ID:???
フレームワークの規約に従いたくないならフレームワーク使わなきゃいいんじゃね?
0291nobodyさん2010/08/27(金) 10:40:57ID:???
って言う奴多いけど、一部変えるのが困難なだけで
オレオレに戻るのはいかがなもんかとおもうけどな
0292nobodyさん2010/08/27(金) 10:44:42ID:???
自分が大好きなものにケチを付けられた時の子どもの反応と同じだね
0293nobodyさん2010/08/27(金) 10:59:30ID:???
>>285
俺はHTMLヘルパーを極力使わないようにして、ソースをシンプルにしてるよ。
デザイナーに見せたら「わかりやすいです」と言っていた。
あとは、>>286みたいに必要なコードだけ教えれば大丈夫だろ。

>>289
nanapiも普通にURLがsort:Search.pvとかなってるし、
気にしなくても大丈夫じゃねぇ?問題あったらこのやり方採用してないだろうし。
0294nobodyさん2010/08/27(金) 13:25:24ID:???
mysqlからデータを拾って、それをさらに計算して一覧にしたい場合あるよね。
そういう場合ってcakephpのpaginate使えないんだけど、みんなどうしてる?
0295nobodyさん2010/08/27(金) 13:30:08ID:???
>>294
paginateのパラメータにjoinの指定が出来るから、それ使ってる
0296nobodyさん2010/08/27(金) 13:30:44ID:???
もしもSQLで対処できないような計算の場合

1.paginateの結果(キーになる部分のみ)を変数に格納
2.キーをもとにプログラムで計算して、結果を変数に追加
3.編集した変数をsetでviewに渡す
0297nobodyさん2010/08/27(金) 13:40:06ID:???
afterFindでは出来ないの?
計算ってどんな?
0298nobodyさん2010/08/27(金) 14:09:51ID:???
>>294
virtualFieldでできるはずだが、違ったかな?
0299nobodyさん2010/08/27(金) 14:29:06ID:???
>>283
そこをルートとして使ってるのなら、普通にそのまま
define("ROOT_URL", "http://hoge.com/~piyo/home")
とかでいいじゃん

>>293
今すぐセキュリティの問題が出るというわけでもないだろうけど、
裏側の情報はあまり見せたくないという気持ちは俺にもわかる
特にsort:User.idみたいなのだと、そのまま中身が見られている
感じがして気持ち悪い
0300nobodyさん2010/08/27(金) 14:33:41ID:???
>>299
その書き方教えると「余計な定数増やすな!」って煽られるぞw
0301nobodyさん2010/08/27(金) 14:42:02ID:???
cakeはルート設置を推奨してるから、それ以外で運用するときに問題が出るのはしょうがない
0302nobodyさん2010/08/27(金) 15:05:12ID:???
295 〜 298さん
ありがとう。
user テーブル 1
id , name
shiken テーブル 多
id user_id tokuten

の関係で、「平均点で50点以上のユーザーのみ取得したい」
とか言う場合なんだけど。

join だと複雑な書き方がいまいちわからず、cakephp1.2なので virtualField使えず。
afterFind でできるならそれが一番楽だと思うんだけど。

一度上記全てをググって勉強してみます。
ありがとう。
03032992010/08/27(金) 15:09:18ID:???
>>289
1.URLはorder:idとかにして、beforeFilterあたりでparams['named']['order']を見て、
モデル名がなければモデル名を付加するとか
2.URLはorder:0とかにしておいて、bedoreFilsterあたりで、0=>id, 1=>createdみたいな
対応表を使って差し替えるとか

cakeのURLはシステム的にわかりやすいけど、ユーザーに見せるURLとは
ちょっと違う気がするんだよなあ
URLがシステム的にわかりやすいと、URLを書き換えて意図しないURLで
アクセスされちゃったりということもあるだろうし
そういうところはきちんと事前に想定して防げばいいんだろうけど、それでも
なるべくユーザーからはシステムは見えなくしたい
03042992010/08/27(金) 15:34:45ID:???
すまん適当なことを書いてしまった

$paginator->sort('ID', 'User.id');で作られるURLは、order:User.idじゃなくてsort:User.idだな
今試したらアソシエーションしたモデルでorder:idでアクセスするとエラーになるけど
sort:idでアクセスしたら、勝手にモデル名が補完された
なので、モデル名出したくないのなら$paginator->sort('ID', 'id');でいいんじゃない?
アソシエーションした他のテーブルのカラムでorderしたい場合は知らん。
0305nobodyさん2010/08/27(金) 16:17:00ID:???
>アソシエーションした他のテーブルのカラムでorderしたい場合は知らん。

その場合はやっぱり$paginator->sort('ID', 'User.id');こうなるんじゃないか?
03062992010/08/27(金) 16:24:42ID:???
それならやっぱりURLはsort:tourokujunとかにして、beforeFilterでparams['named']['sort']を見て
tourokujunだったらUser.idに書き換えるとか
03073052010/08/27(金) 16:56:58ID:???
function beforeFilter()
if (isset($this->params['named']['sort'])) {
if ($this->params['named']['sort'] === 'user_id') {
$this->params['named']['sort'] = 'User.id';
}
}
}

適当にこう書いてみたけど、こんな感じのエラーが出るね。
SQL Error: 1054: Unknown column 'User.user_id' in 'order clause'

これ以上テストするのもめんどいので後はしらねw
03082992010/08/27(金) 17:45:25ID:???
paginatorが見てるところが違ったな、$this->paramsじゃなくて$this->passedArgsだった

if (isset($this->passedArgs['sort'])) {
if ($this->passedArgs['sort'] === 'user_id') {
$this->passedArgs['sort'] = 'User.id';
}
}

これで動いた

っていうか>>289は他のテーブルのカラムでソートしたいのか?
0309nobodyさん2010/08/27(金) 18:06:07ID:???
>>308
この方法でもソートできなくねぇ?
03102992010/08/27(金) 20:28:29ID:???
1.3.3だけどちゃんと動くよ
他のテーブルのカラム指定してもOK
ただ、存在しないカラムを指定するとエラー表示せずにそのままorderなしでSQL発行するみたい
0311nobodyさん2010/08/27(金) 20:41:40ID:???
いや、そうじゃなくてpaginateで使うんだろ?
ソート扱いになっていないみたいなんだが。
0312nobodyさん2010/08/27(金) 20:48:56ID:???
アホがアホにモノ教えるって悲惨な状況だな
03133112010/08/27(金) 20:49:55ID:???
ちゃんと書かないと誤解を招くな。
308の内容を同じ1.3.3で試してみたけど、確かに1回目のOrderは適応される。
でも、ソートのリンクをクリックしたら並び替えされないし、
対象リンクのマーク(↓↑)が適応されていないよ って事を言いたかった。

308以上の事をしていたら知らんw
03142992010/08/27(金) 21:01:05ID:???
>>313
そりゃあ、pagination helperで出力する内容は変わらないだろ
そっちはそっちで整合するように修正すりゃいい話で

んで>>289,>>305,>>309,>>311,>>313は同一人物なのか?
0315nobodyさん2010/08/27(金) 21:07:32ID:???
>>314
書き下手で済まんな・・。
だから要件を満たしてないのでは?って言いたかった。

ちなみに309,311だけど。
0316nobodyさん2010/08/28(土) 14:08:58ID:???
cakeって難しいんだね
0317Miyagawa ◆M5ZWRnXOj6 2010/08/28(土) 16:50:11ID:kvWFLXrw
Hello. CPAN Module use Thank you :D
0318Miyagawa ◆M5ZWRnXOj6 2010/08/28(土) 16:56:12ID:kvWFLXrw
hi! They are shit!! fuck off!!

死ね!
0319nobodyさん2010/08/28(土) 16:58:16ID:???
fack you!
0320Miyagawa ◆M5ZWRnXOj6 2010/08/28(土) 17:10:47ID:kvWFLXrw
あんまり調子乗ってるとCPANから俺のモジュール全部消すぞこら
0321宮川マンセーオタ ◆M5ZWRnXOj6 2010/08/28(土) 17:12:21ID:kvWFLXrw
           、,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
          ノ´::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
        (:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
       (:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
      (:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::)
     (:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::)
      ヽノヽノヽノノヽノヽノノヽノヽノノヽノヽ、::::::::::::::::)
       | ,,;;;;;;;;;;;;;;,,,,,, )) ( ,,,,;;;;;;;;;;;;;,,,,   `ヽ、;;;;;;;;::)
       || ̄ ̄ ̄ ̄ ̄|____| ̄ ̄ ̄ ̄ ̄|  /~~ヽノ:::)
       ||   -=・=- 0⌒0  -=・=-  | ̄´ ´~) );;::)
       |\___/ノ  ミ\___/ヽ  つ, ノ;;;:ノ
       | ´     ./   、´    `   (_ノ;;;ノ
       <      (。、 。)         >;;;;::ノ
        \    ノ`∪´ ヽ、      /|;;;;ノ
         | ....(/~~~~~~~\)....    彡 |ノ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
         |  ( ̄ ̄~~~ ̄ ̄)     | イ  <   宮川さんを馬鹿にするのはやめませんか?
         |   ~~ ̄`´ ̄~~´    /  |   \______________
          \  .....´⌒`......   /    |
          _|\_;;;;;;;;;;;__/      |__
     __/;;;ノ               /;;;;;;;;;;;;\___
   /;;;;;;;;;;;;/;;;;\             ./;;;;;;;;;;;;;;;;;;;;;;;;;\;;;;;;;;;;;\
0322nipotan ◆M5ZWRnXOj6 2010/08/28(土) 17:14:12ID:kvWFLXrw
     _____
    /  ____彡
   /::::::/━   ━ \
  /:::::/  _   _ |
  |::::/--((・))―((・))(
  (6    ̄  つ  ̄ ヽ
  |    ___    |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   |  ∴)\_/ (∴ | < こら、宮川さんとか馬鹿にするのはやめろ
   ヽ      ―   丿  \________
    \_____/
0323nobodyさん2010/08/28(土) 17:19:32ID:???
Perl忍者いい加減にくたばれよ
0324Perl忍者 ◆M5ZWRnXOj6 2010/08/28(土) 17:27:39ID:kvWFLXrw
    X
  ∠ ̄\∩
  |/゚U゚Lノ   くたばれとか暴言やめろ
 〜( ニ⊃  
  ( 丶/
  ノ>ノ
  UU
0325nobodyさん2010/08/30(月) 02:24:39ID:???
Hyperestraierによる全文検索を、CakePHP上から実現したいと思っています。
具体的に言うと、あらかじめ作成しておいたHyperestraierのインデックスを使って、
サイト上の検索窓から検索させたいです。

APIとしては、EstraierPureをapp/vendors配演コに設置しましbス。
しかbオ、以下をどうbキればよいか分bゥらず、止まっbトいる状態です=B

(1) Hyperestraierのノードをどこのディレクトリに格納すればよいか
  とりあえず/home/user/public_html/estraierディレクトリ配下にcasketを
  格納したものの、ノードのURLとしては正常に機能していない状態のようです。
  http://localhost/~user/estraier/casket
  とすると、"Missing Controller"というCakePHPのエラーが出ます。

とりあえず、ここに質問する前に参考にしたサイトを挙げます。
■cakephpでhyperestrailerによる検索(CGI)
 http://d.hatena.ne.jp/oggata/20100406/1270540127
■EstraierPure
 http://page2.xrea.jp/#EstraierPure
■EstraierPureのapp/vendorsへの配置方法について
 http://www.and-works.co.jp/wp/archives/66
 http://book.cakephp.org/ja/compare/539/Vendor-examples

環境は以下の通りです。
 CakePHP: 1.3.0-beta
 Hyper Estraier 1.4.9 on Linux
 EstraierPure: 0.6.0
0326nobodyさん2010/08/30(月) 05:34:09ID:???
Hyperestraier以前の問題やん
0327nobodyさん2010/08/30(月) 21:41:40ID:???
なぜbeta使うの?安定版があるのに。
03283252010/08/31(火) 00:39:58ID:???
>>327
03293252010/08/31(火) 00:42:33ID:???
途中で投稿してしまいました。失礼しました。

>>327
betaが出た頃にインストールして、支障がなかったのでそのまま使っています。

あれから、HyperestraierのDBとノードを混同しているらしい事に気づきました。
とりあえず別途、Hyperestraierのノードを起動してから試してみようと思います。
0330nobodyさん2010/08/31(火) 19:00:53ID:???
CakePHP面白そうだなぁ、なんかスゴそうだなぁ
0331Perl忍者 ◆M5ZWRnXOj6 2010/08/31(火) 21:18:35ID:NL5nyoqM
         {:::::i:::::::::::::::::::::::i::/!:::::ハj       ヽ_ン´、レ'´ {:::::::i:::::\__
         レ|::|::::::::::::'、::::::N j/         ノ,、_`__>  }:::::::i`i::ト-'´-
          i::|、::::::ハ{`、:::{             ー夂_,ノイ:::::ノ ノ、j: : : : :
          j_ハ`、 {  `ヾ   `、\ ノ /  ー'´___,ィ ム'´i j-―ー--
            }::!'i、`、ー=r==、  ` 、  /   ,r='ラ ̄// i`ソ/: : : : : : : :
            '、`ハ  \_`ー'´\ 、_ i  i  /__`´__ノノ  ム'/、__: : : : : : :
            r')、゛'、   ̄二ニ´ 、`= /´ニ二 ̄   レ':::r'´'、: : : : : :
         r-、_!厶`Ti、        `          /:::::トv':.:.:.:.iー- ..__
         /  j  .V レ、       ,          ハ∧j:.:.:.:.:.:.:.\:.:.:.:.:
       _ノ  i /    |ハ!`、  _   `ー'   _,.r  /   |:.:.:.:.:.:.:.:.:.:.:.:.:.:.:
    r-‐'´   |/    |'   `ヽ、 ̄ ̄二二 ̄  ,.イ     |:.:.:.:.:.:.:.:.:.:.:.:.:.:.
  r-‐/     i     |     i`ー..._    ,.. -'´/      |:.:.:.:.:.:.:.:.:.:.:.:.:.:.

なにこのスレ・・・しねよ
0332nobodyさん2010/08/31(火) 23:13:39ID:???
生きる!!
0333nobodyさん2010/09/01(水) 10:40:36ID:???
Perl忍者嫌い
0334nobodyさん2010/09/01(水) 10:47:09ID:???
報告したらいい
0335nobodyさん2010/09/01(水) 10:56:06ID:???
NGしてほっといたらいい
0336nobodyさん2010/09/01(水) 11:14:10ID:???
じゃあ、次で
0337nobodyさん2010/09/01(水) 11:19:23ID:???
http://2010.phpmatsuri.net/
PHP Matsuri
2010年10月2日・3日開催のPHP開発合宿イベント

参加登録始まってます
0338nobodyさん2010/09/01(水) 11:26:16ID:???
合宿・・・
0339nobodyさん2010/09/01(水) 12:14:15ID:???
ど、土曜日が休みなわけねーだろ!!・・・
0340nobodyさん2010/09/01(水) 12:30:22ID:???
cookbookって順番に見ていくと表示が切り替わらないページ多くね?
0341nobodyさん2010/09/01(水) 14:13:54ID:???
多いね。特に1.3が多い気がする
0342nobodyさん2010/09/01(水) 14:28:13ID:???
あの間違ったリンクはヘルパー使って出力してるんだろうか?
0343nobodyさん2010/09/01(水) 17:53:25ID:???
単に、ビューの作成ミスじゃないか?
0344nobodyさん2010/09/02(木) 16:10:42ID:???
phpはifとかforとかの文法やったらもうフレームワーク行ったほうがいいな
0345nobodyさん2010/09/02(木) 16:19:21ID:???
SQLも覚えた方が良いと思う。
INSERTとかUPDATEとかそう言う構文じゃなくて、概念として。
0346nobodyさん2010/09/02(木) 20:09:48ID:???
phpadmin使ったらぴゅーって感じで俺でもできるよん
0347nobodyさん2010/09/02(木) 21:17:01ID:???
DB側でロジック組んだらすっきり安全に書けるところを
コードでガシガシ書いて品質落とすはめになるとか、よく見る。
ただでさえPHPは危険なコードを書きやすいし。
0348nobodyさん2010/09/02(木) 23:08:37ID:???
ああ、それはあるね。
SQLインジェクションが大手サイトで未だに多いのも、それだろうね。
0349nobodyさん2010/09/03(金) 01:14:46ID:???
PHPは危険なコードを書きやすいって何を根拠にしてるんだろうな
まともな奴でそんな事言ってるの小飼弾くらいだろ
0350nobodyさん2010/09/03(金) 02:05:24ID:???
whileは危険なコードになりやすいね。
危険というか、無限ループだけど。
0351nobodyさん2010/09/03(金) 02:20:33ID:???
>>349
それ2行目は笑うところ?
0352nobodyさん2010/09/03(金) 08:16:34ID:???
危険度なんてどの言語でも同じだけどな
昔よくあったクソみたいなPerlCGIはなんだったのみたいな
0353nobodyさん2010/09/03(金) 08:49:05ID:???
タイプセーフな言語だと事前に多少バグがわかりやすいみたいな部分はあるだろうけど、
セキュリティホールが生まれやすいって部分に関しては特に言語に優劣があるわけじゃないと思う。
強いて言えばメモリ関連も自分でやらなきゃならんC/C++が多少不利なくらいでしょ。
0354nobodyさん2010/09/03(金) 09:50:17ID:???
とりあえず、Cakeの話じゃないよね
0355nobodyさん2010/09/03(金) 10:20:38ID:???
>>354
くだらない質問よりはマシな話だと思うわ
0356nobodyさん2010/09/03(金) 12:18:04ID:???
俺は逆だと思う。くだらない質問があれば同じよう質問も減るだろ。
0357nobodyさん2010/09/03(金) 12:21:05ID:???
>>347
とりあえず謝って
0358nobodyさん2010/09/03(金) 17:44:25ID:???
ごめん
0359nobodyさん2010/09/03(金) 17:54:12ID:???
すまなかった
0360nobodyさん2010/09/03(金) 21:43:21ID:???
どっちが347だ?w
0361nobodyさん2010/09/04(土) 03:07:07ID:???
誰かさくっと教えてください
validationルールで、numericまたはdecimalってのはどう書けばいいんでしょう
複数ルールのANDは並べればいいらしいけどORがわからない
0362nobodyさん2010/09/04(土) 10:47:54ID:???
どくじばりでーしょんかくしかないんじゃない
0363nobodyさん2010/09/05(日) 00:03:21ID:???
Amazon.co.jp: 高速開発で差をつけろ!CakePHPの基礎とECサイト制作入門: 小倉 実: 本
http://www.amazon.co.jp/dp/4434147463/
これ立ち読みしてきた
159ページしかないのに3780円もしてビックリした
内容は簡単なECサイトのチュートリアルという感じで、詳しい部分には突っ込んで書かれていない
サンプルコードも「こんなので大丈夫なのか?」と思うような記述がちらほら

なんか書籍は最近不作ね
1.3のオフィシャル本が出ればいいのに
0364nobodyさん2010/09/05(日) 00:50:15ID:???
>>363
>第1章 CakePHPの環境設定と準備(秀丸とFirefoxのダウンロード

そっからかよw
0365nobodyさん2010/09/05(日) 01:42:24ID:???
秀丸てw
せめてphpshotのPHPエディタだろw
0366nobodyさん2010/09/05(日) 03:15:36ID:???
秀丸w
0367nobodyさん2010/09/05(日) 15:21:03ID:???
秀丸の何がおかしい!
■ このスレッドは過去ログ倉庫に格納されています