我正在做一个使用Kohana 3.3的项目。我在连接到数据库时遇到了一个问题。应用程序告诉我它正在使用MySQL,但它已经崩溃了。
为了解决这个问题,我下载了Kohana3.3的MySQLi驱动程序,并按照说明操作(在模块文件夹中创建一个mysqli文件夹,并在bootstrap.php中添加新行以启用它)。
但是,当我尝试执行任何数据库操作时,它仍然显示它正在使用MySQL。错误为:“mysql 8192 : mysql_connect():mysql扩展已被弃用,并将在将来删除:请使用Database_Exception或PDO”。
我用来启用该模块的代码行是'mysqli' => MODPATH.'mysqli', // MySQLi support for Kohana
我使用的MySQLi驱动程序是this (链接到github)。
有没有人能看到哪里出了问题?
提前谢谢。
发布于 2013-11-01 07:18:12
仅仅启用模块是不够的。
Since Kohana 3.3 the autoloader is case sensitive,所以MODPATH/mysqli/classes/kohana/database/mysqli.php应该变成MODPATH/mysqli/classes/Kohana/Database/MySQLi.php。
您必须编辑APPPATH/config/database.php并将驱动程序设置为'MySQLi‘或将数据库::$ default设置为正确的默认数据库实例名称。(使用'MySQLi‘作为驱动程序的那个。)
为了确认,请不要在APPPATH之外编辑配置文件。而应将文件复制到APPPATH并编辑该文件。一般情况下,您不必在APPPATH之外编辑文件。当然,更新模块以使用新版本也是允许的。但是APPPATH之外的配置文件应该作为示例/蓝图。
发布于 2013-11-23 00:48:28
我也遇到过这个问题。
这个问题已经在Kohana论坛上讨论过了。下一个版本(3.4)将包括对Kohana数据库模块的更改,以便您可以使用MySQLi库。
在此之前,我已经通过更改index.php中的error_reporting禁用了不推荐出现的错误
error_reporting(E_ALL & ~E_DEPRECATED);希望这能有所帮助
https://stackoverflow.com/questions/19701941
复制相似问题