0
我已经遵循zend的说明来实现我的web身份验证,使用配置了mysqli驱动程序的数据库表。zend框架2使用mysqli失败的身份验证
当渲染页面,下面会出现异常后执行的身份验证方法:
Zend\Db\Adapter\Exception\ErrorException
File:
C:\xampp\htdocs\pfc\vendor\ZF2\library\Zend\Db\Adapter\Driver\Mysqli\Statement.php:188
Mensaje:
Commands out of sync; you can't run this command now
这似乎是它发生,因为司机不能够执行倍数querys没有自由先前查询的结果首先(多查询问题)。
我发现,如果改变将对DBAdapter的司机PDO_MYSQL,验证方法效果好。但我不希望出于性能原因使用PDO驱动程序。
如何配置Mysqli驱动程序可以做到这一点?
我的代码波纹管:
$dbAdapter = new DbAdapter(array(
//'driver' => 'Mysqli', //This driver fail when call authenticate method
'driver' => 'Pdo_Mysql', //This driver works ok
'database' => 'securedraw',
'username' => 'root',
'password' => ''
));
$authAdapter = new AuthDbTableAdapter($dbAdapter);
$authAdapter->setTableName('users')
->setIdentityColumn('mail')
->setCredentialColumn('password')
->setIdentity('josep')
->setCredential('josep');
$authResult = $authAdapter->authenticate(); //Method fail