【问题标题】:codeigniter autoload file issuecodeigniter 自动加载文件问题
【发布时间】:2015-04-23 06:24:28
【问题描述】:

我已经使用 php 5.5 版在我的 linux 服务器中上传了 codeigniter 文件。我在 application\config\autoload.php 文件上遇到问题。

$autoload['libraries'] = array(); //default code
//$autoload['libraries'] = array('database');

当我使用默认代码运行程序时。程序运行良好。但是当我加载数据库库时,我们没有得到任何错误或输出。它显示空白页。

您可以查看here

示例代码:

class Test extends CI_Controller {  

    function show() {   
        echo 'methos call';
    }
}

这个程序在我的本地运行没有问题。 是服务器问题还是 codeignitor 问题。

谢谢

【问题讨论】:

  • 试试 $autoload['libraries'] = array("database", "session");并检查

标签: linux codeigniter codeigniter-routing


【解决方案1】:

autoload.php文件中更改

$autoload['libraries'] = array('database')

然后转到database.php 并配置您的数据库。(页面底部)。

如果 CodeIgnitor 2.0.0

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = '';
$db['default']['password'] = '';
$db['default']['database'] = '';//database name
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

如果 CodeIgnitor 3.0.0

$db['default'] = array(
    'dsn'   => '',
    'hostname' => 'localhost',
    'username' => '',
    'password' => '',
    'database' => '',//database name
    'dbdriver' => 'mysqli',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => TRUE,
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

如果你纠正了这些,它应该可以正常工作。

【讨论】:

    【解决方案2】:

    如果代码在本地机器上运行良好并且在服务器上出现问题,请检查文件名。它应该是小写的,类名应该是驼峰式的。 它对我有用,请尝试。

    【讨论】:

    【解决方案3】:

    尝试使用以下代码,

    error_reporting(E_ALL | E_STRICT);
    ini_set('display_errors',1);
    ini_set('html_errors', 1);
    

    它会显示所有有时默认隐藏的错误。

    【讨论】:

    • 感谢您的回复我都试过了,但我们仍然面临问题。有没有其他问题。
    • 我尝试过孔日进行故障排除。但是我并没有确切地知道加载 $autoload['libraries'] = array('database'); 的问题是什么。我找到了有关此类问题的堆栈溢出链接 CodeIgniter 中的数据库问题无法在 codeigniter 中自动/手动加载数据库库请建议是否有其他解决方案。
    • 这将使 PHP 页面中的所有错误可见,因此如果有任何错误将显示,如果没有任何显示可能是您的 route.php 页面有问题
    猜你喜欢
    • 2011-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-16
    • 1970-01-01
    • 1970-01-01
    • 2014-08-20
    • 2020-06-17
    相关资源
    最近更新 更多