PHP MVC无法访问控制器

时间:2015-10-24 22:26:46

标签: php codeigniter model-view-controller controller

我有这个简单的PHP代码,我创建了一个带有名人姓名的新模型,一个从模型中访问名人姓名的控制器,以及一个显示名称的视图。由于某些原因使用下面的路径,我无法显示访问控制器的名称。我无法找出我遗失或做错的事。 谢谢你的帮助!

  

http://localhost/ci/Starcontroller/guess

控制器 - >

    <?php
class Starcontroller extends CI_Controller{
    function __construct() {parent::__construct();}
    function guess()
    {
        $this->load->model('starmodel');
        $newstarr = $this->starmodel->lookup();
        $this->load->view('starview',$newstarr);
    }
}   
?>

模型 - &GT;

<?php
class starmodel extends CI_Model{
    function __construct()
    {
        parent::__construct();
    }
    public function lookup(){

    $celebrity = "Anna";
    return $celebrity;
    }
}
?>

查看 - &gt;

<html>
<head></head>
<body>

    <?php
        echo $newstarr;
    ?>
</body> 
</html>

2 个答案:

答案 0 :(得分:1)

类名的第一个初始字母和控制器和模型的文件名用大写字母检查你的模型类名

然后在控制器中更改为

<?php

class Starcontroller extends CI_Controller {

   function __construct() {
      parent::__construct();
      // Would load model in here and other helpers and libraries.
      // So can access through all functions on controller.
      // $this->load->model('starmodel');
   }

   function guess() {
      $this->load->model('starmodel');
      $newstarr['data'] = $this->starmodel->lookup();
      $this->load->view('starview',$newstarr);
   }

}   

在视图中

<?php echo $data ?>

答案 1 :(得分:0)

从控制器,您希望将关联的数据数组传递给视图。 所以改变这一部分:

$newstarr = $this->starmodel->lookup();
$this->load->view('starview',$newstarr);

对此:

$data['newstarr'] = $this->starmodel->lookup();
$this->load->view('starview',$data);

您的其余代码可能保持不变。

相关问题