一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - PHP教程 - PHP連接sql server 2005環(huán)境配置及問題解決

PHP連接sql server 2005環(huán)境配置及問題解決

2020-07-21 14:49PHP教程網(wǎng) PHP教程

這篇文章主要介紹了PHP連接sql server 2005環(huán)境配置及問題解決,需要的朋友可以參考下

一、Windows下PHP連接SQLServer 2005

設(shè)定:安裝的Windows操作系統(tǒng)(Win7 或XP均可,其他系統(tǒng)暫未測試),在C盤下;PHP的相關(guān)文件位于c:/PHP下面,其配置文件php.ini位于C:\Windows下面。

連接前配置系統(tǒng):

1、檢查文件 php\ntwdblib.dll, 默認(rèn)PHP的安裝目錄下面有一個(gè),不能連接再替換。

            下載正確版本的 ntwdblib.dll (2000.80.194.0)

2.配置php

           a、打開php.in將extension=php_mssql.dll的注釋符號(hào)去掉。

           b、打開php.in將mssql.secure_connection = Off改為on。

           c、將php_mssql.dll拷貝到php.in中extension_dir 指定的目錄或者系統(tǒng)system32目錄下,  位于/PHP/ext。

以上步驟完成后需要重啟apache。

注意:實(shí)際使用中發(fā)現(xiàn) 如果通過php壓縮文件手工安裝php到iis下,必須重啟機(jī)器而不僅僅是iis。

3.配置sqlserver

           a. 運(yùn)行 SQL Server 配置管理器:SQL Server Configuration Manager,打開協(xié)議 Protocols

           b. 允許命名管道 "named pipes" 和 "tcp/ip"

           c. 右鍵點(diǎn)擊 "tcp/ip",打開屬性 Properties 標(biāo)簽 "IP 地址"

           d. 在 TCP 動(dòng)態(tài)端口 "TCP Dynamic Ports" 填入 1433,注意分配正確的IP地址。

           e. 重啟 SQL Server

4.使用以下方式連接MS SQL Server 2005:

代碼如下,另存為test.php:

< ?php

//鏈接數(shù)據(jù)庫

$conn=mssql_connect('localhost','sa','123456');

mssql_select_db('gu_dde',$conn);

//query語句

$Query="select * from dde_top";

$AdminResult=mssql_query($Query);

//輸出結(jié)果

$Num=mssql_num_rows($AdminResult);

