php掛載sql,php掛載redisso擴展不成功

本文目錄一覽:

如何用php連接sql server數據庫?

我用的PHP版本是php5.6.12,mssql數據庫版本為2008

兩種途徑:

1、直接連接

$servname=”CAPTAINHERO567″;

$conninfo=array( “Database”=”netdata”, “UID”=”lxz2005”, “PWD”=”831140”);

$conn=sqlsrv_connect($servname, $conninfo);

$sql=”select * from Pinfo”;

$db=sqlsrv_query($conn, $sql);

while($row=sqlsrv_fetch_array($db))

{

echo(“div”.iconv(“GB2312″,”UTF-8”,$row[“Pname”]).”/div”);

}

2、使用PDO抽象數據層連接

$hostname = “192.168.1.100”;

$dbname = “Northwind”;

$username = “sa”;

$pwd = “pwd100”;

$dsn=”sqlsrv:Server=$hostname;database=$dbname”;

$conn = new PDO ($dsn,$username,$pwd);

$conn-setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);

echo “mssql database connnection sucessed!”;

PHP如何連接SQL sever 2000數據庫?

class

connCls{

private

$host;

//主機名

private

$name;

//用戶名

private

$pass;

//密碼

private

$db;

//數據庫名

private

$type;

//編碼類型

如:GBK,UTF-8

public

$sql;

//sql語句

public

$tbl;

//表

public

$n;

//表中的字段

public

$v;

//表中字段的值

public

$id;

//獲取的id字段

public

$result=1;//結果集

public

$page;

//當前頁

function

__construct($host,$name,$pass,$db,$type){

//構造函數初始化

$this-host=$host;

$this-name=$name;

$this-pass=$pass;

$this-db=$db;

$this-type=$type;

$this-connect();

//調用連接數據庫函數

}

//———————————————————————————

function

connect(){

//定義連接數據庫函數

$link=@mysql_connect($this-host,$this-name,$this-pass)or

die(“連接數據源失敗!錯誤原因:”.mysql_error());

@mysql_select_db($this-db,$link)or

die(“抱歉,您選擇的數據庫”.$this-db.”不存在!!!”);

mysql_query(“set

names

‘$this-type'”);

//防止出現亂碼

}

//———————————————————————————

function

query($sql){

//定義執行sql語句函數

$this-connect();

$rs=mysql_query($sql);

//執行給定的sql語句

return

$rs;

//返回結果集

}

如何用PHP連接SQL Server

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.\n”;

}else{

echo “Connection could not be established.\n”;

die( var_dump(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: ‘(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: ‘(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)

. . . .

解決方法:需要安裝SQL Server 2008 Native Client ODBC Driver,下載安裝文件sqlncli.msi,安裝後就可以了。

以上就是php連接sql server的方法,希望對大家解決類似問題有所幫助。

php怎麼連接sql server 2012

一、環境

php5.2.5

sqlserver2008

win7

二、配置php

1、打開php.in將extension=php_mssql.dll的注釋符號去掉。

2、打開php.in將mssql.secure_connection

=

off改為on。

3、從5.2開始,php就不再提供mssql.dll了,所以要php連接sql

server

2005/2008/2012必須要使用微軟提供的sql

server

for

php

2.0/3.0

這個文件可以上微軟官網下載(sqlsrv20.exe/sqlsrv30.exe),然後執行到wamp\php\ext文件夾下

打開php.ini文件

在extensions後面加上:

extension=php_sqlsrv_53_ts.dll

extension=php_pdo_sqlsrv_53_ts.dll

註:52代表php5.2

假如是php5.3就拷貝php_sqlsrv_53_ts_vc6.dll

關於vc6和vc9的區別

vc6

版本是使用

visual

studio

6

編譯器編譯的,如果你是在windows下使用apache+php的,請選擇vc6版本。

vc9

版本是使用

visual

studio

2008

編譯器編譯的,如果你是在windows下使用iis+php的,請選擇vc9版本。

php連接mssql的方法 怎樣實現php連接mssql

php不論是連接什麼數據庫,得首先保證在php.ini中相關數據庫的擴展是打開的,如

;extension

=

mysql

得把前面的;去掉才表明mysql數據庫的擴展打開了,才能使用,ms

sql也同理。

1。php連接mssql

$conn=mssql_connect(“實例名或者服務器ip”,”用戶名”,”密碼”);

2。php連接mysql

$conn=mysql_connect(“實例名或者服務器ip”,”用戶名”,”密碼”);

從連接中,你也可以看出來,其實不論php和什麼數據庫相連,差別都很小,只是函數名上的差別,如果你進一步使用的話,你也可以發現對數據庫的修改、手稿、更新等操作也只是函數名的差別,通一通百。

php 5.6怎麼連接sql2005

前段時間剛解決這個問題! (這裡有個php5.4的連接方法,可以供參考,php5.6的只需要下載響應的sqlserver擴展)

1、下載微軟提供的dll

地址:

我下的SQLSRV30.EXE,這個exe是一個自解壓文件,下載後雙擊選路徑解壓會得到一堆dll和說明文件。(此處特別注意一下:官網下載的只支持32位的操作系統,如果你的操作系統是64位的,會報錯。筆者之前在這裡堵了好長時間!)

2、將對應自己php版本的dll文件copy到php ext目錄下

ts是指線程安全(ThreadSafe),nts是指線程不安全,得根據安裝的php版本來選擇,如果不確定,就分別嘗試一下;

我用的php5.4,就將php_sqlsrv_54_ts.dll複製到ext目錄下,

例如:D:\Program Files\PHP 5.4\ext

3、修改php.ini文件

增加一行: extension=php_sqlsrv_54_ts.dll

修改一行 : mssql.secure_connection = Off改為on

4、重啟apache

5、配置MS SQL Server2005

a、打開 SQL Server 配置管理器:SQL Server Configuration Manager,打開協議;

b、啟用“Named Pipes”和“TCP/IP”,默認是已禁用的;

c、右鍵點擊“TCP/IP”,選擇“屬性”,選擇“IP地址”,在”ALLIP“下的“TCP動態端口”後填寫1433;

d、重啟SQL Server。

備註:記得開啟sa登錄。

6、安裝Microsoft SQL Server 2012 Native Client.msi

根據自己系統在PHP服務器所在機器安裝Microsoft SQL Server 2012 Native Client.msi,分X64和X86的。( )

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/251049.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-13 13:32
下一篇 2024-12-13 13:32

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台服務器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • PHP數組去重詳解

    一、array_unique函數 array_unique是php中常用的數組去重函數,它基於值來判斷元素是否重複,具體使用方法如下: $array = array(‘a’, ‘b…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24
  • php擴展庫初探

    一、什麼是php擴展庫? PHP擴展庫(PHP extension)是一些用C語言編寫的動態鏈接庫,用於擴展PHP的功能。PHP擴展庫使得PHP可以與各種數據庫系統相連、SMTP、…

    編程 2025-04-23

發表回復

登錄後才能評論