كيفية التحقق مما إذا تم تمكين دعم PDO في تثبيت Apache الخاص بي؟

StackOverflow https://stackoverflow.com/questions/1087965

سؤال

أنا أستخدم استضافة مشتركة من خلال cipl.in. يستخدمون cpanel. أحاول نشر تطبيق ZEND على موقع الويب الخاص بي. ومع ذلك فإنه يحتفظ بإعطاء الخطأ.

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}

أيضا عندما أحاول طباعة phpinfo أحصل عليه:

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.*

هذا يمكن أن ينظر إليه في http://cubeee.co.in/worm/tester.php.

ومع ذلك، عندما أعود إلى مقدمي استضافتي، أخبروني أنهم قاموا بتعديل php.ini لتمكين دعم PDO وسيقومون بالتحقق مرة أخرى. ما الذي أحتاج إلى القيام به أو اسأل مضيفي القيام به؟

هل كانت مفيدة؟

المحلول

يظهر الأمر التكوين في إخراج PHP:

'--disable-pdo'

لذلك أعتقد أنه من الآمن افتراض أنهم لم يمكينهم.

نصائح أخرى

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

آمل أن يكون هذا يعمل

هل هذا التطبيق يريد PDO_MYSQL؟ إذا كان الأمر كذلك، فقد تتمكن من استخدام محول MySQLI بدلا من ذلك - يعتمد ذلك على البرنامج ولكنه ممكن.

في المنطقة التي تقوم فيها بتعيين تفاصيل اتصال قاعدة البيانات الخاصة بك، ربما يكون هناك خيار يسمى "محول". حاول تحديد قيمةها إلى "mysqli"

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top