无法使用Codeigniter显示数据和分页(错误PHP)

无法使用Codeigniter显示数据和分页(错误PHP),php,codeigniter,Php,Codeigniter,我在我的应用程序中使用Codeigniter,我是这方面的新手。我从Codeigniter得到了几个错误。我被变量错误搞得心烦意乱 这是我的模型: class menuObjek extends CI_Model{ public function __construct(){ parent::__construct(); $this->load->database(); } public function getWisat

我在我的应用程序中使用Codeigniter,我是这方面的新手。我从Codeigniter得到了几个错误。我被变量错误搞得心烦意乱

这是我的模型:

class menuObjek extends CI_Model{
    public function __construct(){
        parent::__construct();

        $this->load->database();

    }

    public function getWisata($perPage,$uri){
        $this->db->select("namaObjWisata, deskripsiObjWisata");

        $this->db->from("objekwisata");
        $this->db->order_by("kategori","ASC");

        $getData = $this->db->get("", $perPage, $uri);

        if($getData->num_rows() > 0){
            return $getData->result_array();
        }else{
            return null;
        };
    }
}
控制器:

class showObjek extends CI_Controller {

private $data= array();



public function showObjek(){

    parent:: __construct();

    $this->load->model("menuobjek","", TRUE);
    $this->load->helper("url");
    $this->load->database();
    $this->load->library("pagination");

}

public function iniShow() {


    $this->db->select("*");
    $this->db->from("objekwisata");
    $getData = $this->db->get();
    $result = $getData->num_rows();

    //var $detail;

    $config["base_url"] = base_url()."index.php/showObjek/iniShow/";

    $config["total_rows"] = $result;
    $config["per_page"] = 10;
    $config["uri_segment"] = 3;

    $config["full_tag_open"] = "<p>";
    $config["full_tag_close"] = "</p>";

    $config["first_link"] = "&lt;&lt; First";
    $config["last_link"] = "Last &gt;&gt; ";


    $data["detail"] = $this->menuobjek->getWisata($config["per_page"], $this->uri->segment(3));

    $this->pagination->initialize($config);

    $data["pagination"]= $this->pagination->create_links();


    $this->load->view("menu_view", $data);
   }
}
类showObjek扩展CI_控制器{
private$data=array();
公共功能showObjek(){
父项::_构造();
$this->load->model(“menuobjek”,TRUE);
$this->load->helper(“url”);
$this->load->database();
$this->load->library(“分页”);
}
公演{
$this->db->select(“*”);
$this->db->from(“objekwisata”);
$getData=$this->db->get();
$result=$getData->num_rows();
//var$详细信息;
$config[“base_url”]=base_url().“index.php/showObjek/iniShow/”;
$config[“总计行数”]=$result;
$config[“每页”]=10;
$config[“uri_段”]=3;
$config[“完整标签打开”]=“”;
$config[“完整标签关闭”]=“

”; $config[“第一个链接”]=“第一个”; $config[“last_link”]=“last”; $data[“detail”]=$this->menuobjek->getWisata($config[“每页”],$this->uri->segment(3)); $this->pagination->initialize($config); $data[“分页”]=$this->pagination->create_links(); $this->load->view(“菜单视图”,$data); } }
最后一个观点是:

                   //if(isset($detail)){
                    foreach($detail as $rows){

                        echo"

                                <li>
                                    <a href=''>
                                        <img src='#' class='img-rounded' />
                                        <p class='judul_objek'>".$rows['namaObjWisata']."</p>
                                        <article>
                                            ".$rows['deskripsiObjWisata']."
                                        </article>

                                    </a>
                                </li>

                            ";
                    }
                //}
//如果(设置($detail)){
foreach($行的详细信息){
回声“
  • "; } //}
    这将显示以下错误:

    遇到一个PHP错误

    严重性:通知

    消息:未定义变量:详细信息

    文件名:views/menu_view.php

    电话号码:124

    遇到一个PHP错误

    严重性:警告

    消息:为foreach()提供的参数无效

    文件名:views/menu_view.php

    电话号码:124

    我真的很困惑。我必须解决这个问题。求求你,谁来帮帮我


    谢谢。

    您正在传递url中的第三段吗。因为如果不是,那么在模型中它将导致null。因此foreach将无法找到$details。我认为您需要为第一页大小写指定一个默认值。也就是说,如果uri段3不存在,那么它就是第一页,因此模型应该将其他内容作为参数,而不是uri段3

    if(!preg_match('{^\d+$}',$uri)){ 
    $this->db->limit($perPage); //first page
    }else{
    $this->db->limit($perPage, $uri);
    }
    $getData = $this->db->get();
    //$getData = $this->db->get("", $perPage,$uri );
    

    objekwisata
    表可能不包含任何记录,说明
    函数getWisata
    详细信息
    变量中返回空值的原因。和数组包含至少一个
    foreach()
    循环的索引。请检查表中是否有记录

    尝试打印($data[“detail”])在
    $data[“detail”]=$this->menuobjek->getWisata($config[“每页”],$this->uri->segment(3))之后并检查是否获得值。我没有获得值。我尝试var_dump($detail),结果为空@LimiJerintry打印($this->db->last_query());在$getData=$this->db->get(“,$perPage,$uri)之后;仍然不工作:(@JOELEEYes,我正在通过第三段。我想从数据库获取数据时发生了错误。我已经检查了它,记录已经存在。