【问题标题】:Php/kohana error when running install portion of beansbooks运行安装部分 beanbooks 时出现 PHP/kohana 错误
【发布时间】:2019-03-17 01:35:29
【问题描述】:

问题

我已经安装了 beansbooks 并且在最后一步,但是当我转到 localhost/install 时,我收到以下错误:

发生了致命错误:Session_Exception [1]:读取会话数据时出错。带有消息的异常“ErrorException” 'mysql_select_db() 期望参数 2 是资源,给定的布尔值' 在 /var/www/html/modules/database/classes/kohana/database/mysql.php:105 堆栈跟踪:#0 [内部函数]:Kohana_Core::error_handler(2, 'mysql_select_db...', '/var/www/html/m...', 105, Array) #1 /var/www/html/modules/database/classes/kohana/database/mysql.php(105): mysql_select_db('kohana', false) #2 /var/www/html/application/classes/database/mysql.php(75): Kohana_Database_MySQL->_select_db('kohana') #3 /var/www/html/modules/database/classes/kohana/database/mysql.php(430): Database_MySQL->connect() #4 /var/www/html/modules/database/classes/kohana/database.php(478): Kohana_Database_MySQL->escape('5c8da306617b91-...') #5 [内部 功能]: Kohana_Database->quote('5c8da306617b91-...') #6 /var/www/html/modules/database/classes/kohana/database/query.php(190): 数组映射(数组,数组)#7 /var/www/html/modules/database/classes/kohana/database/query/builder/select.php(413): Kohana_Database_Query->compile(Object(Database_MySQL)) #8 /var/www/html/modules/database/classes/kohana/database/query.php(228): Kohana_Database_Query_Builder_Select->compile(Object(Database_MySQL))

9 /var/www/html/modules/database/classes/kohana/session/database.php(131):

Kohana_Database_Query->执行(对象(Database_MySQL)) #10 /var/www/html/modules/database/classes/kohana/session/database.php(111): Kohana_Session_Database->_regenerate() #11 /var/www/html/system/classes/kohana/session.php(300): Kohana_Session_Database->_read(NULL) #12 /var/www/html/system/classes/kohana/session.php(125): Kohana_Session->read(NULL) #13 /var/www/html/modules/database/classes/kohana/session/database.php(74): Kohana_Session->__construct(Array, NULL) #14 /var/www/html/system/classes/kohana/session.php(54): Kohana_Session_Database->__construct(Array, NULL) #15 /var/www/html/application/classes/controller/view.php(49): Kohana_Session::instance() #16 /var/www/html/application/classes/controller/exception.php(27): Controller_View->before() #17【内部函数】: Controller_Exception->before() #18 /var/www/html/system/classes/kohana/request/client/internal.php(103): ReflectionMethod->invoke(Object(Controller_Exception)) #19 /var/www/html/system/classes/kohana/request/client.php(64): Kohana_Request_Client_Internal->execute_request(Object(Request)) #20 /var/www/html/system/classes/kohana/request.php(1154): Kohana_Request_Client->执行(对象(请求))#21 /var/www/html/application/classes/kohana/exception.php(25): Kohana_Request->execute() #22【内部函数】: Kohana_Exception::handler(Object(Session_Exception)) #23 {main} ~ SYSPATH/classes/kohana/session.php [325]

我该如何解决这个问题?

系统

php5

Ubuntu 14.04

Mysql 5.5

阿帕奇2

【问题讨论】:

标签: php ubuntu kohana


【解决方案1】:

你连接数据库有问题,因为资源没有返回,只是错误。

您有多种选择:

  • 重新检查配置中的连接数据
  • 切换到 PDO 数据库驱动程序
  • 库中的快速破解:

MODPATH\database\classes\Kohana\Database\MySQL.php方法connect()之前:$this->_select_db($database);你加:

if(!$this->_connection)
  throw new Database_Exception(':error',
            array(':error' => mysql_error()),
            mysql_errno());

注意:不支持自动发现模型的 PDO 存在问题。但是调试连接就足够了。

嗯,这可以按照艺术来完成,无需修改模块:

创建文件:APPPATH\classes\Database\MySQL.php

class Database_MySQL extends Kohana_Database_MySQL{
  protected function _select_db($database) {
    if(!$this->_connection)
      throw new Database_Exception(':error',
            array(':error' => mysql_error()),
            mysql_errno());
    return parent::_select_db($database);
  }
}

【讨论】:

  • 是的,我做了所有这一切,现在我更进一步了,我还在这里创建了一个案例:github.com/system76/beansbooks/issues/277 它抱怨一些 account_types 不存在,它们在安装过程中没有被创建.
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-23
  • 1970-01-01
  • 2012-04-16
相关资源
最近更新 更多