CakePHP

[cakephp2]アプリケーションを複数設置してAPCを用いている場合の注意

意外と気が付かない点。 APCをつかってcakephp2のアプリケーションを複数サーバーに設置している場合。 設定を一部ダブらないようにした方がいいようです。 core.php //APCを使う場合の設定例 Configure::write...
WordPress

[WordPress]検索サイトにインデックスされない場合

Wordpressを使っていて、なぜか、いつまでたっても検索さいとにインデックスされない場合。 管理画面で以下の設定を調べてみてください。 設定->表示設定->検索エンジンがサイトをインデックスしないようにする ここにチェックが入っていたら...
開発

[jQuery]exValidationの遅延チェック

exValidationは大変便利な入力チェックのライブラリで、よく使っています。 Submit時だけでなく、任意のタイミングでヴァリデーションをしたいときは以下のようにします。 #hogeの判定をする場合 var validation =...
CakePHP

[Cakephp2]Cake plus の罠

Cake plus は大変便利なプラグインです。 フォームデータをhiddenで引き継ぐのは、いちいちhiddenメソッドを書かなくてはいけないため非常に面倒ですが、このプラグインを使うと $this->FormHidden->hidden...
開発

[mysql]MySQLでエラー「ERROR 1153 (08S01)

これはSQL文が長すぎる場合に発生するエラーです。 投入するSQL文を短くするかmy.confで以下の設定を追加または値を大きくしますします。 max_allowed_packet = 1G ここでは1Gとかなり大きくとりましたが、サーバー...
CakePHP

[cakephp2.x]セッションの保存先をDBするときにハマった件

表題の件。 cakephp2でセッションの保存先をDBにする場合。 core.phpでSessionの設定を下記に変更して Configure::write('Session', array( //'defaults' => 'php' '...
CakePHP

[cakephp2]外部ファイル更新時のキャッシュについて

css等を更新したときに、名前を変えないとキャッシュが効いてしまって変更が有効にならない場合、 以前の記事でSVNのバージョン番号を付与するように改造するといいという記事を書きました。 しかし、実はもっといい方法が用意されていました。 co...
CakePHP

[cakephp2.x]APC利用時のan internal error has occurredエラーについて

cakephp利用時にan internal error has occurred.が出てしまうことが まれにあります。 困ったことに、このエラー、根本的な原因がわからないことが多い。 たいていの場合はキャッシュとモデル(テーブル)の問題で...
CakePHP

[cakephp2]modelのソートでrand()を使う場合の注意

たとえば、ランダムにデータを取得したい場合。 $this->(model)->find('list',array('order'=>array('rand()'))); とするとSQLでは ... rand() ASC ... などとなって...
Linux

[postfix]CentOSでメール送信サーバーの構築 — gmail yahoo 宛てでも届くように

初期設定ではメールが迷惑メール扱いになってしまうことがあります。 迷惑メール判別の仕組みはいくつかありますが、yahoo等で採用しているSPF認証とDKIMを設定してみます。 これを設定しておけば迷惑メール扱いなりにくくなるはずです。 なお...
Linux

[SVN]can’t convert string from ‘utf-8’ to native encodingエラーについて

LinuxでソースファイルをSVNで管理していて、アップデートしたらエラーが発生してどうしても更新できません。 can't convert string from 'utf-8' to native encoding これは、SVNの管理下...
CakePHP

[CakePHP2.x]adminルーティング時のリンク指定

adminルーティングした場合にリンク等でURLを指定したい場合。パラメータをどうしたらいいかわからず詰まってしまった。 まぁ、'/admin/hoges/action'といった感じで指定してもいいのですが、配列で指定する場合は下記のように...
CakePHP

[CakePHP]外部ファイルにバージョン番号を付加してキャッシュ問題を解決する方法

CakePHPに限らず、CSSやJSファイル等を更新した場合、キャッシュが効いてしまい最新のものが読み込まれない場合があります。 この場合、ファイル名を変えればいいのですが、それはすごく大変です。 そこで、下記のようにバージョン番号を付加し...
CakePHP

[cakephp2.x]shellの中でviewを使いたい

まれに、shellの中でhtmlファイルを生成したいことがあります。また、htmlメールを送信したい場合もあるでしょう。 一応、shellの機能の中にテンプレート機能があるようなのですが、使い方の情報が少ないのと、いまいち使い勝手が悪い。 ...
CakePHP

[cakephp2.x]ヘルパーでヴァリデーションエラーの内容を見たい

ヘルパーでヴァリデーションエラーの内容を見たかったのだがどうやってアクセスしていいかわからない。 ヘルパー内で$thisのダンプをとっていって何とか見つけました。 $this->_View->Form->validationErrors こ...
CakePHP

[cakephp2.x]pagenateのカウントがおかしい場合。

pagenateのfiledsでDESCENTやgrop byを使うとカウントがおかしくなってしまう場合。 AppModel.phpに以下でpaginateCount()関数をオーバーライドすればいい。 function paginateC...
CakePHP

[CakePHP1.2]Cakeでレプリケーションを使う場合

config/database.phpにマスター、スレーブのdb接続設定を以下のように追加する。 例 $default=array(DB設定); //スレーブ $default_master=array(DB設定); //マスター save...
開発

[SVN]コマンドからチェックアウト方法

ssh経由でのSVNチェックアウト方法をいつも忘れてしまうのでメモ書き。 svn co svn+ssh://username@servername/(ルートからのプロジェクトのフルパス WebDABとかのURLではないので注意!)
CakePHP

[CakePHP2.x]modelの連想配列にモデル名が入ってこない件

CakePHP2.x系+CentOS6系の組み合わせだと、なぜかmodelの連想配列にモデル名が入ってこない場合があるようです。 どうもPDO.MySQLとMySQLの組み合わせで、あるAPIでテーブル名がうまく取得できない場合があるため、...
CakePHP

[CakePHP1.2]モデルのテーブル名を動的に切り替える

モデルで使用しているテーブル名を動的に切り替えるメソッド $this->Model->setSource(table_name); マージテーブルなどで年代別に複数のテーブルに分割している場合などで、特定のテーブルのデータを取得したいときに...