【问题标题】:Displaying data from database using codeigniter php使用 codeigniter php 显示数据库中的数据
【发布时间】:2018-04-16 10:04:59
【问题描述】:

我想使用 php 代码点火器显示我的数据表单 db。这是我到目前为止所做的,但无法得到结果。

未定义变量查询的消息

。请查看并建议我应该做什么或任何其他方式来显示数据库表中的数据。 查看:

<tbody>
                                        <?php foreach($query as $row): ?>
                                        <tr>   
                                        <td><?php echo $row->subuid; ?></td>
                                        <td><?php echo $row->uid; ?></td>
                                        <td><?php echo $row->fname; ?></td>
                                        <td><?php echo $row->lname; ?></td>
                                        </tr>
                                        <?php endforeach; ?>
                                    </tbody>

型号:

public function showusers(){
    function viewusers()
    {
        $query = $this->db->select('*')->from('sub_users')->get();
        return $query->result();
    }
}

控制器:

function showusers()
{    
$this->load->model('User_area_model');
$data4['query'] = $this->session->viewusers();   
$this->load->view('manage-users', $data4);
}

【问题讨论】:

  • 您的模型和控制器存在问题。请先参考文档。
  • “无法获得结果”是什么意思?您尝试对此进行什么调试?
  • 亲切地提到了这个问题。我已经提到我想在我的网页中显示数据库数据。我已经知道模型和控制器有问题。我是 Codeignitor 的新手。
  • print_r($query-&gt;result()); 在从模型返回值之前并确保查询返回一些值。

标签: php database codeigniter


【解决方案1】:

你的controller应该是这样的:

function showusers()
{    
  $this->load->model('User_area_model');

  /*replace this $this->session->viewusers() with User_area_model;*/ 

  $data4['query'] = $this->User_area_model->viewusers(); 
  if ( !empty($data4['query']))
  {

      $this->load->view('manage-users', $data4);
  }
  else
  {
     echo 'no record found';
  }
}

型号:

   public function viewusers()
    {
        $query = $this->db->get('sub_users');
        return $query->result();
    }

查看:查看empty

<tbody>
<?php if (! empty($query) ) { 
      foreach($query as $row): ?>
        <tr>   
         <td><?php echo $row->subuid; ?></td>
         <td><?php echo $row->uid; ?></td>
         <td><?php echo $row->fname; ?></td>
         <td><?php echo $row->lname; ?></td>
       </tr>
    <?php  endforeach;
 }?>
</tbody>

【讨论】:

  • 未定义变量 $query 显示,因为它是空的,请在 foreach 循环之前的视图中或在我的答案中的控制器中检查空
【解决方案2】:

试试这个,

HTML

<tbody>
<?php if($query){ ?>
    <?php foreach($query as $row){ ?>
    <tr>   
        <td><?= $row->subuid; ?></td>
        <td><?= $row->uid; ?></td>
        <td><?= $row->fname; ?></td>
        <td><?= $row->lname; ?></td>
    </tr>
    <?php } ?>
<?php } ?>
</tbody>

型号

public function viewusers(){
    $this->db->select('*')->from('sub_users');       
    $query = $this->db->get();
    return ($query->num_rows() > 0) ? $query->result() : false;
}

控制器

function showusers(){    
    $this->load->model('User_area_model');
    $data['query'] = $this->User_area_model->viewusers();   
    $this->load->view('manage-users', $data);
}

【讨论】:

    猜你喜欢
    • 2013-12-21
    • 2017-10-05
    • 1970-01-01
    • 1970-01-01
    • 2014-01-30
    • 1970-01-01
    • 1970-01-01
    • 2015-05-01
    • 2016-11-26
    相关资源
    最近更新 更多