CakePHP2.1でデータの検索(実践編その4)
今日はCakePHPでデータ検索する方法を勉強してみたいと思います。『CakePHPでデータ削除』の続きです。
1. データ検索するのにデータが1件だけでは仕方が無いので、データを数件入力してみました。
2. 検索用のページを表示するためにコントローラにsearchアクションと検索ページ用のsearch.ctpを作成します。
app/Controller/CollectionController.php
public function search(){
}
app/View/Collection/search.ctp
<h1>検索</h1>
<?php
echo $this->Form->create('Search',array('action'=>'index','url'=>'index'));
echo $this->Form->input('title');
echo $this->Form->end('検索');
?>
3. データ検索後に、index.ctpへ移動するように作成していますので、indexアクションを下記のように修正します。
app/Controller/CollectionController.php
public function index(){
//リクエストがPOSTの場合
if($this->request->is('post')){
//Formの値を取得
//$title=$this->data['Search']['title'];
$title=$this->request->data['Search']['title'];
//POSTされたデータを曖昧検索
$data=$this->Collection->find('all',array(
'conditions'=>array('title like'=>'%'.$title.'%')));
$this->set('Collections',$data);
}else{ //POST以外の場合
//Collectionモデルから全てのデータを検索
$data=$this->Collection->find('all');
//データの連想配列をセット
$this->set('Collections',$data);
}
}
4. それでは、ブラウザで実際に検索してみます。findメソッドについては、『CakePHP2.1のfindメソッド』に詳細を書いていますので、そちらの方を参照してください。
http://ドメイン名/Collection/search
5. タイトルに『愛』の文字を含むデータが抽出されました。
本日は以上です。
2012年5月21日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
CakePHP2.1でデータの削除(実践編その3)
今日は、CakePHPでデータの削除方法を勉強してみます。『CakePHPでデータの更新』の続きです。まず、deleteアクションを作成します。
1. Collectionコントローラにdeleteアクションを追加します。POST送信されたときだけデータを削除するようにします。
2012年5月19日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
CakePHP2.1でデータの更新(実践編その2)
今日は、CakePHPでデータの更新方法を勉強してみます。『CakePHPでデータの新規作成』の続きからやります。前回は、データの新規作成後にindexページへ移動するまでを勉強してみました。今日の課題であるデータの更新を作成するために、editアクションとeditビューを作成します。
2012年5月18日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
CakePHP2.1でデータの新規作成(実践編その1)
今日から、実際に簡単なアプリケーションを作成しながら、CakePHP2.1の勉強を進めていきたいと思います。私の趣味は、映画やドラマのコレクションです。WOWOWやスターチャンネルで好きな映画やドラマをブルーレイに保存しているのですが、数が多くなりすぎると既に保存してある映画を再度録画したり、保存した映画を見たいと思ったらどこに収納したか分からなくなるといったことが起きています。そこで、保存した動画やコレクションの整理用にサイトを作成したいと思います。入力は基本的にパソコンでやると思いますが、収集したブルーレイやDVD、CD等の情報は、携帯で簡単に調べられるようにしたいと思います。
2012年5月17日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
CakePHP2.1のfindメソッド
CakePHPのScaffoldを使えばModelに関してほとんど何も分からない状態でもデータの作成(create)、読み出し(read)、更新(update)、削除(delete)が出来て便利なのですが、実際のサイト上で、このような使い方をすることはほとんど無く、データベーステーブルの一部を抽出して、他のテーブルとJOINしたりして利用します。そのためには、CakePHPのモデルについて知っておく必要があります。ですので、今日は、CakePHP2.1のModelクラスのfindメソッドに関して少し勉強してみたいと思います。
2012年5月16日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
CakePHP2.0のモデル
CakePHPは、命名規則通りにデータベースのテーブル名やモデル名を作成しておけば、ほとんどSQLを知らなくても、簡単にデータベースを使用することができます。今日は、モデルとデータベースの規約について調べてみます。
2012年5月15日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
CakePHP2.0のレイアウト
CakePHPは何も指定しなくても自動的にページのデザインを適用するオートレイアウト機能がついています。自動的に統一されたデザインを適用してくれるのはありがたいのですが、レイアウトの変更方法を知らないと全て同じようなサイトになってしまいます。ですので、今日は、CakePHP2.0のレイアウト機能について調べてみたいと思います。
2012年5月14日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
DreamweaverCS6.0の新機能を試してみました。
本日、AdobeCS6.0が発売になりました。早速ダウンロードして、DreamweaverCS6.0の新機能を試してみたいと思います。Adobeは、今回から1世代前しかバージョンアップできないという方針を打ち出し物議を醸し出しました。結局世論に押された格好で、今回(2012年12月31日)までは、3世代前までバージョンアップできるようになりました。ただ、次回からは、1世代前しかバージョンアップできない方針は、決定事項みたいです。となると、私みたいにAdobeCSシリーズを何本か持っていて、古い順にバージョンアップしながら、新旧両方使用しているというような使い方が出来なくなります。
2012年5月11日 | コメント/トラックバック(0) |
カテゴリー:Dreamweaver
CakePHP2.0のコントローラ
しばらくCakePHP2.0に触ってなかったのですが、CakePHPもちょっと触らないうちに、バージョンも2.1.2になっていました。タイトルを2.1に変更するのも面倒ですので、CakePHP2.0のまま進めていきたいと思います。
2012年5月10日 | コメント/トラックバック(0) |
カテゴリー:CakePHP
高機能CMSジュームラの導入
高機能なCMSのJoomla!(ジュームラ)を導入して使い心地を試してみたいと思います。Joomla!には標準でアクセスレベルコントロール(ALC)という機能がついています。このALCを使うと一般ユーザーから登録ユーザーまでを細かく管理することも可能で、会員制サイトや、複数人で運営するようなWebマガジンなども簡単に構築できます。それでは、Joomla!のインストールから始めて見たいと思います。
2012年5月7日 | コメント/トラックバック(0) |
カテゴリー:Joomla




