Thinkphp5下用php5.6連接(MSSQL)sqlsrv 數(shù)據(jù)庫出現(xiàn)“could not find driver(PDOException in Connection.php line 293)”的解決辦法

[重要通告]如您遇疑難雜癥,本站支持知識付費業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時間哦!

今天淘寶的客戶來說,他一個站使用Thinkphp5建立的,中間還有asp的程序,做的各種api接口,感覺還挺復(fù)雜的,但是運行某個界面的時候提示錯誤,錯誤是“could not find driverPDOException in Connection.php line 293)”具體如下圖;

經(jīng)過詢問得知,客戶是Thinkphp5+mssql+asp+PHP5.6整個的搭建,看錯誤的原因,應(yīng)該是驅(qū)動的問題,想著是驅(qū)動的問題,那就解決驅(qū)動嘍;以前站內(nèi)也寫過其他相關(guān)文章,具體站內(nèi)查看;??Thinkphp5下如何使用odbc連接sqlserver

網(wǎng)上資料都是各種介紹,各種說,基本上都是說需要下載微軟的驅(qū)動放在ext文件夾后,再在php.ini中增加如下配置:
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_56_ts.dll
[PHP_SQLSRV]
extension=php_sqlsrv_56_ts.dll

最后重啟服務(wù)器即可,但我重啟了IIS甚至服務(wù)器依然無濟于事,這問題就又來了,難道我下的東西有問題?其實客戶當(dāng)時也設(shè)置了參數(shù),具體請看;

可是客戶也設(shè)置了,依然不通訊,那就說明下載的有問題,不光客戶的有問題,我下載的東西也是有問題;

經(jīng)過在大腦多種想象中,可能還是dll的參數(shù)問題,可能就出現(xiàn)在32位以及64位上;原來微軟官方提供的microsoft drivers 3.2 for php for sql server并不支持64位的php版本,那就要找支持64位系統(tǒng)的,客戶也說他下載的dll也是64位的,本想尋找32位的支持,一想客戶設(shè)置的64的系統(tǒng),干脆64的就哦了;

解決辦法如下:

1. 確保正確安裝sql server 2005 (客戶sql2005), 開啟sql server的遠(yuǎn)程連接訪問,檢查防火墻,確認(rèn)在本地可以通過SQL Server Configuration Manager連接到服務(wù)器。

2. 修改 php.ini 開啟相關(guān)擴展(php_pdo.dll ,php_pdo_mssql.dll ,php_mssql.dll),重啟IIS或者Apache后,一定要用phpinfo()檢查是否成功加載;

3. 修改php.ini中:mssql.secure_connection = Off ,有的沒有這一項,也有的是On,這一步可以忽略;

64位PHP加載sqlsrv 數(shù)據(jù)庫屬于知識付費業(yè)務(wù):

SVIP價 8.8 折

已有0人打賞

延伸閱讀:

1、php.ini的extension_dir定位到C盤,所以也可以用絕對路徑引用,也可以修改成extension_dir=ext,然后就相對路徑引用即可,如extension=php_sqlsrv_56_nts.dll,具體看我上圖,經(jīng)過按照下圖的設(shè)置,客戶的站就解決了相關(guān)問題;

2、PHP各種版本中TS和NTS是什么意思?有什么區(qū)別?

另外的解決辦法,關(guān)于PHP7.0的;

解決方法:

(1)php7.0以下版本

extension=php_pdo.dll
extension=php_pdo_sqlite.dll

(2)、php7.0以上版本

extension=pdo
extension=pdo_mysql

【備注】:擴展開啟之后一定要,重啟服務(wù)

問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信

所寫所說,是心之所感,思之所悟,行之所得;文當(dāng)無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!

支付寶贊助
微信贊助

免責(zé)聲明,若由于商用引起版權(quán)糾紛,一切責(zé)任均由使用者承擔(dān)。

您必須遵守我們的協(xié)議,如您下載該資源,行為將被視為對《免責(zé)聲明》全部內(nèi)容的認(rèn)可->聯(lián)系老梁投訴資源
LaoLiang.Net部分資源來自互聯(lián)網(wǎng)收集,僅供用于學(xué)習(xí)和交流,請勿用于商業(yè)用途。如有侵權(quán)、不妥之處,請聯(lián)系站長并出示版權(quán)證明以便刪除。 敬請諒解! 侵權(quán)刪帖/違法舉報/投稿等事物聯(lián)系郵箱:service@laoliang.net
意在交流學(xué)習(xí),歡迎贊賞評論,如有謬誤,請聯(lián)系指正;轉(zhuǎn)載請注明出處: » Thinkphp5下用php5.6連接(MSSQL)sqlsrv 數(shù)據(jù)庫出現(xiàn)“could not find driver(PDOException in Connection.php line 293)”的解決辦法

發(fā)表回復(fù)

本站承接,網(wǎng)站推廣(SEM,SEO);軟件安裝與調(diào)試;服務(wù)器或網(wǎng)絡(luò)推薦及配置;APP開發(fā)與維護(hù);網(wǎng)站開發(fā)修改及維護(hù); 各財務(wù)軟件安裝調(diào)試及注冊服務(wù)(金蝶,用友,管家婆,速達(dá),星宇等);同時也有客戶管理系統(tǒng),人力資源,超市POS,醫(yī)藥管理等;

立即查看 了解詳情