How to check if PDO support is enabled in my Apache Installation?

23,269

Solution 1

The configure command in your PHP output shows:

'--disable-pdo'

so I think it's safe to assume that they haven't enabled it.

Solution 2

if (!defined('PDO::ATTR_DRIVER_NAME')) {
echo 'PDO unavailable';
}
elseif (defined('PDO::ATTR_DRIVER_NAME')) {
echo 'PDO available';
}

I hope this works

Share:
23,269
Arc
Author by

Arc

Updated on March 21, 2020

Comments

  • Arc
    Arc about 4 years

    I am using a shared hosting through CIPL.in. They use cpanel. I am trying to deploy a ZEND app on my website. However it keeps giving the error.

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

    Also when I try to print out the phpinfo I get:

    System  Linux bear.dnsracks.com 2.6.18-92.1.13.el5PAE #1 SMP Wed Sep 24 20:07:49 EDT 2008 i686
    Build Date  Jun 8 2009 13:50:29
    Configure Command   './configure' '--disable-pdo' '--enable-bcmath' '--enable-calendar' '--enable-ftp' '--enable-gd-native-ttf' '--enable-libxml' '--enable-magic-quotes' '--enable-mbstring' '--enable-sockets' '--prefix=/usr' '--with-curl=/opt/curlssl/' '--with-freetype-dir=/usr' '--with-gd' '--with-gettext' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/usr' '--with-jpeg-dir=/usr' '--with-kerberos' '--with-libxml-dir=/opt/xml2/' '--with-mcrypt=/opt/libmcrypt/' '--with-mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-mysqli=/usr/bin/mysql_config' '--with-openssl=/usr' '--with-openssl-dir=/usr' '--with-png-dir=/usr' '--with-ttf' '--with-xpm-dir=/usr' '--with-zlib' '--with-zlib-dir=/usr'
    Server API  CGI
    Virtual Directory Support   disabled
    Configuration File (php.ini) Path   /usr/lib
    Loaded Configuration File   /usr/local/lib/php.ini
    Scan this dir for additional .ini files     (none)
    additional .ini files parsed    (none)
    PHP API     20041225
    PHP Extension   20060613
    Zend Extension  220060519
    Debug Build     no
    Thread Safety   disabled
    Zend Memory Manager     enabled
    IPv6 Support    enabled
    Registered PHP Streams  php, file, data, http, ftp, compress.zlib, https, ftps
    Registered Stream Socket Transports     tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
    Registered Stream Filters   string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, zlib.*
    

    This can be seen at http://cubeee.co.in/worm/tester.php

    However when I get back to my hosting providers, they tell me that they have modified the php.ini to enable the PDO support and they will check again. What is it that I need to do or ask my hosts to do?