導航:首頁 > 編程語言 > phpvc964

phpvc964

發布時間:2023-03-12 06:55:25

php怎麼連接sql server 2012

1:PHP5.2.x本身有個php_mssql.dll的擴展用來連接Sql server,但是這個dll只是用來連接低版本 Sql server的(2000以下版本),在Sql server 2005及以上版本無法使用mssql_connect連接到資料庫。

2:php5.3.x不再支持php_mssql.dll 拓展庫了,及時使用php5.2.x中的php_mssql.dll也無法使用。 微軟專門為PHP出了個SQL Server的擴展(Windows版本的),對於Windows下使用php開發SQL Server應用來說,這個擴展有利於利用SQL Server來開發php平台連接sql server資料庫管理系統。

一、php5.3以下的版本連接sql server

5.3以下的版本擴展裡面自帶一個php_mssql.dll;接資料庫的擴展,可以利用這個擴展鏈接資料庫,(只限於鏈接低版本資料庫)。

具體的步驟如下:

1:首先安裝sql server,超級不好安裝,我之前安裝的是2008版本的,Windows過期後就不能用了,然後重裝還裝不上,最後重裝系統才裝上

2:確定SQL裝的時候用的是混合認證模式,或SQL驗證模式,然後打開php的配置文件(php.ini),開啟mssql擴展 (extension=php_pdo_mssql.dll前面的分號去掉)並且需要把mssql.secure_connection = On 重啟後生效。

如果比較順利的話已經可以連接資料庫了,如果連不上就需要繼續低下的配置:

3: 檢查ntwdblib文件的版本(php/下面和Apache/下面)下載正確的版本的 ntwdblib.dll(2000.80.194.0)覆蓋現有的DLL文件,(把ntwdblib.dll,php_mssql.dll 復制到system32目錄中也可以)ntwdblib.dll 用於PHP連接MSSQL2005或2008的驅動文件。

4:測試連接:mssql_connect('localhost,1433', '用戶名', '密碼');

二、php5.3+連接sql server

其 實5.3以下的php版本已經很少用了,況且安全性和兼容性都不好,所以高版本的php還是比較常見的。實踐證明低版本的php連接資料庫成功率比較低 (2005以上的版本幾乎不能使用),推薦使用php5.3+ php使用微軟專門的擴展 SQLSRV 來連接sqlserver資料庫

步驟如下:

1:先到微軟網站下載 SQL Server Driver for PHP 是一個自解壓的 EXE文件,解壓縮後你會得到這么幾個文件:

其中的52、53表示就是php的5.2.x和5.3.x 版本,選擇跟你php版本相匹配的;vc6或vc9的選擇要看你使用的是什麼web伺服器軟體,如果使用的是IIS那就選擇vc9的,如果是Apache 則選擇vc6的,ts和nts的選擇要看你安裝的php版本是線程安全版的還是非線程安全版,ts是線程安全,nts是非線程安全。

如果不知道可以在phpinfo里看Zend Extension Build這個屬性如下圖:

2:將擴展拷貝到拷到php/ext目錄下,在php.ini文件,添加一下代碼:

extension=在ext下的pdo擴展(用於pdo)

extension=在ext下的擴展

3:重啟伺服器,打開phpinfo();看到以下狀態就證明添加擴展成功,


4:連接測試:

<?php $serverName = "(local)"; $connectionInfo = array("UID"=>"sa","PWD"=>"admin","Database"=>"db_online"); $conn = sqlsrv_connect( $serverName, $connectionInfo); if( $conn ){ echo "Connection established. "; }else{ echo "Connection could not be established. "; die( var_mp(sqlsrv_errors())); } sqlsrv_close( $conn); ?>


注意這里的連接不是用mssql_connect而是用sqlsrv_connect,在這個版本中,還有幾個函數:

這個擴展為php新增了一系列sqlsrv_開頭的函數,常用的如下:


sqlsrv_connect

sqlsrv_close

sqlsrv_commit

sqlsrv_errors

sqlsrv_fetch

sqlsrv_fetch_array

sqlsrv_fetch_metadata

sqlsrv_num_rows

sqlsrv_query

sqlsrv_rollback

sqlsrv_rows_affected

. . .

另外注意的是,如果使用這個擴展連接Sql server 2005以及以上版本的sql server(如sql server 2008),你還需要在機器上先安裝 SQL Server Native Client

不然會出現如下錯誤:

array

0 =>array

0 =>string'IMSSP'(length=5)

'SQLSTATE' =>string'IMSSP'(length=5)

1 =>int-49

'code' =>int-49

2 =>string'This extension requires the Microsoft SQL Server 2012 Native Client. Access the following URL to download the Microsoft SQL Server 2012 Native Client ODBC driver for x86:


http://go.microsoft.com/fwlink/?LinkId=163712'

(length=216)

