php5.2載入mssql 模組失敗

Jack2k發表於2021-09-09

php5.2  載入mssql 模組失敗

由於公司用到mssql 2000  ,同時需要到php 去連線MSSQL2000 。從php5.3開始,這個介面已經是微軟自己在做了,要用微軟自己提供的介面去連線MSSQL , 那必然要修改程式碼,開發不願意。php5.2載入模組的時候一直載入不上,也未提示報錯,phpinfo 函式檢視的時候怎麼也沒有mssql 這個模組。

大家都知道,winserver 有很多不確定性,就在剛才終於搞定了。

寫一下排錯的過程,首先檢查php.ini   裡面extension=php_mssql.dll,extension=php_pdo_mssql.dll,extension=php_pdo.dll是否 被註釋掉

然後搜尋這幾個dll  找到複製到system32 下面

然後檢查這幾個模組依賴的dll 檔案在system32 下是否找到

php5ts.dll

ntwdblib.dll
<wbr><wbr><wbr>msvcrt.dll
<wbr><wbr><wbr>kernel32.dll

<wbr><wbr>php5ts.dll所依賴的dll

<wbr><wbr><wbr>kernel32.dll
<wbr><wbr><wbr>advapi32.dll
<wbr><wbr><wbr>msvcr71.dll
<wbr><wbr><wbr>user32.dll
<wbr><wbr><wbr>netapi32.dll

沒有就想辦法copy 到c:system32 目錄下面去

特別要注意的是ntwdblib.dll  這個檔案 php5  安裝包裡面預設是2000.2.80

這個可能連不上  2000需要的是2000.80.1994  一般安裝完SQL 2000  這個dll 庫在系統庫裡面是可以找得到的,搜尋一下,沒有的話去別的機器上複製一個也行。

如果是64位系統的話可能還要注意    ntwdblib.dll 在SYswo64 目錄下一定要存在,否則也會載入不了的。最先我也是隻複製到system32 目錄下,可是怎麼都載入不起來。 這些檢查工作做好後,重啟IIS 或者apache    透過phpinfo 函式就可以看到mssql  模組了

方便大家 找ntwdblib.dll  檔案 ,在附件上傳了這個dll




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/36/viewspace-2804825/,如需轉載,請註明出處,否則將追究法律責任。

相關文章