Php CodeIgniter数据库无任何事情发生

Php CodeIgniter数据库无任何事情发生,php,sql,codeigniter,Php,Sql,Codeigniter,嗨,我正在跟随一个turtorial学习CodeIgniter 我有一个模型,一个视图和一个控制器 模型: class Data_model extends CI_Model{ function getAll(){ $data = array(); $q = $this->db->query("SELECT * FROM data"); if($q->num_row() > 0){ foreach($q-&g

嗨,我正在跟随一个turtorial学习CodeIgniter

我有一个模型,一个视图和一个控制器

模型:

class Data_model extends CI_Model{
  function getAll(){
      $data = array();

      $q = $this->db->query("SELECT * FROM data");
      if($q->num_row() > 0){
           foreach($q->result() as $row){
                $data[] = $row;
           }
           return $data;
      }
 }
}

观点:

<html>
 <head>
      <title></title>
 </head>

 <body>
      <p>View loaded</p>
      <?php 
           foreach ($rows as $r){
                echo '<h1>',$r->title,'</h1>';
           }
      ?>
 </body>
问题是,我没有得到一个错误,只是一个空白页。我做错了什么?感觉就像我在控制器中完成教程中的所有内容一样

$this->load->view('home', $data);
对模型的建议:

function getAll(){
    $data = array();
    $q = $this->db->query("SELECT * FROM data");
    if($q->num_row() > 0){
       $data    = $q->result(); //result_array() will fetch as arrays and not objects
       return $data;
    }
}
试试这个,因为它已经由保罗给出了:

echo '<h1>' . $r->title . '</h1>';
echo“”$r->标题;

转到root/index.php并将
环境更改为
开发
,以查看php生成的错误。

此外,我认为您必须进行以下更改:

echo '<h1>' . $r->title . '</h1>';
echo“”$r->标题;
在模型中

$q->num_row()
需要改成

$q->num_rows()
此外,还需要引用特定列

$data[] = $row->column_name;
在控制器中,逗号需要替换为句点。逗号不是正确的语法

foreach ($rows as $r) {
    echo '<h1>'.$r->title.'</h1>';
}
这确实有效:

class Data_model extends CI_Model{

 function getAll(){
 $data = array();
 $q = $this->db->query("SELECT * FROM data");


   $data= $q->result(); //result_array() will fetch as arrays and not objects
   return $data;


 }
}
但这不是:

class Data_model extends CI_Model{
 function getAll(){
 $data = array();
 $q = $this->db->query("SELECT * FROM data");

 if($q->num_row() > 0){
   $data= $q->result(); //result_array() will fetch as arrays and not objects
   return $data;
}

 }
}

但是为什么会是这种情况,而且这样做是否正确(这甚至是一个答案),删除这个IF语句会带来什么后果?

在这里犯了一个愚蠢的错误
IF($q->num_行()>0){
将是
IF($q->num_行()>0){
注意
num_行()
中的
s
:d在这里犯了一个愚蠢的错误
IF($q->num_row()>0){
将是
如果($q->num_rows()>0){
。注意
num_rows()中的
s
:D
class Data_model extends CI_Model{

 function getAll(){
 $data = array();
 $q = $this->db->query("SELECT * FROM data");


   $data= $q->result(); //result_array() will fetch as arrays and not objects
   return $data;


 }
}
class Data_model extends CI_Model{
 function getAll(){
 $data = array();
 $q = $this->db->query("SELECT * FROM data");

 if($q->num_row() > 0){
   $data= $q->result(); //result_array() will fetch as arrays and not objects
   return $data;
}

 }
}