2015-12-10 157 views
0

我在Windows服務器上安裝了Apache,PHP 5.6和MySQL 5.7。如何在Windows上安裝PHP的PDO驅動程序?

在php.ini中,我啓用了以下內容:

extension=php_mysql.dll 
extension=php_mysqli.dll 
extension=php_oci8_12c.dll 
extension=php_pdo_mysql.dll 
extension=php_pdo_oci.dll 

(並重新啓動Apache)的

但是當我嘗試在我的PHP頁面中使用PDO,但它仍然拋出的錯誤:

Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' 

我需要做些什麼來安裝PDO?

+0

_「嘗試使用PDO」_如何? – AbraCadaver

+0

@AbraCadaver在一個php頁面。我只是簡單地調用'new PDO(...)' –

+0

某些擴展需要預先安裝其他以前的擴展,並對PHP配置進行了一些更改,檢查了PHP站點和MySQL的要求,配置,PDO擴展和MySQL擴展 – umlcat

回答

2

在我的阿帕奇httpd.conf我有(注意我有#重複出來,因爲它花了我至少1小時)。所以我讓它向我展示不是這樣做。

#PHPIniDir 'c:\apps\php\' 
#PHPIniDir "C:\Apache24\~PHP_download\php-5.6.11-Win32-VC11-x64\" 
PHPIniDir "C:/Apache24/~PHP_download/php-5.6.11-Win32-VC11-x64" 

#LoadModule php5_module "c:/apps/php/php5apache2_2.dll" 
LoadModule php5_module "C:/Apache24/~PHP_download/php-5.6.11-Win32-VC11-x64/php5apache2_4.dll" 

AddHandler application/x-httpd-php .php 

在上面的文件夾(如下所示),我有這些文件:

Directory of C:\Apache24\~PHP_download\php-5.6.11-Win32-VC11-x64 

07/24/2015 12:33 PM <DIR>   . 
07/24/2015 12:33 PM <DIR>   .. 
07/24/2015 12:32 PM   69,632 deplister.exe 
07/24/2015 12:32 PM <DIR>   dev 
07/24/2015 12:32 PM <DIR>   ext 
07/24/2015 12:32 PM <DIR>   extras 
07/24/2015 12:32 PM   1,290,752 glib-2.dll 
07/24/2015 12:32 PM   16,384 gmodule-2.dll 
07/24/2015 12:32 PM  25,337,856 icudt54.dll 
07/24/2015 12:32 PM   1,907,712 icuin54.dll 
07/24/2015 12:32 PM   51,200 icuio54.dll 
07/24/2015 12:32 PM   256,000 icule54.dll 
07/24/2015 12:32 PM   50,176 iculx54.dll 
07/24/2015 12:32 PM   63,488 icutest54.dll 
07/24/2015 12:32 PM   195,072 icutu54.dll 
07/24/2015 12:32 PM   1,369,088 icuuc54.dll 
07/24/2015 12:32 PM   79,826 install.txt 
07/24/2015 12:32 PM <DIR>   lib 
07/24/2015 12:32 PM   1,823,232 libeay32.dll 
07/24/2015 12:32 PM   46,592 libenchant.dll 
07/24/2015 12:32 PM   160,256 libpq.dll 
07/24/2015 12:32 PM   237,056 libsasl.dll 
07/24/2015 12:32 PM   201,728 libssh2.dll 
07/24/2015 12:32 PM    3,286 license.txt 
07/24/2015 12:32 PM   518,643 news.txt 
07/24/2015 12:32 PM    43 phar.phar.bat 
07/24/2015 12:32 PM   53,242 pharcommand.phar 
07/24/2015 12:32 PM   58,368 php-cgi.exe 
07/24/2015 12:32 PM   30,720 php-win.exe 
07/24/2015 12:32 PM   77,824 php.exe 
07/24/2015 12:32 PM    2,523 php.gif 
08/29/2015 02:28 PM   74,572 php.ini 
07/24/2015 12:32 PM   74,334 php.ini-development 
07/24/2015 12:32 PM   74,365 php.ini-production 
07/24/2015 12:32 PM   31,744 php5apache2_4.dll 
07/24/2015 12:32 PM   845,830 php5embed.lib 
07/24/2015 12:32 PM   167,936 php5phpdbg.dll 
07/24/2015 12:32 PM   8,269,312 php5ts.dll 
07/24/2015 12:32 PM   180,224 phpdbg.exe 
07/24/2015 12:32 PM   21,360 readme-redist-bins.txt 
07/24/2015 12:32 PM    3,634 snapshot.txt 
07/24/2015 12:32 PM   353,280 ssleay32.dll 

而且在同一個文件夾,在php.ini文件我有以下的塊被PDO相關,隨着力的那些不與;

remmed出來;延長= php_pdo_firebird.dll 延長= php_pdo_mysql.dll ;延長= php_pdo_oci.dll 延長= php_pdo_odbc.dll ;延長= php_pdo_pgsql.dll ;延長= php_pdo_sqlite.dll

然後我有一個phpinfo_xyz.php文件僅供測試(讀:刪除它,當你完成),它包含

<?php phpinfo(); ?> 

重新啓動apache,從瀏覽器中指向文件,並注意以下與以下三個類似的塊。

enter image description here

...

enter image description here

...

enter image description here

在上面從phpinfo()第一PHP的畫面,它是在得到正確的路徑中耗時最長的httpd.conf。這就是爲什麼我在這個答案中看到了錯誤的路徑嘗試。

因此,直到Loaded Configuration File出現體面,它有一個機會。

祝你好運。這並不好玩。一半的問題是有2或4個選項的原始下載執行。可悲的是,我想這花了我2到3個小時。但我沒有你們其他人那麼聰明。

+0

我有所有相同的設置(但不同的路徑),它仍然給出錯誤 –

+0

以及我不在那裏:P ...只有一些調試嘗試,非常適合小評論框。 – Drew

+0

難道我在64位機器上使用32位Apache/PHP? –

0

問題是extension_dir指令沒有作爲相對路徑工作。將問題從extension_dir="ext"更改爲extension_dir="c:/phpinstall_path/ext"

+0

建議向人們展示讓你回答的常見問題投票答覆他們的答案。而不是做一個微不足道的而不承認它。投票加強了那些花費精力解決您的問題的人們的努力......希望繼續爲他人做這些事情。 – Drew

+0

@Drew我很樂意爲您付出努力(這是很多,所以我做了),但您的回答並沒有幫助我發現問題。正如我所提到的,您擁有與我完全相同的設置,它適用於您,但不適用於我的服務器。 –

+0

因爲在看我的回答時,你瞭解了斜線應該走的方向?無論如何,我們都有PDO去做,祝你好運:P – Drew

相關問題