PHP-Roundcube安装,获取MYSQL_ATTR_FOUND_ROWS致命错误
作者:互联网
我正在共享主机服务器上安装Roundcube 0.9.0.
我有激活了PDO的PHP 5.3.8,但是当我安装roundcube时,这是我得到的响应:
Check DB config
Fatal error: Undefined class constant 'MYSQL_ATTR_FOUND_ROWS' in /home/neuas/domains/anthonysalvador.info/public_html/webmail/program/lib/Roundcube/rcube_db_mysql.php on line 127
我已经联系了我的房东,他们拒绝了我.我联系了Roundcube,他们拒绝了我.有什么我可以忽略的吗?
这是代码的PDO部分,包括错误的行:
102 protected function dsn_options($dsn)
103 {
104 $result = array();
105
106 if (!empty($dsn['key'])) {
107 $result[PDO::MYSQL_ATTR_KEY] = $dsn['key'];
108 }
109
110 if (!empty($dsn['cipher'])) {
111 $result[PDO::MYSQL_ATTR_CIPHER] = $dsn['cipher'];
112 }
113
114 if (!empty($dsn['cert'])) {
115 $result[PDO::MYSQL_ATTR_SSL_CERT] = $dsn['cert'];
116 }
117
118 if (!empty($dsn['capath'])) {
119 $result[PDO::MYSQL_ATTR_SSL_CAPATH] = $dsn['capath'];
120 }
121
122 if (!empty($dsn['ca'])) {
123 $result[PDO::MYSQL_ATTR_SSL_CA] = $dsn['ca'];
124 }
125
126 // Always return matching (not affected only) rows count
127 $result[PDO::MYSQL_ATTR_FOUND_ROWS] = true;
解决方法:
仅仅花了几个小时就把它追了下来.我在Centos 6.5上将PHP 5.3.3与MySQL 15.1(10.0.31 MariaDB)一起使用
对我来说,解决方法是获取mySQL-pdo so文件.通过执行yum修复,安装php-mysql-5.3.3-49.el6.x86_64.该软件包是通过执行yum whatprovides phppdo * .so来选择的
我是通过以下方式引领这条路的:
PHP 7 RC3: How to install missing MySQL PDO
这可能是多余的,请告诉我是否存在,但是我还在/etc/php.ini中指定了扩展名(第925行)
扩展名= /usr/lib64 / php / modules / pdo_mysql.so
标签:fatal-error,php,pdo,roundcube 来源: https://codeday.me/bug/20191123/2066580.html