[英]phpGrid_Lite doesnt show grid on CodeIgniter-3.1.7
我已经从官方网页https://phpgrid.com/example/phpgrid-and-codeigniter-integration/遵循了该教程,但是我的视图没有显示网格,我的数据库名为phpGrid并有一个表producto ,这个问题只发生在CI上,因为我已经测试了没有CI的phpGrid_Lite并且可以很好地显示网格。
(对不起,我的英语不好 :))
这是我的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
}
最后这就是结果
您是否配置了CI以使用本机PHP会话? 由于CI3中的权限更新,您可能还需要在应用程序文件夹中添加.htaccess 。
我在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>
希望这对您有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.