【cakephp】画面遷移のサンプルソース(コントローラ⇒モデル⇒ビュー)

 CakePHPはMVCモデルで構成されています。
Mがモデル、Vがビュー、Cがコントローラと呼ばれています。
コントローラ(C)からモデル(M)経由でDBのデータを取得し、ビュー(V)に表示させる一連のサンプルを作成しました。
ver1.2なので相当古いサンプルです><;。

 

Controller(m_shitens_contoller.php)

<?php
class MShitensController extends AppController {
  //モデル名の宣言
  var $name = 'MShitens';
  var $helpers = array('Html', 'Form', 'javascript');
  // AuthComponentの宣言
  var $components = array('Auth');
  var $uses = 'MShiten';    //モデルを指定

 function create(){
  //-------メール作成画面の表示--------//
  //データを全件取得
  $mails = $this->MShiten->findAll(null,null,"MShiten.branch_cd ASC");
  //viewsへデータを渡す
  $this->set('mail', $mails);
 }
}?>

View(create.php)

<html>
<head>
<title></title></head>
<body>
<?php
  //データの取得
  $m_shiten = $mail['MShiten'];
?>
<tr>
<td>名前</td>
<td><h1><?php  echo $from->text("", array("value"=>"$m_shiten['デーブルのカラム名']"))?></h1></td>
</tr>

</body>
</html>

[説明]
・set('データ名'、データの値)
 ⇒ビュー(V)にデータを渡す
   *データの名前はビュー内で値を読み出す際に使用する

・findAll(,$conditions,$fields,$order,$limit,$page,$recursive)
   ⇒DBからデータの取得(select文)
       $conditions :取得する条件(省略時全件取得)
       $fields      :取得するフィールドリスト(省略時全フィールド取得)
       $order      :レコードの取得順(省略時格納順)
       $limit     :取得する件数
       $page     :取得するページ数(省略時1ページずつ)
       $recursive  :再帰的に取得するアソシエーションの深さ
          (省略時は直接関連するモデルまで取得)



投稿日:2018-07-03    更新日:2019-04-04

[スポンサーリンク]

  
関連記事
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
勉強した内容を緩くメモする|JBの技術メモ
サイト内検索
プロフィール

プロフィール

[Name : じゃぶじゃぶ(@jbjb_2019)]
都内で社内SEをしているおじさん。
仕事で得られる知識だけでは限界を感じ、 WEBの勉強がてらITブログを開始。
サーバからWEBサイトまでフルスクラッチで開発しました。
現在は勉強のモチベーションを保つために活用中。
興味があることを雑記的に書いていきます。

[スポンサーリンク]

[スポンサードリンク]