phpGrid_Lite在CodeIgniter-3.1.7上不显示网格

时间:2018-06-21 22:34:26

标签: php codeigniter continuous-integration phpgrid

我已经按照官方网站https://phpgrid.com/example/phpgrid-and-codeigniter-integration/上的教程进行操作 但是我的视图未显示网格,我的数据库名为 phpGrid 并具有表 producto ,该问题仅在CI中出现,因为我已经测试了 phpGrid_Lite (没有CI),可以很好地显示网格。

(对不起我的英语不好:))

这是我的Welcome控制器

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {

    public function index()
    {
        //$this->load->view('welcome_message');

        require_once(APPPATH. 'libraries/phpGrid_Lite/conf.php'); // APPPATH is path to application folder
        $data['phpgrid'] = new C_DataGrid("SELECT * FROM producto", "id", "producto"); //$this->ci_phpgrid->example_method(3);

        $this->load->view('show_grid',$data);
    }
}

这是我的show_grid.php文件

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Show Grid</title>
</head>
<body>

<div id="container">
<h1>Welcome to CodeIgniter! Show me the grid!</h1>

<div id="body">
    <?php $phpgrid->display(); ?>
</div>

</div>

</body>
</html>

conf.php

<?php
/**/
if (stripos($_SERVER['SCRIPT_NAME'], 'apps/phpgrid-custom-crm')) {
define('PHPGRID_DB_HOSTNAME', '127.0.0.1'); // database host name
define('PHPGRID_DB_USERNAME', 'root');     // database user     name
define('PHPGRID_DB_PASSWORD', ''); // database password
define('PHPGRID_DB_NAME', 'phpGrid'); // database name
define('PHPGRID_DB_TYPE', 'mysql');  // database type
define('PHPGRID_DB_CHARSET','utf8'); // ex: utf8(for mysql),AL32UTF8 (for oracle), leave blank to use the default charset
} else {
//* mysql example 
define('PHPGRID_DB_HOSTNAME','localhost'); // database host name
define('PHPGRID_DB_USERNAME', 'root');     // database user name
define('PHPGRID_DB_PASSWORD', ''); // database password
define('PHPGRID_DB_NAME', 'phpGrid'); // database name
define('PHPGRID_DB_TYPE', 'mysql');  // database type
define('PHPGRID_DB_CHARSET','utf8'); // ex: utf8(for mysql),AL32UTF8 (for         oracle), leave blank to use the default charset
}

最后是this is the result

2 个答案:

答案 0 :(得分:1)

您是否将CI配置为使用本机PHP会话?由于CI3中的权限更新,您可能还需要add .htaccess in the application文件夹。

答案 1 :(得分:1)

我在CI和phpgrid Lite中遇到了同样的问题,这就是我显示网格的方式。 我从应用程序/库中移走了资源文件夹,因此它与应用程序文件夹和系统文件夹位于同一文件夹中。

然后我更改了控制器和视图的这些部分。

控制器:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {

    public function index()
    {
     require_once('assets/phpGrid_Lite/conf.php');
     $dg = new C_DataGrid("SELECT * FROM Orders", "orderNumber", "Orders"); //$this->ci_phpgrid->example_method(3);
     $dg -> set_multiselect(true);
     $dg -> enable_search(true);

     $dg->display(false);
     $data['phpgrid'] = $dg->get_display(true);

     $this->load->view('show_grid',$data);
    }

}

在查看文件中show_grid.php

查看:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Show Grid</title>
</head>
<body>

<div id="container">
<h1>Welcome to CodeIgniter! Show me the grid!</h1>

<div id="body">
    <?= $phpgrid; ?>
</div>

</div>

</body>
</html>

希望这对您有用。