CodeIgniter - 登录后登录系统在数据库中显示数据

时间:2014-01-06 10:01:21

标签: php codeigniter

我在codeigniter中创建了一个登录系统,现在我想在登录后查看来自数据库的数据用户看到这个我做了一个模型但仍然混淆了现在做什么,我是codeigniter的新人。

这是我做的模型

<?php
Class Newsletter extends CI_Model
{
 function newsdata($name, $email, $city)
 {
   $this -> db -> select('id, name, email, city');
   $this -> db -> from('newsletter');
   $this -> db -> where('name', $name);
   $this -> db -> where('city', $city);
   $this -> db -> where('email', $email);
   $query = $this -> db -> get();

   foreach($query as $row)
{
print $row ->id;
print $row ->name;
print $row ->email;
print $row ->city;
print "<br>";
}

   }
 }
?>

并且在视图中我创建了一个名为home_view.php的文件,并使用此

<?php $this->load->model('newsletter'); ?>

如果有人指导我,我该如何解决这个问题。

2 个答案:

答案 0 :(得分:2)

好的将您的模型名称更改为 newsletter_model 。现在在您的控制器中:

<?php
Class Newsletter extends CI_Model
{
  function newsdata($name, $email, $city)
 {
    $this->load->model('newsletter_model');
    $data['result'] = $this->newsletter_model->getdetails($name, $email, $city);
    $this->load->view("home_view", $data);   
 }
}
?>

现在在您的模型中:

<?php 
    Class Newsletter_model extends CI_Model {

       function getdetails($name, $email, $city){
        $this -> db -> select('id, name, email, city');
        $this -> db -> from('newsletter');
        $this -> db -> where('name', $name);
        $this -> db -> where('city', $city);
        $this -> db -> where('email', $email);
        $query = $this -> db -> get();
        return $query->result();
    }
 }
 ?>

现在在您的视图页面上:

 <?php
    foreach($result as $row)
    {
      echo $row ->id;
      echo $row ->name;
      echo $row ->email;
      echo $row ->city;
      echo "<br>";
    }
 ?>

答案 1 :(得分:0)

你必须在下面的代码中使用。

 foreach($query->result() as $row)

请参阅此user guide