zend_db_expr zend query left framework php mysql zend-framework pdo zend-db

php - query - Error del controlador MySql no instalado para la aplicación Zend



zend query (4)

PDO, a diferencia de las funciones mysql_ *, es compatible con varios motores de base de datos. Para hacer esto, necesita una biblioteca de controladores para cada uno.

Usted tiene instalado el "núcleo" de PDO pero no el controlador MySQL; solo tiene que instalarlo (llamado pdo_mysql) y todo estará bien.

Su php.ini debería tener uno de estos (windows o linux):

extension=php_pdo_mysql.dll extension=php_pdo_mysql.so

Estoy tratando de obtener mi aplicación ZEND en mi servidor Apache ejecutándose en UNIX. Inicialmente, mi host no dio soporte para PDO, y lo habilité solicitándolos con un correo electrónico. Pero ahora recibo un error que dice El controlador de mysql no está actualmente instalado

El seguimiento de la pila es como:

An error occurred Application error Exception information: Message: The mysql driver is not currently installed Stack trace: #0 /home/windchim/worminc/library/Zend/Db/Adapter/Abstract.php(770): Zend_Db_Adapter_Pdo_Abstract->_connect() #1 /home/windchim/worminc/library/Zend/Db/Adapter/Abstract.php(840): Zend_Db_Adapter_Abstract->quote(''aaditya258'', NULL) #2 /home/windchim/worminc/library/Zend/Auth/Adapter/DbTable.php(354): Zend_Db_Adapter_Abstract->quoteInto(''`password` = MD...'', ''aaditya258'') #3 /home/windchim/worminc/library/Zend/Auth/Adapter/DbTable.php(285): Zend_Auth_Adapter_DbTable->_authenticateCreateSelect() #4 /home/windchim/worminc/library/Zend/Auth.php(117): Zend_Auth_Adapter_DbTable->authenticate() #5 /home/windchim/worminc/application/controllers/LoginController.php(117): Zend_Auth->authenticate(Object(Zend_Auth_Adapter_DbTable)) #6 /home/windchim/worminc/library/Zend/Controller/Action.php(503): LoginController->processAction() #7 /home/windchim/worminc/library/Zend/Controller/Dispatcher/Standard.php(285): Zend_Controller_Action->dispatch(''processAction'') #8 /home/windchim/worminc/library/Zend/Controller/Front.php(934): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #9 /home/windchim/public_html/worm/index.php(47): Zend_Controller_Front->dispatch() #10 {main}

¿Como puede ésto ser resuelto? Por favor ayuda


En el archivo php.ini, simplemente habilite la siguiente extensión de línea = php_pdo_mysql.dll (significa eliminar comentarios delante de él)

entonces será ejecutado Correctamente.


Como han mencionado otros, debe habilitar la extensión pdo_mysql.

Sin embargo, ejecutar php (5.3) como un módulo apache (2.2) en mi máquina (Windows 7), aún no funcionaría. ¡Me di cuenta de que el valor de extension_dir en php.ini debe establecerse usando una ruta absoluta (lo relativo no funcionaría)!

¡Espero que esto ayude a alguno de ustedes!


Verificación de verificación de error de error_reporting = E_ALL & ~ E_DEPRECATED & ~ E_STRICT (debería ser así en la etapa de producción)

Si escribe error_reporting (valor); o algo como esto (generalmente para probar, "valor" podría ser "0")

puede obtener este error "El controlador mysql no está actualmente instalado" si usa

Por lo tanto, cualquier error de sintaxis dentro de php.ini podría generar este error. Si configura su sistema con cuidado siempre puede confundirse fácilmente, porque usted sabe, no hay errores en la instalación o configuración de db. Si todo lo demás es correcto, entonces busque un error de sintaxis en php.ini.