CakePHP のおいしい食べ方 http://cakephp.seesaa.net/ CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日本発のCakePHP応援ブログとして、最新情報をお届けします。 ja
  • http://cakephp.seesaa.net/article/434784605.html Peer.js と戯れたい (投稿先間違えたのでこちらにもポストしちゃいます。)個人プロジェクトとしては、CakePHP + Peer.js であれやこれやしたいことが色々あるのですが、しなければいけないことに忙殺されてまったく何もできません。うーん、ブログを書く優先度もかなり下です今。はい。ただ今でも生きてますよ!今はお客様のためにコードを必死で書く毎日でございます。CafeXが今年も勝ちました。Vidyoに勝ちましたね。CafeXはすごいですよぉ~。http://www.enterpriseconn.. CakePHP General SDozono 2016-03-10T17:35:19+09:00 <![CDATA[ (投稿先間違えたのでこちらにもポストしちゃいます。)

    個人プロジェクトとしては、CakePHP + Peer.js であれやこれやしたいことが色々あるのですが、しなければいけないことに忙殺されてまったく何もできません。

    うーん、ブログを書く優先度もかなり下です今。はい。
    ただ今でも生きてますよ!
    今はお客様のためにコードを必死で書く毎日でございます。

    CafeXが今年も勝ちました。Vidyoに勝ちましたね。CafeXはすごいですよぉ~。

    http://www.enterpriseconnect.com/bestofenterpriseconnect/
    Best of Enterprise Connect
    The Best of Enterprise Connect award recognizes exhibitors who have made significant technological advancements within the enterprise communications and collaboration industry.The Best of Enterprise Connect award recognizes exhibitors who have made significant technological advancements within the enterprise communications and collaboration industry.
    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/423196646.html LiveAssist(ライブアシスト) = 同期ブラウジング+WebRTC+メディアコンバーター+SIP接続+プラスα CBAで取り扱いを始めた製品です。http://cba-japan.com/cafex/アメリカではすでにあんなところやこんなところで実稼働中です。オペレータは、単にお客様の見ているページのURLを開くだけでなく、実際の画面イメージを見たり、フォームに代理記入してあげたりすることも可能です。既存のWebサイトに数行追加するだけでこの機能が動作するようになります。もちろん、モバイルアプリについては作りこみが必要です。代理店も募集しておりますので、お問い合わせもお待ちしております.. JavaScript SDozono 2015-07-29T10:53:49+09:00 <![CDATA[ CBAで取り扱いを始めた製品です。
    http://cba-japan.com/cafex/
    アメリカではすでにあんなところやこんなところで実稼働中です。
    オペレータは、単にお客様の見ているページのURLを開くだけでなく、実際の画面イメージを見たり、フォームに代理記入してあげたりすることも可能です。

    既存のWebサイトに数行追加するだけでこの機能が動作するようになります。もちろん、モバイルアプリについては作りこみが必要です。
    代理店も募集しておりますので、お問い合わせもお待ちしております。



    その他のビデオはこちら:
    https://www.youtube.com/channel/UCCRFDrWXJghQAY8PIgZmmWg ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/407164112.html CakePHP + Bootstrap で Bakeしたい人向け! CakePHPでBootstrapを使ったBakeが簡単にできないかなーと探していたら、下記を見つけました。これは便利!サクッとBoostrapテンプレートを使ったBakeができます。シンプルなのがいい!Bootstrap + CakePHP = BootstrapCake – A Console Shell Templatehttp://www.ekoim.com/blog/bootstrap-cakephp-bootstrapcake/https://github.com.. CakePHP General SDozono 2014-10-15T14:39:29+09:00 <![CDATA[ CakePHPでBootstrapを使ったBakeが簡単にできないかなーと探していたら、下記を見つけました。
    これは便利!
    サクッとBoostrapテンプレートを使ったBakeができます。
    シンプルなのがいい!

    Bootstrap + CakePHP = BootstrapCake – A Console Shell Template
    http://www.ekoim.com/blog/bootstrap-cakephp-bootstrapcake/
    https://github.com/EKOInternetMarketing/BootstrapCake
    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/394867184.html 「和」や「郎」の入った名前の人は、Internet Explorerのクッキー/セッションの不具合に注意 いやあ、こんなエントリーを書く日が来るとは・・・・。3行でまとめると、======================症状: 自動アップデートの後、自動インストールされた Internet Explorer 11でログイン情報などが記憶されない。(クッキーがまったく効かない)原因: Windowsユーザフォルダ名(C:\ユーザー\ のフォルダ)に「郎」の漢字が含まれていたから対策: ユーザフォルダの名前を変更する。(または新規ユーザを作り直す。)=================.. CakePHP General SDozono 2014-04-17T10:12:17+09:00 <![CDATA[ いやあ、こんなエントリーを書く日が来るとは・・・・。
    3行でまとめると、
    ======================
    症状: 自動アップデートの後、自動インストールされた Internet Explorer 11でログイン情報などが記憶されない。(クッキーがまったく効かない)
    原因: Windowsユーザフォルダ名(C:\ユーザー\ のフォルダ)に「郎」の漢字が含まれていたから
    対策: ユーザフォルダの名前を変更する。(または新規ユーザを作り直す。)
    ======================

    いやぁ、標的型攻撃みたいだな。
    「郎」の付く名前は、下記をみると色々ありますので、
    http://kanji.reader.bz/more/%E9%83%8E
    今この時点で数千人の人がこの症状に悩まされているのではないか、と妄想。

    現在、お客様がIEで使用する予定のアプリを開発中です。そんな中、開発マシンのWindows 8.1の自動アップデートをかけた後、IE11の挙動がおかしいことに気が付きました。クッキーを覚えず、別タブになると、すぐにログイン画面に戻されてしまうのです。おかしい、おかしいとIEの設定をあれこれ変えたり、リセットしたり。アプリ側のコードが悪いのかとそちらも確認。ただ、Firefox, Chrome, Windows 7上のIE9なら問題なし・・・・とまったく原因が判明せず。Webで探しても情報なし。このままお客様の現場で同じ現象が起きたら大変だ。このままでは開発中の製品を出せない!!!

    と思いきや、昨晩、ようやくこちらの記事を発見。
    http://answers.microsoft.com/ja-jp/ie/forum/ie10-windows_7/ie%E3%82%92%E9%96%89%E3%81%98%E3%81%9F%E3%81%A0/70fd3901-a4ec-46bb-be12-8c770c4a3529
    =========================================

    「Microsoft コミュニティ - Internet Explorer」
    質問
    IEを閉じただけでログイン情報が削除されます
    僕もまふろさんと似たような状態で、IEを閉じただけでログイン情報が削除されます。
    IEを閉じずとも時間を置くことや、新しいタブを開くことで削除されます。
    この現象をwww.freem.ne.jp、Bing(検索設定)、ニコ動で確認しました。
    クッキーが保存されてないのでしょうか。

    OSはWindows 7 Home Premium (x64)です。
    IE9からIE10にアップグレードした途端に発生しました。

    ・「閲覧履歴の削除」で全項目を選択
    ・「インターネットオプション」のリセット(個人情報も選択
    ・CCleanerでIEの全項目を消去
    これだけやってみましたが、ダメでした。

    =========================================
    こちらのまとめとして、
    =========================================

    『小鳥遊六花』で試してみると症状が出ました。
    (すみません、前回は『山田花子』で試していました。)

    他にもいろいろ試してみたところ、次のようになりました。

    症状が出なかった日本語のアカウント名 : 『山田花子』『津森美緒』『小鳥遊』『五』
    症状が出た日本語のアカウント名 : 『小鳥遊六花』『小鳥遊六花さん』『六花』『六』

    また、IE 9 で試したときは『小鳥遊六花』でも問題がなかったので、試しに、IE 10 を削除して IE 9 に戻してみたのですが、『六』のついているアカウントでは症状が出たままでした。

    どうやらユーザー名に『六』が入っているとダメなようです。。

    =========================================

    文字コード表 シフトJIS(Shift_JIS)
    から、推定すると、

    牢 狼 篭 老 聾 蝋 郎 六 麓 禄 肋 録 論 倭 和 話 歪 賄 脇 惑 枠 鷲 亙 亘 鰐 詫 藁 蕨 椀 湾 碗 腕

    これらの文字が危なそうです。

    =========================================

    とあります。
    そういえば、私のユーザフォルダも "C:¥ユーザー¥■■郎" で、「郎」の漢字が入っています。
    これ勝手に漢字のフォルダになっていて、いやだったんだよなー。

    Windows 8.1をクリーンインストールした時、まさか、登録した名前の漢字がユーザフォルダ名としてそのまま使用されるとは思いませんでした。あれが今頃になって大きな問題になるとは。あと、OneDrive(Skydrive)のアカウントは、すでに容量が増えた状態になっているので、おいそれと新規ユーザ作ってオッケーというわけになりません。新ユーザを作ったら、新しいOneDriveアカウントになってしまう!?

    上記のリンクには、
    =========================

    問題の広がりの可能性、対処時のユーザ負担を考えると、早く、速く対応したほうがよいでしょう。
    Win8、IE10、MS社の評判、信認、ひいては業績にかかわるかも。

    =========================
    とありますが、IE11でもまだその問題が残っている、ということですね。

    下記、Internet Explorer 10とありますが、IE11もですね。
    http://support.microsoft.com/kb/2873010/ja
    Windows 8.1で「ユーザアカウントをひらがなに差し替え」ても、
    C:\ユーザー\■■郎
    というフォルダ名は変更されないです。

    私の場合、下記のリンクからたどった、

    情報科学屋さんを目指す人のメモ
    http://did2memo.net/2013/03/07/windows-8-user-folder-name/
    「Windows 8 初期設定で要注意!ユーザフォルダ名が漢字になってしまった原因」

    下記のリンクの"I have already logged into that account"という所の方法で、そのままのアカウントのフォルダ名を変更できました。
    http://superuser.com/questions/495290/how-to-rename-user-folder-in-windows-8

    ただ、失敗のリスクを考えると、おいそれと人にお勧め出来る方法ではありません。
    これ、たまたま解決方法が見つかったからよかったものの、締め切りぎりぎりで作業している身にとっては、1日が丸々つぶれる「だけ」ですんだのが不思議なくらいです。特に、最初に登録したアカウント名の漢字に「郎」が入っている場合だけ、みたいなバグは、まわりの人に聞いてもその存在すら知らないわけで、全国の「郎」の入ったWindows使用者がこの問題にはまらないよう、願うばかりです・・・・。

    [追記]やはり、上記でフォルダ名を変更した場合、レジストリに残っているパスの履歴などまでまとめて変更されるわけもなく、結局、レジストリの検索・置換できるツールで、一括して新しい半角英数字のユーザ名へとレジストリのデータも変更しました。今のところ、問題なく動作しています。

    [さらに追記]今日(2014/5/2)のIEアップデートも試してみましたが、改善されませんでした。「テスト太郎」というアカウントを作って試したところ、見事にGmailもYahooもログイン状態にできず。



    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/391430580.html CakePHP 3.0.X は複合キーに対応! いいか悪いかは別として、複合キーに対応するようになるそうです!ORM improvementsWe've continued to build out capabilities in the ORM. Some notable improvements in dev2 were:Composite primary key support - The ORM now supports composite primary keys in all associations.http.. CakePHP General SDozono 2014-03-14T13:38:31+09:00 <![CDATA[ いいか悪いかは別として、複合キーに対応するようになるそうです!

    ORM improvements
    We've continued to build out capabilities in the ORM. Some notable improvements in dev2 were:
    Composite primary key support - The ORM now supports composite primary keys in all associations.
    http://bakery.cakephp.org/articles/lorenzo/2014/03/12/cakephp_3_0_0_dev_preview_2_released
    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/386427257.html Search Pluginで、orConditions() みたいなのを使いながら同時に絞り込む ついでにもうひとつ書いておきます。https://github.com/CakeDC/searchの Search Pluginの説明を見ると、 orConditions() のようなメソッドを自分で書くと、「同じキーワードで複数フィールドを検索できちゃったりするよ」と書いてあります。モデル.php の中に、public $filterArgs = array( 'filter' =&gt; array('type' =&gt; 'query', 'method.. CakePHP General SDozono 2014-01-29T17:17:01+09:00 <![CDATA[ ついでにもうひとつ書いておきます。

    https://github.com/CakeDC/search
    の Search Pluginの説明を見ると、 orConditions() のようなメソッドを自分で書くと、「同じキーワードで複数フィールドを検索できちゃったりするよ」と書いてあります。

    モデル.php の中に、

    public $filterArgs = array(
    'filter' => array('type' => 'query', 'method' => 'orConditions'),
    );

    とか書いて、

    public function orConditions($data = array()) {
    $filter = $data['filter'];
    $cond = array(
    'OR' => array(
    $this->alias . '.title LIKE' => '%' . $filter . '%',
    $this->alias . '.body LIKE' => '%' . $filter . '%',
    ));
    return $cond;
    }

    というコードに誘導してやれば、titleフィールドとbodyフィールドを両方検索できちゃいますよ、と。
    でもこれをそのまま素直に使うと、検索項目が複数あるときに問題になってしまいます。

    せっかくサンプルの標準状態では、
    SQLのクエリが、
     ~~~ WHERE モデル.フィールドA='A' AND モデル.フィールドB='B' AND モデル.フィールドC='C'
    のように絞り込みになっているのに、上記をそのままつっこむと、
     ~~~ WHERE モデル.フィールドA='A' OR モデル.title='B' OR モデル.body='B' AND モデル.フィールドC='C'
    とかになってしまうんです。
    これは使えない!

    で、これの解決策ですが、ちょっと考えると思いつきます。
    下記のように"きちんと"設定しましょう。

    public function orConditions($data = array()) {
    $filter = $data['filter'];
    $cond = array(
    'AND'=>array(
    'OR' => array(
    $this->alias . '.title LIKE' => '%' . $filter . '%',
    $this->alias . '.body LIKE' => '%' . $filter . '%',
    )
    ));
    return $cond;
    }


    こうするだけで、

     ~~~ WHERE モデル.フィールドA='A' AND (モデル.title='B' OR モデル.body='B') AND モデル.フィールドC='C'

    というSQLになります。






    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/386426491.html Search Plugin で、SQL Query: validateSearch エラー ひさしぶりにCakePHPのプログラムを書いています。ほんとにひさしぶりだな~。CakePHP 1.X の時代から 2.X に突然ジャンプしたので、覚えることがけっこうあります。あれ、core.php にはもう、あのSecurity.levelとかなくなってるぞ!!こちらの記事、非常に興味深く読みました。あかつきのお宿Security.levelはどこへ消えた?(CakePHP2系の話)http://norm-nois.com/blog/archives/2290そうなのか!.. CakePHP General SDozono 2014-01-29T17:04:01+09:00 <![CDATA[ ひさしぶりにCakePHPのプログラムを書いています。ほんとにひさしぶりだな~。
    CakePHP 1.X の時代から 2.X に突然ジャンプしたので、覚えることがけっこうあります。
    あれ、core.php にはもう、あのSecurity.levelとかなくなってるぞ!!

    こちらの記事、非常に興味深く読みました。

    あかつきのお宿
    Security.levelはどこへ消えた?(CakePHP2系の話)
    http://norm-nois.com/blog/archives/2290

    そうなのか!!
    で、本題ですが、SecurityPlugin で下記のようなエラーが出ました。
    (ちなみにPostgreSQLです。)
    ---------------------------------------
    Database Error
    Error: SQLSTATE[42601]: Syntax error: 7 ERROR: "validateSearch"またはその近辺で構文エラー LINE 1: validateSearch ^
    SQL Query: validateSearch
    Notice: If you want to customize this error message, create app\View\Errors\pdo_error.ctp
    ---------------------------------------
    Cakeの規約に従っていないテーブルを使わなきゃいけないからかなーとか、色々考えてしまったのですが、結局この原因は、「SearchableBehavior.phpが正しく読み込めていないから」でした。

    いろいろ見返して、結局、
    public $actsAs=array("Search.Searchable");
    とではなく、
    public $actAs=array("Search.Searchable");
    と書いてあるのに気がついて直しました。

    そしたらきちんと動きました。(泣
    恥ずかしながらドジりました(古いな― ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/381795610.html CakePHP 2.3.10で認証チュートリアル 2005、2006年あたりの、CakePHPがうぶ声を上げたころにはいろいろ活動していた堂園です。cakephp.jp を整備したり、マニュアルを書いたり、コミュニティをもりあげたりと色々していたなー。今回、久しぶりに新規プロジェクトをCakeでつくりはじめました。それほど最新のものではなくてよいと、2.3.10で作りはじめようかと思ったのですが、ちょっとはまったのでここに書いておきます。CakePHP 2.X 用には、チュートリアル:"シンプルな認証と承認のアプリケーション.. CakePHP General SDozono 2013-12-03T15:07:57+09:00 <![CDATA[ 2005、2006年あたりの、CakePHPがうぶ声を上げたころにはいろいろ活動していた堂園です。
    cakephp.jp を整備したり、マニュアルを書いたり、コミュニティをもりあげたりと色々していたなー。
    今回、久しぶりに新規プロジェクトをCakeでつくりはじめました。

    それほど最新のものではなくてよいと、2.3.10で作りはじめようかと思ったのですが、ちょっとはまったのでここに書いておきます。
    CakePHP 2.X 用には、チュートリアル:

    "シンプルな認証と承認のアプリケーション"
    http://book.cakephp.org/2.0/ja/tutorials-and-examples/blog-auth-example/auth.html

    がありますが、これがもう2.4.Xじゃないと動作しないコードになっています。2.3.10でこのチュートリアルをはじめたらはまりました。

    チュートリアルでは、
    頭で

    App::uses('SimplePasswordHasher', 'Controller/Component/Auth');

    beforeSave()内で

    $passwordHasher = new SimplePasswordHasher();
    $this->data[$this->alias]['password'] = $passwordHasher->hash($this->data[$this->alias]['password']);

    となっていますが、2.3.10ではここが、

    $this->data[$this->alias]['password'] = AuthComponent::password($this->data[$this->alias]['password']);

    とする必要があるらしいです。

    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/370534232.html Telephone Marketing System build with CakePHP 簡単に自社にマーケティング・コールセンターを構築できるパッケージシステムhttp://www.fusioncom.co.jp/houjin/connect/outbound/通常は非常に高価な通録システムもアイデアで組み込んでいるのが味噌です。 CakePHP General SDozono 2013-07-29T10:14:26+09:00 <![CDATA[ 簡単に自社にマーケティング・コールセンターを構築できるパッケージシステム
    http://www.fusioncom.co.jp/houjin/connect/outbound/

    通常は非常に高価な通録システムもアイデアで組み込んでいるのが味噌です。
    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/316419878.html 生みの苦しみ CakePHP 3.0について、いろいろな意見が沸騰中。3.0: a peek into CakePHP's futurehttp://bakery.cakephp.org/articles/lorenzo/2012/07/06/3_0_a_peek_into_cakephps_futurehttps://groups.google.com/d/topic/cake-php/-TLn6RpHt4U/discussionXXみたいにしないでくれーとか、モデルのデータがArray.. CakePHP General SDozono 2013-01-26T21:38:06+09:00 <![CDATA[ CakePHP 3.0について、いろいろな意見が沸騰中。

    3.0: a peek into CakePHP's future
    http://bakery.cakephp.org/articles/lorenzo/2012/07/06/3_0_a_peek_into_cakephps_future
    https://groups.google.com/d/topic/cake-php/-TLn6RpHt4U/discussion

    XXみたいにしないでくれーとか、モデルのデータがArraysじゃなくなるって大丈夫?とか、PHPのバージョン指定がそれでいいの、とか色々色々。
    一つのターニングポイントではありますね。
    今後が面白くなっています。

    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/301055200.html 『CakePHP2実践入門』は、CakePHP1.xからのリハビリに最適! 雑事に追われて、原稿を公開済みにしないまましばらく時間が経過してしまいました・・・。わざと各駅の電車に乗って、最後の文章校正をして、やっとこ公開します。安藤さん、岸田さん、新原さん、市川さん、渡辺さん、鈴木さんの渾身の力作、「CakePHP2実践入門」で勉強しています。(安藤さん、書籍を送ってくださり、どうもありがとうございます!)PHPでの開発にはCakePHPフレームワークが当たり前のように使われるようになって、大規模事例もよく耳にするようになってから、かなりの期間がたち.. CakePHP General SDozono 2012-11-09T12:22:31+09:00 <![CDATA[ 雑事に追われて、原稿を公開済みにしないまましばらく時間が経過してしまいました・・・。
    わざと各駅の電車に乗って、最後の文章校正をして、やっとこ公開します。

    安藤さん、岸田さん、新原さん、市川さん、渡辺さん、鈴木さんの渾身の力作、「CakePHP2実践入門」で勉強しています。(安藤さん、書籍を送ってくださり、どうもありがとうございます!)PHPでの開発にはCakePHPフレームワークが当たり前のように使われるようになって、大規模事例もよく耳にするようになってから、かなりの期間がたちました。この本には、そうした歴史を作ってきた開発者たちのノウハウがいっぱいつまった一冊です。どのページにも大事なことが書いてあって、まるで6人の講師による講習コースを一週間受けているような気になりました。



    私の現在の仕事では、ここしばらくPerlとLinuxが中心で(使わなきゃいけないサーバにPHPが入っていないんですよ。あとデーモン類も書いているので。)なかなかCakeに触れていないのですが、この本を読むたびにまた新たなプロジェクトを立ち上げたくなります。

    また、現在は Ruby on RailsやPython Djangoなどのツール類も使っていますが、PHPではとんとお目にかからない、"500 Internal Server Error"が出るたびに、サーバの中でエラーってなんだよ、なにが起こったのかすぐに教えてくれー、という気持ちになります。そういう点ではPHPってホントにいいですね!PHPでない仕事にかかわると、PHPの良さも見えてきます。

    CakePHP1.Xの経験者がリハビリするための、特におすすめの章:
    第3章  CakePHPを試してみよう
    第12章 ユニットテスト
    第17章 CakePHP1系からの移行
    などでしょうか。非常に参考になる経験者ならではのノウハウがつまっています。

    あと、この本のもう一つの特徴は、「Web上にある入門チュートリアルやマニュアルと情報がかぶっていない」ということです。Webで検索できるようなことはそちらで調べたら良い、という方針のもと(そうかな?)、よくみんながつまづく点、それ詳しく解説して欲しかったーと思う点などが重点的にまとめられています。

    CakePHPをおいしく食べたいそこのあなた、『CakePHP2実践入門』はおすすめですよ! ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/279254593.html CakePHP 3.0! いやー久しぶりだなー。このブログももうそろそろ化石化しつつありますが、なかなか感慨深い記事があったので、思わず書いてしまいました。このブログを見ている方なんてもういないかもしれませんが。http://bakery.cakephp.org/articles/lorenzo/2012/07/06/3_0_a_peek_into_cakephps_future3.0: a peek into CakePHP's futureずいぶんと昔、CakePHP 2について議論されている間に.. CakePHP General SDozono 2012-07-06T15:09:59+09:00 <![CDATA[ いやー久しぶりだなー。
    このブログももうそろそろ化石化しつつありますが、なかなか感慨深い記事があったので、思わず書いてしまいました。このブログを見ている方なんてもういないかもしれませんが。

    http://bakery.cakephp.org/articles/lorenzo/2012/07/06/3_0_a_peek_into_cakephps_future
    3.0: a peek into CakePHP's future

    ずいぶんと昔、CakePHP 2について議論されている間に、CakePHPの“当時の”リードデベロッパーがCakePHP3の構想を練っていた時期がありました。そちらは、Cakeから抜けて、Lithiumとして開発が勧められていま(す。
    https://github.com/UnionOfRAD/lithium

    で、今回、CakePHPのほうのバージョンがあがってきて、いよいよ「本家」での3.0をどうするのか構想が上がってきたと。CakePHP 3.0は、PHP 5.4以上に特化した、とんがったフレームワークにしたいと考えているようですね・・・。
    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/263592101.html UTF-8以外のエンコーディングの際のチェックポイント 1年ぶりの投稿だー。いつの間にか時間が過ぎていました。で、今はたいていUTF-8で統一してサイトを作るのですが、今回、昔のシステムの中にCakeアプリをさっと入れようと思ったのですが、思わぬところではまったので書いておきます。・MySQL 4.0で、テーブルが EUC-JP(ujis)・なので、database.php の中で、エンコーディングを ujis に設定した。・CakePHP 1.3.14 で現在の最新版・/app/views/layouts/default.ctp.. CakePHP General SDozono 2012-04-10T16:38:36+09:00 <![CDATA[ 1年ぶりの投稿だー。
    いつの間にか時間が過ぎていました。

    で、今はたいていUTF-8で統一してサイトを作るのですが、今回、昔のシステムの中にCakeアプリをさっと入れようと思ったのですが、思わぬところではまったので書いておきます。

    ・MySQL 4.0で、テーブルが EUC-JP(ujis)
    ・なので、database.php の中で、エンコーディングを ujis に設定した。
    ・CakePHP 1.3.14 で現在の最新版
    ・/app/views/layouts/default.ctpの中で、charset=euc-jpも設定した。

    なのに、
    【問題】edit.php で日本語が消えてしまう!
    という現象が発生しました。英語だときちんと表示、編集できます。なんだこりゃ。
    最新版で入った問題点かな、とか疑ってしまいました。

    viewの中の $this->Form->inputから順番にたどっていったところ、内部で h()をかけていました。そして、
    結局のところ、 core.php の中の App.encoding の値を見て、 htmlspecialchars() を実行していることが分かりました。あった、あったよ~(涙

    というわけで、"UTF-8以外のcharsetを使ってCakePHPを使う場合"には、

    ・MySQLなら、テーブルのエンコードを確認
    ・database.php の中の encoding の値を確認
    ・/views/layouts/default.ctp の中の charset の値を確認
    ・core.php の中の、App.encoding の値を確認

    という4点セットが必要です。今の時代に UTF-8じゃないコーディングで使っている人がどれぐらいいるか分かりませんが、備忘録として書いておきます。

    ふぅ・・・。
    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/197062397.html CodeIgniterがんばる! 今年2011年はPHPフレームワーク的にみると大きな転換点?かもしれません。全地域で見ると、Code IgniterがCakePHPを超えて検索量トップに出てきているようです。軽く高速なフレームワーク、というコンセプトがPHPとうまくかみ合っているのかもしれません。 PHP Framework SDozono 2011-04-22T10:46:26+09:00 <![CDATA[ 今年2011年はPHPフレームワーク的にみると大きな転換点?かもしれません。
    全地域で見ると、Code IgniterがCakePHPを超えて検索量トップに出てきているようです。
    軽く高速なフレームワーク、というコンセプトがPHPとうまくかみ合っているのかもしれません。

    ScreenClip.png

    ]]><![CDATA[ ]]>
    http://cakephp.seesaa.net/article/192462821.html i18n国際化表示がうまくいかない?(Locale/mo file??) とりあえず現状報告です。--------------PHP 5.2.5Zend OptimizerCakePHP 1.3.8--------------現在、Cakeのlocakeディレクトリ内に jpnディレクトリを作成し、POEditで作成した poファイルとmoファイルを入れてあります。と、なぜかあるサーバに限って日本語表示がうまくいかず、英語になってしまいました。・service httpd restart などとすると、一瞬日本語が表示される。・他のサーバではまった.. Japanese Translation SDozono 2011-03-25T17:33:10+09:00 <![CDATA[ とりあえず現状報告です。

    --------------
    PHP 5.2.5
    Zend Optimizer
    CakePHP 1.3.8
    --------------

    現在、Cakeのlocakeディレクトリ内に jpnディレクトリを作成し、POEditで作成した poファイルとmoファイルを入れてあります。と、なぜかあるサーバに限って日本語表示がうまくいかず、英語になってしまいました。

    ・service httpd restart などとすると、一瞬日本語が表示される。
    ・他のサーバではまったく問題が発生していない
    ・別ディレクトリに同じソースをコピーしても、そちらでもうまく表示されない
    ・cacheなどの設定はすべて試したがそれでは解消されなかった。
    ・Zend Optimizerを入れていたのでそれも疑っていた。

    結局、「default.moファイルのファイル名を変更して、default.poだけを使用するようにしたところ、正しく日本語表示されるようになった」という結果になりました。

    まだソースを追っていないので詳細は不明です。
    あと、/tmp/cache/persistent 内にできているファイルサイズがやたらと巨大になり、中を見てみると、同じデータがなども繰り返して入っているようでした。

    みなさんは経験ありますか~~?
    ちなみに、POEditが悪いのかと思い、msgfmtで.moファイルを作り直してもみたのですが、やはり同じ内容に・・・・。

    まだよく分かりません。

    ]]><![CDATA[ ]]>