AutoPagerize対応したシンプルなTwitter検索「findTwitter」を作りました。 Twitterのつぶやきを検索 機能はシンプルです。テキストボックスに検索したいキーワードを入力して、「検索する」ボタンをクリックするとキーワードに合致したつぶやきを表示します。 「shin1x1」で検索 検索パターンとしては以下のような組み合わせが可能です。 単語で検索。(ex. [CakePHP]) スペースで単語を連結してAND検索。(ex. [PHP カンファレンス]) 「OR」で単語を連結してOR検索。(ex. [shin1x1 OR msng]) 仕組み TwitterAPIを叩いているだけ 仕組みはごくごく単純でTwitterの検索APIを叩いてるだけです。 検索結果はAPIの挙動に依存しているので、検索漏れや古いつぶやきが検索対象にならないなど現象があります。 CakePH
CakePHPのブログチュートリアルを本番で試しながらやっていたのですが,やはりローカル環境でやったほうがいいのでローカルで実行してみると日本語が文字化けしてしまいました. mysqlなどの環境はすべてutf8です. まずはデフォルトの/app/config/database.phpにencodingを足してみました. var $default = array('driver' => 'mysql', 'connect' => 'mysql_pconnect', 'persistent' => false, 'host' => 'localhost', 'login' => 'pugiemonn', 'password' => '******', 'database' => 'test', 'encoding' => 'uft8',//追加 'prefix' => '' ); しかし文字化
以下はcakePHPのマニュアルの付録で作成したブログチュートリアルにタグ機能を実装するチュートリアルです。 このチュートリアルで作成する機能は以下の機能です 作成する機能 記事の登録、修正時にタグの登録&修正(カンマ区切りで指定(例 news,mysite,google,internet)) タグクラウドの実装 タグによる記事絞込み表示 ライセンス タグ機能の実装処理についてはcakePHPで作成された、オープンソースであるcheesecake-photoblogから移植しています。 (cheesecake-photoblogのライセンスはGPLです) なので実際のプロジェクトなどにコードを使用する場合はライセンスに注意してください。 cheeseCakerのライセンス部分は以下のようになっています。 * @copyright Dr. Tarique Sani, tarique@sani
via: “1.2RC1でのSQLインジェクション対策” フォーラム – CakePHP Users in Japan リンク先にあるとおり、1.2RC1ではfind()の条件を指定する際、比較演算子を配列のキー側に書くように変更されています。 CakePHPでは値の先頭にある比較演算子をSQLとして実行してしまう特性があったので、1.2betaまでは以下のようなコードを記述していました。 // $id = 1が外部から来るとする $user = $this->User->find(array('id' => '= ' . $id)); しかし1.2RC1でこのコードを実行すると[‘= ‘ . $id]が値として認識されてしまいます。 SELECT * FROM users WHERE id = '''= '' 1'; 1.2RC1では条件配列のキーの部分に比較演算子を書くようになっていま
@deprecated この情報はCakePHP1.2betaまでのものです。1.2RC1についてはこの方法は有効ではありません。詳しくはCakePHP 1.2RC1からは比較演算子をキーに書くをどうぞ。 CakePHPのモデルで検索条件を指定する場合は比較演算子に注意が必要です。 検索条件では↓な感じで条件値の他にSQLの比較演算子を入れることができます。 <?php class UserController extends AppController { funtion index($id) { $id = is_numeric($id) ? $id : 0; // $id より大きなidを持つレコードを取得 $list = $this->findAll(array('id' => '> ' . $id)); $this->set('list', $list); } } ?> これを見
save()で保存する際、なぜかある特定のフィールドだけ保存されない、そもそもINSERT文の中にそのフィールド+データが出てこない。動作上はエラーが発生していない、という場合には、どこを疑いますか・・・。 (あとは、read()とかfindAll()、find()でデータを取ってこれないとか。) そういえば、私も以前に何回か経験していました。今回の例も、やはり、 「tmp/chache/modelsの下のキャッシュファイルを削除したら、解決した!」 というものでした。Cakeを使っている人であれば、必ずといっていいほど経験するもの、それでいて忘れやすい点かもしれません。 みんなで気をつけましょう!!
Security.saltの設定はCakePHP1.2には必要ですが、CakePHP1.1にはないのでスルーしちゃってください。 “Security.salt”はハッシュの生成に用いられます。CakePHPの\app\config\core.phpを開くと、153行目あたりに Configure::write('Security.salt', 'DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi'); なる記述があります。この値が固定になってしまっているので、ユニークな値に変更します。 アクセスしてみると、 Security.saltの値を変更するよう促していた黄色の注意が消えています。 セキュリティー上、パスワードなどをハッシュとして保存するのは好ましいことです。しかしながら、再インストール時にcore.phpを上書きしたりしてSecurity.saltの
CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日本発のCakePHP応援ブログとして、最新情報をお届けします。 mod_rewrite を自宅サーバでうまく動かせない、という場合,cake の画像が出ないのでいらいらするかもしれません。確認するべきところは、 apache の httpd.conf の設定です。 【1】mod_rewrite を有効にする。 #LoadModule rewrite_module modules/mod_rewrite.so となっているところを、#を外して、 LoadModule rewrite_module modules/mod_rewrite.so とする必要があります。 【2】AllowOverRide を利かせる。 # # AllowOverride controls what
[2009/05/06] このハンズオンの改訂版の新しい動画を以下で公開しています。CakePHPもバージョン1.2に対応しています。ご利用ください。 http://d.hatena.ne.jp/i_ogi/20090418/1240044385 id:yandod さんによるCakePHPハンズオン@Tokyoが開催されました。 8/23 CakePHPハンズオン@Tokyo無事終了 - yandodの日記 CakePHPハンズオン@Tokyo - events.php.gr.jp 当日は、Ustream中継を実施しました。 ムービー公開 ということでムービーを公開します。休憩や先生の巡回のタイミングで動画を切っており、6本だてになっています。 別でカメラ回してたんだけど今回は失敗 Ustreamでは、どうしても画質が悪く、コードを含むスライドでは文字が小さくなることもあり、読み取りにく
CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日本発のCakePHP応援ブログとして、最新情報をお届けします。 (Shunro Dozono / http://www.cba-japan.com ) (1)You can download 'decorate.php' from http://cakephp.jp/decorate.zip http://cakeforge.org/projects/decorate/ copy it to cake/scripts (2)Set your DB-table (3)Start baking [decorating] by using Windows Command Prompt. prompt> your_php_path\php.exe path\decorate.php
ただ、途中で止めて、自分でセットした(つもり)値が本当にセットされているか、確認したいという欲求を満たしてはくれません。 そこでEclipse+PDT+Xdebugによるデバッグです。 Eclipse+PDT+Xdebugのデバッグ 1.ブレークポイントの設定 ブレークポイントを予め設定します(ブレークポイントを設定しなくても1行づつ進めることでデバッグできますが、CakePHPのようなフレームワークでは、自分の書いたコード以外の処理が多く、現実的ではありません)。ソースの右余白部分でダブルクリックすることで、 ブレークポイントの設定⇔ブレークポイントの解除 が切り替わります。 2.デバッグの設定 実際にデバッグするためには、設定が必要です。 次の設定は、トップ画面から始めることを想定していますが、CakePHPでは、URIに意味を持っている(処理やパラメータ)ので、途中から始めることも可
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
findAll($conditions,$fields,$order,$limit,$page,$recursive) 指定されたフィールドから、 (もし指定されていれば)$conditions にマッチするものを $page (デフォルトは1ページ目) ページから $limit レコードまで返す。 $conditions: 検索条件の配列。もしくは、SQL文の where 節の文字列 $fields: 取り出したいフィールドの配列 $order: 並び順 order by ******* の部分の文字列 $limit: 一度に読み込む数の上限 $page: 何ページ目から読み込むか($limitに依存) $recursive: モデルのアソシエーションを何階層たぐるか(デフォルトは0) [例] //SQL風に findAll("name='太郎' a
CakePHPを使ったMVC設計のベストプラクティス 個人的にはCakePHPはあまり好きではないのですが、CakePHP開発メンバーによるMVCデザインの記事 (CakePHP のおいしい食べ方)で紹介されていたBest Practices in MVC Design with CakePHP (php|architect’s C7Y)はMVCフレームワーク利用者にとってとても有用な情報だったので、訳してみました(php|architectの方には翻訳許可を頂いています)。 この記事を読んでドメインモデルに興味を持った方は、エンタープライズ アプリケーションアーキテクチャパターン(PoEAA)やDomain-Driven Design: Tackling Complexity in the Heart of Softwareに手を出してみるのもいいかも。他に、InfoQにユーザー登録すれ
New CakePHP 5.0 Chiffon. Faster. Simple. Delicious. What's new in version The migration guide has a complete list of what's new in. We recommend you give that page a read when upgrading. A few highlights from 5.0 are: PHP 8.1 required. Improved typehints across the framework. CakePHP now leverages union types to formalize the types of many parameters across the framework. Upgraded to PHPUnit 10.x
いやあ、こんなエントリーを書く日が来るとは・・・・。 3行でまとめると、 ====================== 症状: 自動アップデートの後、自動インストールされた Internet Explorer 11でログイン情報などが記憶されない。(クッキーがまったく効かない) 原因: Windowsユーザフォルダ名(C:\ユーザー\ のフォルダ)に「郎」の漢字が含まれていたから 対策: ユーザフォルダの名前を変更する。(または新規ユーザを作り直す。) ====================== いやぁ、標的型攻撃みたいだな。 「郎」の付く名前は、下記をみると色々ありますので、 http://kanji.reader.bz/more/%E9%83%8E 今この時点で数千人の人がこの症状に悩まされているのではないか、と妄想。 現在、お客様がIEで使用する予定のアプリを開発中です。そんな中、
OpenFLP posted by p4life まだまだバグとか色々残っているかとは思いますが,リリースしました. OpenFLPhttp://code.google.com/p/openflp/OpenFLP は,Rails で作られているオープンソース版 Fastladder(OpenFL)を PHP のフレームワークである CakePHP を使って移植したものです.Rails によって作られているサーバーサイドプログラムとクローラーを Pure PHP に置き換え,Ruby/Rails への依存をなくしました.これによってレンタルサーバーなどへ簡単に Fastladder 互換の RSS/Atom フィードリーダーを導入することができます.ライセンスは オープンソース版 Fastladder と同じく,MIT ライセンスです. 必要環境 PHP 5.2, Apache, MySQL
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く