この問題が発生していますが、それはかなりシンプルにする必要がありますが、なぜそれを理解できないのか分かりません。私はMVCのアイデアを初めて知りました。私はコントローラからビューへのデータベースクエリを渡し、ビューに結果を表示しようとしています。私が今やっているやり方は、 "undefined variable、sql" 。私はビューをロードするとき、これは私が持っているものです。コントローラからsqlクエリの結果をコードイグナイタで表示に渡す
CONTROLLER
function make_login()
{
//Select list of departments for dropdown
$this->load->database();
$sql = $this->db->query('SELECT departmentName FROM department ORDER BY departmentName ASC');
$this->load->view('siteheader.php');
$this->load->view('makelogin.php', $sql->result_array());
$this->load->view('sitefooter.php');
}
VIEW
<?php
foreach($sql->result_array() as $row)
{
echo $row['departmentName'];
}
?>
(私はコントローラにそれをエコーした場合、それは結果を表示)
A nyの助けが素晴らしいだろう... ありがとう!
あなたの 'login_model'でメソッドをもっと意味的に理解させる方法を見てください。それが何をするのかは明らかですが、簡単に拡張することができます。get_departments関数を書き換えてIDをパラメータとして取得し、特定の部門を返します。 IDなし?それらをすべて返す。 – Ross
yea、それは意味があります...しかし、私はその1つの場所でそのクエリを使用するつもりなら、はるかに多くの仕事のように思えます...なぜ私はちょうどそれをコントローラに入れませんか? – Bill
これは、MVCがどのように動作するか、むしろそのコンセプトになっているからです。あなたは*何もする必要はありません。しかし、ある日、別の関数やクエリを追加する必要がある場合はどうなりますか?コントローラーにもそれが入りますか? MVCに侵入することで、はるかに管理しやすいコードを作成することができます。 – Ross