'message' =>string'This extension requires the Microsoft SQL Server 2008 Native Client. Access the following URL to download the Microsoft SQL Server 2008 Native Client ODBC driver for x86:


http://go.microsoft.com/fwlink/?LinkId=163712'

(length=216)

1 =>array

0 =>string'IM002'(length=5)

'SQLSTATE' =>string'IM002'(length=5)

1 =>int0

'code' =>int0

2 =>string'[Microsoft][ODBC 驅動程序管理器] 未發現數據源名稱並且未指定默認驅動程序'(length=71)

'message' =>string'[Microsoft][ODBC 驅動程序管理器] 未發現數據源名稱並且未指定默認驅動程序'(length=71)

❷ window 2003 iis 6 怎麼安裝php7.0正式版

很遺憾的告訴你,window 2003 iis 6 是不能安裝php7的,windows下的php7需要VC14的支持的,但是微軟公司已經停止了windows2003的更新,win2003不能支持VC14,所以也就不支持PHP7了。
windows2003最高支持到php5.4,之後的5.5和5.6都不支持。

❸ 如何關閉 PHP 報錯的 Call Stack

可以同過error_reporting()來設置,但是你的函數用處了,參數不對

❹ 最高哪個php版本支持iis6

PHP5.3x+IIS6完全配置方法,PHP5.3以上版本全新配置IIS方法 FastCGI方式(一...
在IIS6.0下安裝Fastcgi+PHP來運行PHP程序(未裝alpha),終於實現手工配置 IIS 6 下以 FastCGI 跑 PHP
PS:微軟提升PHP在IIS下的性能 FastCGI Extension for IIS6.0% ~& d# L0 v& T1 o& D( U; ^; j
微軟已經和PHP社區共同努力了一年之久,他們終於研發出 能讓IIS更快地解析PHP的方法,用戶們甚至不需要做基準測試就可以明顯感覺到PHP解析速度加快.早在2006年,微軟就和Zend等廠商一起研發 Windows Server下的優化工作,IIS產品組已經公布了IIS6和7的FastCGI擴展,它能讓PHP執行效率更高. PHP一直以來是IIS的尷尬,用PHP擴展的速度跟不上其它服務端(甚至還有一些致命問題例如在某內存地址報錯),而PHP又比ASP.net普及得 多,因此微軟需要在IIS+PHP上突破市場. 微軟去年底發布了ii6的fastcgi模塊,可以免費下載,使用IIS6的您不妨在您的測試環境上試一下,沒准會有驚喜哦! 今天將伺服器上的php支持改成了fastcgi,目前運行穩定.fastcgi的iis模塊可以讓流行的應用框架在iis上支持fastcgi協議以提 供高性能和可用性的訪問服務,fastcgi面向現有的網路伺服器提供高性能的cgi替代標准。具體php安裝方法我記錄下來,其中包括出現的錯誤.
1.下載 FastCGI For IIS6 5 A( c* Z' E" t1 {. t, X
fcgisetup32.msi(FastCGI Extension for IIS 6.0 x86)- B: u, q, t' H" K: S4 t# J
下載:http//www.iis.net/extensions/FastCGI,選擇: x86. ?8 ~& A7 t7 i
# ? i2 s' U& f% K
或者直接下載:http//go.microsoft.com/?linkid=96556962 v$ { j7 X8 O& ~
下載之後,雙擊運行進行安裝。
(FakeCGI調試工具(備用):下載fake.zip http//blogs.iis.net/rickjames/attachment/1563148.ashx )
' @" ^! W# d' F. @# c5 [
安裝後在 C:WINDOWSsystem32inetsrv 目錄下產生了五個文件。如下圖: B; a5 ]* v8 i% Z% b8 j2 q
同時在 IIS 的 「Web 服務擴展」里多了 FastCGI Handler。2 p3 o- h+ q, M/ d7 q
9 A- R; U( Q5 j8 `% W0 K* x- J. {
下載安裝VC9運行庫 即VISUAL C++ 2008
Microsoft Visual C++ 2008 Redistributable Package (x86)下載地址:
點擊這里下載
2.下載 PHP5.3.0 Windows 版
由於PHP5.3的全新特效及改進,原有的isapi方式解析PHP腳本已經不被支持,PHP從5.3.0以後的版本開始使用微軟的fastcgi模式,這是一個更先進的方式,運行速度更快,更穩定!
新版本的PHP5.3通過以往老方法已經不能在IIS上安裝了,下載IIS下的PHP,下載地址http//windows.php.net/download/,(注意IIS下要選擇VC9的版本)解壓到所需目錄,該目錄需要給予
一、如何選擇PHP5.3的VC9版本和VC6版本
VC6版本是使用Visual Studio 6編譯器編譯的,如果你的PHP是用Apache來架設的,那你就選擇VC6版本。
VC9版本是使用Visual Studio 2008編譯器編譯的,如果你的PHP是用IIS來架設的,那你就選擇VC9版本。
二、如何選擇PHP5.3的Thread Safe和Non Thread Safe版本
先從字面意思上理解,Thread Safe是線程安全,執行時會進行線程(Thread)安全檢查,以防止有新要求就啟動新線程的CGI執行方式而耗盡系統資源。Non Thread Safe是非線程安全,在執行時不進行線程(Thread)安全檢查。
再來看PHP的兩種執行方式:ISAPI和FastCGI。
ISAPI執行方式是以DLL動態庫的形式使用,可以在被用戶請求後執行,在處理完一個用戶請求後不會馬上消失,所以需要進行線程安全檢查,這樣來提高程序的執行效率,所以如果是以ISAPI來執行PHP,建議選擇Thread Safe版本;
而FastCGI執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執行效率,所以,如果是以FastCGI來執行PHP,建議選擇Non Thread Safe版本。
user讀取運行許可權,
選擇:PHP 5.3 (5.3.0)' Z* Z0 r% I) ~! F* r4 f+ V. R' b
VC9 x86 Thread Safe (2009-Jun-30 08:52:56) Zip [13.54MB]
sha1:
下載 .zip 格式的版本,解壓縮下載的 php-5.3.0-Win32-VC9-x86.zip 文件,並將其復制到:X:Server_Corephp目錄(你可以根據自己的意願解壓到別的目錄。),並給 IIS 啟動帳戶組或用戶賦予讀取和運行許可權。如下圖:
+ A( b2 ^' Y6 K7 N9 ^8 _
: I" N9 {8 q: R* E' h9 j2 D
3. 注冊 PHP 到 FastCGI % U3 L0 {. m1 @+ @# [
打開 C:WINDOWSsystem32inetsrvfcgiext.ini 文件。
; This is the configuration file for the FastCGI handler for IIS 6.0.: O: q. R4 u+ n9 f
; The FastCGI handler will look for this file in the same directory as
; fcgiext.dll. By default, the FastCGI installer will place this file into
; the %windir%system32inetsrv directory.
- E( a5 J3 l' R% H8 n
我個人的理解是,只要「Web 服務擴展」里的 FastCGI Handler 為允許時,在載入 fcgiext.dll 時,會讀取 fcgiext.ini 配置文件的內容,根據裡面的配置為每個網站提供映射。
在 [Types] 下添加以下配置: ; `9 c; v2 t9 b6 W- `; y' r9 H6 H7 S
[Types]/ K. X# n9 p4 I9 e
8 b, @+ K$ f6 }; c4 w
php=PHP
[PHP]
ExePath=X:Server_CorePHPphp-cgi.exe
這里要用:「」不能用「/」,「php」表示擴展名,「PHP」是配置節名稱,以「[PHP]」定義。 (選你自己的安裝的目錄,下同。)
) U. P; P N: w0 |7 D' u" f& h- e( c8 R
4. 配置 php.ini
將 X:Server_CorePHPphp.ini-proction 復制一個,然後重命名為X:Server_CorePHPphp.ini ! q4 H: N9 X) K. X9 e }( S
找到PHP安裝目錄下的php.ini-proction並改名為php.ini文件,找到下面% n4 k. G8 ?4 N# K! P. B
[Date]7 R _* z$ ?% u' ?& t' v
; Defines the default timezone used by the date functions
; http//php.net/date.timezone
; date.timezone =, E+ d8 |! L0 J; N
更改為並去除前面的「;」:
[Date]( c% H4 u" v2 ~4 h( R4 @4 K
; Defines the default timezone used by the date functions
; http//php.net/date.timezone
date.timezone = Asia/Shanghai Q, @2 J ^9 t s) Q0 J
如果不改以上的date.timezone可能打開網頁會提示500錯誤
找到6 s- j% ?# x$ F, h
; On windows:
; extension_dir = "ext"
改為. R- g. Z+ ~8 " D: O9 g
; On windows:
extension_dir = "X:Server_CorePHPext"
9 V2 g8 k' a- V9 " T" u/ z
找到:fastcgi.impersonate = 1;這句,把前面的;去掉, fastcgi.impersonate = 1
如下圖:
5 P5 K9 c- [ n0 J( D( n
找到:short_open_tag= Off;改為
short_open_tag= On3 n2 X2 Y3 c( v) a# y6 X0 g+ {# ]
8 F0 L5 ]7 h8 w6 z. w
至於php.ini裡面的extension開啟方式,根據自己所需,找到:Windows Extensions 在 Windows Extensions 下方的動態模塊配置中,需要打開以下模塊支持:(去掉模塊配置每行前面的;號即可)比如我的是: 7 v; k* P1 c
;extension=php_bz2.dll: n+ O" R$ Z) _7 [* B( c( D. K
;extension=php_curl.dll
;extension=php_dba.dll' f6 Y* p3 T4 R% q- c4 ]& Z7 G
extension=php_mbstring.dll" C* _: V3 z- F% m
extension=php_exif.dll7 l4 N2 N" e& {
;extension=php_fileinfo.dll7 E( X0 ~7 r; C* F9 j
extension=php_gd2.dll5 x9 ^1 g8 Q5 S" B& F
;extension=php_gettext.dll$ O' S. v1 i2 O$ q. H: O; G
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll. a! M+ _) z: _ P* @
extension=php_ldap.dll
;extension=php_ming.dll
;extension=php_mssql.dll3 g0 O) n8 c6 }9 M9 T7 X
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client
;extension=php_oci8_11g.dll ; Use with Oracle 11g Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll. K0 q3 p6 t, ^# K) i* K
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll. {& w3 O# E$ , U7 j% y$ r1 I
;extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll$ T- g9 D& 7 D3 Z+ n# S% U& M
;extension=php_phar.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll. K9 m+ o) O9 @7 W @0 N
;extension=php_soap.dll p& S8 Q' s+ I, F0 L5 a1 v
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sqlite3.dll0 H5 ^$ l0 V7 g, M
;extension=php_sybase_ct.dll
;extension=php_tidy.dll2 m' J5 Q; A- T9 n
;extension=php_xmlrpc.dll
;extension=php_xsl.dll% h* t/ J" J) a8 t7 Q( I' n5 R9 F$ q
;extension=php_zip.dll
注意最後一個php_zip.dll這個在我下載下來的php5.3.0的ext內是不存在的,所以如果開啟會報錯誤,如果實在需要這個DLL,可以從PHP5.2中拷貝過去(我的不行)
保存 php.ini 文件,並將其復制到 C:Windows ,並刪除 X:Server_CorePHPphp.ini,不刪除有時IIS報500錯!
4 B0 M. ]9 U E3 d1 V
5. 配置網站 q% W* / n) c' `- Y
; t4 X! x( V, T! [) [2 |4 [
打開IIS管理器,網站上點右鍵-屬性-主目錄-配置-添加,配置如下圖" j9 W, {" c4 S% @2 I1 x
& Q6 _: a8 g, m q/ R, R
# ^% v* ?# G6 |
可執行文件路徑:C:WINDOWSsystem32inetsrvfcgiext.dll
6.相關許可權配置
C:WINDOWSsystem32inetsrvfcgiext.dll 的許可權,NETWORK_SERVICE和IUSR_***(Internet來賓賬戶)的可讀和運行許可權。
PHP安裝目錄的許可權,NETWORK_SERVICE的讀和運行許可權
網站所在目錄的許可權,IUSR_***(Internet來賓賬戶)的讀取和運行權,需要寫入的目錄單獨再給寫入權
7. 寫個 php 測試下吧
" m: |: h# L' b% y; }
修改完在IIS上或者命令提示符運行iisreset命令重啟IIS服務,這步很重要!
( M6 w6 {! R& y ~4 F
測試是否安裝成功!
建立一個網站,phpinfo.php文件內容為:/ o+ p' n$ t8 T+ O( b2 s P. P
文件:phpinfo.php
<?php
phpinfo();
?>
6 j- O: M6 | [, p/ p t
看到類似以下效果說明你的伺服器可以跑 php 了。

❺ php 版本是32位還是64位

看你的操作系統是多少位 32位操作系統就安裝32位的PHP 64位系統即可以安裝32位也可以安裝64位的PHP 還有PHP需要VC庫 比如VC9和VC11 這個也是區分32和64位的 PHP也得和VC的版本相對應

閱讀全文

與phpvc964相關的資料

熱點內容
雅思聽力807詞彙pdf 瀏覽:895
黃豆私人加密 瀏覽:192
java分鍾轉換小時 瀏覽:245
易語言伺服器如何提高 瀏覽:591
網站主機伺服器地址查看 瀏覽:859
演算法學不會能當程序員嗎 瀏覽:119
程序員技術交流研究 瀏覽:814
javaresponse文件 瀏覽:734
linuxrar壓縮文件夾 瀏覽:218
魅藍手機連接不上伺服器怎麼回事 瀏覽:379
工行app怎麼改已綁定銀行卡 瀏覽:533
oppo晶元程序員 瀏覽:602
oppok3應用怎麼加密 瀏覽:327
電腦軟盤怎麼加密碼 瀏覽:815
伺服器光交換機有什麼用 瀏覽:708
app上怎麼拍蛙小俠 瀏覽:217
志高聊天app怎麼下載 瀏覽:635
郵政app怎麼不能掃付款碼 瀏覽:559
筆記本電腦雙理由配置命令 瀏覽:65
拿著文件夾怎麼畫 瀏覽:877