Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 2.5.0b5

Bug #21145 driver error in 5.6
Submitted: 2016-11-07 23:06 UTC
From: wolfdogg Assigned: quipo
Status: Closed Package: MDB2 (version 2.5.0b5)
PHP Version: 5.6.27 OS: 2.6.32-604.30.3.lve1.3.63.el6.x
Roadmaps: (Not assigned)    
Subscription  


 [2016-11-07 23:06 UTC] wolfdogg (wolf dogg)
Description: ------------ using php 5.6, which is minimum supported for other applications in this same server, its erroring out the old pear mdb2 app. im using the bleeding edge mdb2 driver, i thought anyway. MDB2 2.5.0b5 beta MDB2_Driver_mysql 1.5.0b4 beta MDB2_Driver_mysqli 1.4.1 stable site code works correctly in php 5.4, wont boot on 5.6 right now, thought it would before, but i just switched up the extensions, could there be a missing extension instead?. php 5.6 extensions being used currently g imagick intl ioncube json mbstring mcrypt mongo mysql mysqli pdo pdo_mysql pdo_sqlite phar posix ssh2 so i slimmed that down to bare minimals. might i have stripped one needed for mdb2 to work in 5.6 env? code sample below, obvious items were obfuscated Expected result: ---------------- Expected no error switching to 5.6 Actual result: -------------- db driver error ERRNO: 2048 TEXT: Declaration of MDB2_Driver_mysqli::setTransactionIsolation() should be compatible with MDB2_Driver_Common::setTransactionIsolation($isolation, $options = Array) LOCATION: /home/<user>/php/MDB2/Driver/mysqli.php, line 1138, at November 7, 2016, 10:43 pm Showing backtrace: MDB2.loadClass() # line 332, file: /home/<user>/php/MDB2.php MDB2.loadClass("MDB2_Driver_mysqli", false) # line 380, file: /home/<user>/php/MDB2.php MDB2.factory("mysqli://<dbuser>:<dbpass>@127.0.0.1/<dbname>", false) # line 472, file: /home/<user>/php/MDB2.php MDB2.singleton("mysqli://<dbuser>:<dbpass>@127.0.0.1/<dbname>") # line 13, file: /home/<user>/public_html/site-org/libs/mdb2.php DbManager.__construct("mysqli://<dbuser>: <dbpass>@127.0.0.1/<dbname>")

Comments

 [2016-11-07 23:19 UTC] wolfdogg (wolf dogg)
so yeah, i realized i could update the driver too, that it was using, still having problems, but new ones, so it appears its the driver so far. you can update that like this (from linux term that has pear installed) pear install channel://pear.php.net/MDB2_Driver_mysqli-1.5.0b4 not sure if the 4 is necessary at the end of the version. Now i get reference error, line 11 mdb2.php, which may be my file $this->mdb2 =& MDB2::singleton($connectionString); if (PEAR::isError($this->mdb2)) { trigger_error($this->mdb2->getMessage(), E_USER_ERROR); } removing the ampersand reference fixes that error, adjust to this $this->mdb2 = MDB2::singleton($connectionString); if (PEAR::isError($this->mdb2)) { trigger_error($this->mdb2->getMessage(), E_USER_ERROR); } now im facing this which i seriously recognize, i think i filed that bug report here long ago(per is error, see below). ill be checking this next. ERRNO: 8192 TEXT: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context LOCATION: /home/soldiert/public_html/wolfdogg-org/libs/mdb2.php, line 14, at November 7, 2016, 11:15 pm
 [2019-03-19 12:29 UTC] quipo (Lorenzo Alberton)
-Status: Open +Status: Closed -Assigned To: +Assigned To: quipo
Thank you for your bug report. This issue has been fixed in the latest released version of the package, which you can download at http://pear.php.net/get/