for($i=0;$i

輸入 http://127.0.0.1/test.php

進(jìn)行訪問:

5.FAQ常見問題:

1報(bào)錯(cuò):

Fatal error: Call to undefined function mssql_connect()

解決:

使用MSSQL_系列函數(shù)

要使用這兩種都需要在php.ini進(jìn)行設(shè)定:

        (1)允許 DCOM,需要將php.ini中的 ;com.allow_dcom=TRUE前的分號(hào)";"去掉。

        (2)使用MSSQL擴(kuò)展,需要php.ini中的 ;extension=php_mssql.dll前的分號(hào)";"去掉。(關(guān)鍵)

        (3)確認(rèn)extension_dir為正確路徑,以本機(jī)為例:extension_dir = "c:\php\ext"。

        (4)如果仍然機(jī)器報(bào)錯(cuò)說找不到c:\php\ext\php_mssql.dll但明明存在這個(gè)文件。

解決方法:將php_mssql.dll,ntwdblib.dll拷貝到系統(tǒng)目錄\system32下重啟測試。。

(注:上面兩個(gè)dll文件不在相同目錄下,我的為c:\php\ext\php_mssql.dll;c:\php\ntwdblib.dll)

另外設(shè)置好了后記得重啟服務(wù)器哦。

已經(jīng)啟用是否選擇是

確認(rèn)服務(wù)器正確之后,再確認(rèn)ntwdblib.dll 文件位置是否放到了 c:\windows\system32下

同時(shí)要保證ntwdblib.dll 這個(gè)文件的版本和sqlserver的版本對(duì)應(yīng):

下面是對(duì)應(yīng)關(guān)系:

1.ntwdblib.dll 版本為 2000.2.8.0 是 對(duì)應(yīng) SqlServer2000(這個(gè)是網(wǎng)絡(luò)查資料和猜測,沒裝2000)

2.ntwdblib.dll 版本為 2000.80.194.0 是 對(duì)應(yīng) SqlServer2005(這個(gè)是用實(shí)驗(yàn)證明可以用,本人就是用筆記本裝了2005)

3.ntwdblib.dll 版本為 2000.80.2039 是 對(duì)應(yīng) SqlServer2008(這個(gè)是猜測沒有裝2008)

6.其他問題:

如果php apache Sql Server2005都在同一臺(tái)機(jī)器上,訪問基本沒有問題了。

如果Sql Server2005和php機(jī)器是分離的,需要確認(rèn)ping sqlserver所在機(jī)器的機(jī)器名能通,如過不通,修改php所在機(jī)器的\system32\drivers\etc下的hosts文件,增加一行 sqlserver所在機(jī)器的機(jī)器ip   sqlserver所在機(jī)器的機(jī)器名字。

如果還是無法訪問,需要確認(rèn)php所在的機(jī)器有無暗轉(zhuǎn)mdac。要不索性安裝一下sqlserver的客戶端好了。

解決問題如下:

1.下載兩個(gè)文件 php_mssql.dll 和 ntwdblib.dll

php_mssql.dll 如果這個(gè)沒有復(fù)制到c:\windows\system32下,就很容易出現(xiàn)

ntwdblib2093.dll 這個(gè)文件要注意版本,不然后面搞得很郁悶.

二、Linux下php連接sql server 2005

1、首先根據(jù)需要安裝LAMP環(huán)境中的除php外其他組件。 在Linux中使用freetds連接MS SQL 安裝freetds

./configure  --prefix=/usr/local/freetds  --with-tdsver=8.0 --enable-msdblib --enable-dbmfix --with-gnu-ld --enable-shared --enable-static

make 

make install

重要提示一:這一步需要注意的是--with-tdsver

2、配置freetds

server2005對(duì)應(yīng)的tds version是7.2(貌似網(wǎng)上能查到的都寫8.0)

配置/usr/local/freetds/etc/freetds.conf

# A typical Microsoft server

[1.1.1.21]

          host = 1.1.1.21

          port = 1433 

          tds version = 7.0

重要提示:在調(diào)用mssql_connect函數(shù)時(shí),需要注意的是,其第一個(gè)參數(shù)應(yīng)該是[1.1.1.21](即在freetds.conf里的配置),而不是sql server的IP!

3、編譯安裝php

編譯php的配置項(xiàng)根據(jù)需要設(shè)置,但是必須要加入的配置項(xiàng)為:--with-mssql=/usr/local/freetds/

注意:如果編譯php加載freetds 時(shí)候出現(xiàn)不能找到freetds目錄,則需要以下操作(官方的Faq):

touch /usr/local/freetds/include/tds.h

touch /usr/local/freetds/lib/libtds.a

4、安裝完php以后,所有準(zhǔn)備工作都完成了,下面就可以重啟apache,就可以用php調(diào)用sql server 2005了。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 97精品久久天干天天蜜 | 欧美透逼视频 | 2021最新国产成人精品免费 | 国产精品国色综合久久 | 国产精品久久现线拍久青草 | 亚洲成色 | 成人在线视频国产 | 四神集团1涨奶是第几章 | 黄色a视频| 精品亚洲视频在线观看 | 国产66| 日韩天堂视频 | 日本一区二区视频免费播放 | 日韩国产欧美成人一区二区影院 | 天堂成人在线 | 爱情岛永久成人免费网站 | 亚洲一级视频在线观看 | 久久视频精品3线视频在线观看 | 97国产蝌蚪视频在线观看 | 九九99香蕉在线视频美国毛片 | 99在线免费观看视频 | 美女在线看永久免费网址 | 视频在线精品 | 亚洲国产精品久久久久 | 国产亚洲精品精品国产亚洲综合 | 欧美精品亚洲精品日韩专区va | 我和黑色丝袜班主任 | 欧美专区在线观看 | 免费yjsp妖精com| 特黄a级三级三级野战 | 国产第一页无线好源 | 91精品啪在线观看国产老湿机 | 范冰冰好紧好滑好湿 | hd最新国产人妖ts视频 | 久久久久伊人 | 亚飞与亚基高清国语在线观看 | 成年人视频免费在线播放 | 精品国产区一区二区三区在线观看 | 欧美成人另类人妖 | 红色播放器 | 青青艹视频在线 |