php連接sql
我用的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("
".iconv("gb2312","utf-8",$row["pname"])."
");
}
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鏈接sqlserve2000資料庫
配置php
打開php.in將extension=php_mssql.dll的注釋符號去掉
打開php.in將mssql.secure_connection = Off改為on。
將php_mssql.dll拷貝到php.in中extension_dir 指定的目錄或者系統system32目錄下。(php_mssql.dll在php的壓縮安裝包中有)。
以上步驟完成後需要重啟apache。
使用以下方式連接SQL Server 2000:
//鏈接資料庫
$conn=mssql_connect('localhost','sa','123456');
mssql_select_db('gu_dde',$conn);
//query語句
$Query="select*fromdde_top";
$AdminResult=mssql_query($Query);
//輸出結果
$Num=mssql_num_rows($AdminResult);
for($i=0;$i<$Num;$i++)
{
$Row=mssql_fetch_array($AdminResult);
echo($Row[1]);
echo("");
}
?>
望採納 Thx
Ⅲ php 怎麼連接sql server資料庫
用PDO啊
<?php
$dbms='mysql'; //資料庫類型
$host='localhost'; //資料庫主機名
$dbName='test'; //使用的資料庫
$user='root'; //資料庫連接用戶名
$pass=''; //對應的密碼
$dsn="$dbms:host=$host;dbname=$dbName";
try {
$dbh = new PDO($dsn, $user, $pass); //初始化一個PDO對象
echo "連接成功<br/>";
/*你還可以進行一次搜索操作
foreach ($dbh->query('SELECT * from FOO') as $row) {
print_r($row); //你可以用 echo($GLOBAL); 來看到這些值
}
*/
$dbh = null;
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//默認這個不是長連接,如果需要資料庫長連接,需要最後加一個參數:array(PDO::ATTR_PERSISTENT => true) 變成這樣:
$db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true));
?>
Ⅳ php怎麼樣連接sql資料庫
1、軟體配置
Win7 64 +wampserver2.2d-x32+SQL Server 2008 R2資料庫,wamp2.2中的php版本是5.3.10。
Php環境也可以換成php+apache。
2、支持連接MySQL Server配置
php版本5.3以前,有php_mssql功能,可以使用,但是5.3及以後的版本不支持。
2.1、php連接mssql設置(php5.3以前版本)
(1)、打開php.ini,將
;extension=php_mssql.dll前面的分號(;)去掉,然後重啟 Apache。如果不行的話,進行第2步。
(2)檢查一下你的php安裝目錄下的ext下面有沒有php_mssql.dll存在,如果沒有,從www.php.net重新下載一個php安裝,要下載那個壓縮包的才是最完整的。
如果ext目錄下已經有了php_mssql.dll,那麼你需要打開php.ini,找到
extension_dir = "./ext"
這一句(或者類似的,不一定是"./ext",查找"extension_dir"即可),然後把"./ext"修改為你的php安裝目錄的ext目錄的完整路徑,比如"c:/php/ext",或者"c:/program files/php/ext"這樣。然後再次重啟 Apache。如果還是不行的話,可能就需要第3步了。
(3)把 php 目錄下的 ntwdblib.dll 和 php_mssql.dll 復制到 system32的系統目錄中去,然後重起Apache。
(4)然後就可以連接MSSQL,並進行一些操作了。連接例子如下:
2.2、php連接sqlsrv(php5.3以及以上版本)
(1)、下載Microsoft Drivers forPHPfor SQL Server,官方下載地址:http://www.microsoft.com/en-us/download/details.aspx?id=20098,我使用的是SQLSRV2.0。
(2)、解壓下載下來的文件將php_pdo_sqlsrv_53_ts_vc9.dll文件和php_sqlsrv_53_ts_vc9.dll文件復制到php安裝目錄下的ext文件夾中。此處根據版本不同使用的文件不同。
(3)、在php.ini中添加
extension=php_sqlsrv_53_ts_vc9.dll
extension=php_pdo_sqlsrv_53_ts_vc9.dll
到很多;extension=***.dll語句後面,注意extension_dir 指向的位置是否正確。
(4)、重啟apache,然後訪問http://apache訪問地址/?Phpinfo=1,出現下面圖片中的內容,則代表配置正確。
(5)、寫測試代碼,測試代碼如下:
(6)、上面完成之後,測試代碼的時候會出現連接失敗,因為沒有安裝sql server nation client ,本地客戶端,去下載合適的客戶端,我使用的是Microsoft? SQL Server? 2012 Native Client,下載地址:
(7)、安裝完成之後,在重新啟動apache,然後訪問就可以連接成功了。
(8)、注意:在php.ini文件所在的文件夾中必須要有ntwdblib.dll文件存在。
Ⅳ 2022年phpstudy8.1可以連接sql server資料庫嗎
您好,不可以連接,默認沒有提供連接sql server的資料庫管理工具,只提供了sqlite和mysql的工具。
Ⅵ 幾種常用PHP連接資料庫的代碼示例
PHP連接資料庫之PHP連接MYSQL資料庫代碼
PHP連接資料庫之PHP連接ACCESS資料庫代碼方法
PHP連接資料庫之PHP連接MS SQL資料庫代碼方法
安裝SQL伺服器並添加PHP的MSSQL擴展
使用以下代碼連接並測試
PHP連接資料庫之PHP連接Oracle資料庫
PHP提供了兩套函數與Oracle連接 分別是ORA_和OCI函數 其中ORA_函數略顯陳舊 OCI函數更新據說更好一些 兩者的使用語法幾乎相差無幾 你的PHP安裝選項應該可以支持兩者的使用
Ⅶ 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 連接sql server 2000的問題
$username=$_POST["yhm"];
相當於asp中的request.form()
$userpwd=$_POST["mima"];
這兩句代碼是取你提交的表單中名稱為yhm和mima的值的,就是你在輸入框中輸入然後提交的值,不同伏搭的頁面之間傳遞數值就用這個,$_POST是取表單中的,還有$_GET是取地址欄中參數的
$conn=mssql_connect('.','sa','');
mssql_select_db("student",$conn);
這兩句才是連接打開SQL數據消伏庫用的
$result=mssql_query("select
*
from
login
where
username='".$username."'and
userpwd='".$userpwd."'",$conn);
這一句就是查詢資料庫裡面你提交拿廳攜的用戶名和密碼是否存在
mssql_fetch_row($result)
這一句就是把查詢的結果放到數組里,如果用戶名和密碼存在就為真,否則就為假
本人也是剛學PHP不久,就知道這么多了
Ⅸ 求大神詳細講解php連接mssql
為了能讓PHP連接MSSQL,系統需要安裝MSSQL,PHP,且在PHP.ini中的配置中,將 ;extension=php_mssql.dll前面的;去掉
1.連接MSSQL
$conn=mssql_connect("實例名或者伺服器IP","用戶名","密碼");
//測試連接
if($conn)
{
echo "連接成功";
}
2.選擇要連接的資料庫
mssql_select_db("dbname");
3.執行查詢
$rs = mssql_query("select top 1 id,username from tbname",$conn);
// 或者直接執行update,insert等語句,可以不用為返回結果賦值
mssql_query("update tbname set username='niunv' where id=1");
4.獲取記錄集行數
echo mssql_num_rows($rs);
5.獲取記錄集
if($row=mssql_fetch_array($rs))
{
$id = $row[0];//獲取ID欄位值
$username = $row[1];//獲取username欄位值
}
6.獲取新增記錄的ID
將id欄位設置為IDENTITY欄位,執行insert語句以後,就會產生一個
@@IDENTITY 全局變數值,查詢出來就是最後一條新增記錄的ID了.
mssql_query("insert into tbname(username) values ('nv')",$conn);
$rs = mssql_query("select @@IDENTITY as id",$conn);
if($row=mssql_fetch_array($rs))
{
echo $row[0];
}
7.釋放記錄集
mssql_free_result($rs);
8.關閉連接
mssql_close($conn);
注:用PHP操作MSSQL比在ASP連接MYSQL要簡單,所以,當需要MSSQL與MYSQL並存時,用PHP連接MSSQL來操作MYSQL與MSSQL並存比較簡單好用.如果是ASP連接MYSQL,需要安裝一個MYSQL驅動,默認windows的ODBC沒有安裝,很遺憾...
在web伺服器上至少安裝了mssql的客戶端
打開php.ini把;extension=php_mssql.dll
前面的分號去掉
有必要話:需要制定extension_dir
推薦使用 php<=4.0.9
<=5.0.3目前 我還沒有連接成功過4.010和 5.0.3
資料庫的 連接分頁可以到phpe.net上獲取到相應的class
下面是我修改的 一個class
<?php
/**
*mssql 資料庫連接類
**/
class SQL{
var $server;
var $userName;
var $passWord;
var $dataBase;
var $linkID = 0;
var $queryResult;
var $lastInsertID;
var $pageNum = 0;//分頁用---共有幾條數據
var $ER;
/**
*構造函數
**/
function SQL($Server='',$UserName='',$PassWord='',$DataBase=''){
$this->server = $Server;
$this->userName = $UserName;
$this->passWord = $PassWord;
$this->dataBase = $DataBase;
}
/**
*資料庫連接
**/
function db_connect(){
$this->linkID = mssql_pconnect($this->server,$this->userName,$this->passWord);
if(!$this->linkID){
$this->ER = "db_connect($this->server,$this->userName,$this->passWord) error";
return 0;
}
if (!mssql_select_db($this->dataBase,$this->linkID)) {
$this->ER = "mssql_select_db($this->dataBase,$this->lastInsertID) error";
return 0;
}
return $this->linkID;
}
/**public
* function: Check the database, if exist then select
* exist: return 1
* not exist: return 0
*/
function selectDatabase(){
if(mssql_select_db($this->dataBase))
return 1;
else
return 0;
}
/**
*數據操作
**/
function query($Str){
if ($this->linkID == 0) {
$this->ER = "資料庫還沒有連接!!";
}
$this->queryResult = mssql_query($Str);
//$this->queryResult = mssql_query($Str,$this->linkID);
if (!$this->queryResult) {
$this->ER = "$Str.沒有操作成功,query error!!";
return 0;//****************對於php 4.3.9以上版本的錯誤用1
}
return $this->queryResult;
}
/**
*數據獲取
**/
function fetch_array($result){
if($result != "") $this->queryResult = $result;
$rec =mssql_fetch_array($this->queryResult);
if(is_array($rec)){
return $rec;
}
//$this->ER = "沒有獲取數據!";
return 0;
}
/**public
* function: Free the Query Result
* success return 1
* failed: return 0
*/
function freeResult($result=""){
if($result != "") $this->queryResult = $result;
return mssql_free_result($this->queryResult);
}
/**
*獲取影響的的行數
*獲取操作過的行數
**/
function num_rows($result=""){
if ($result != "") {
$this->queryResult = $result;
$row = mssql_num_rows($this->queryResult);
return $row;
}
}
/**
*獲取查詢結果---多個
**/
function result_ar($str=''){
if (empty($str)) {
return 0;
}
$back = array();
$this->queryResult = $this->query($str);
while ($row = $this->fetch_array($this->queryResult)) {
$back[] = $row;
}
return $back;
}
/**
*資料庫信息分頁
*$Result 資料庫操作
*str ==sql語句
*page ==第幾頁
*showNum ==顯示幾頁
*/
function page($Str,$Page=0,$ShowNum=5){
$back = array();//返回數據
$maxNum = 0;
if ($Str == "") {
$this->ER = "沒有數據";
return 0;
}
$this->queryResult = $this->query($Str);
if($this->queryResult){
if($Page==""){
$nopa=0;
}else{
$nopa = ($Page-1)*$ShowNum;
if ($nopa<0) {
$nopa = 0;
}
}
$maxNum=$this->num_rows($this->queryResult);
$k=0;
$i=0;
$dd=$this->fetch_array($this->queryResult);
while($dd&&$nopa<=$maxNum&&$i<$ShowNum){
if($nopa >= $maxNum) $nopa = $maxNum;
mssql_data_seek($this->queryResult,$nopa);
$row=$this->fetch_array($this->queryResult);
$nopa++;
$i++;
$back[] = $row;
if ($nopa >=$maxNum) {
break;
}
}
}
$this->pageNum = $maxNum;
return $back;
}
/**
*分頁的html頁碼
*/
function page_html($DataNum=0,$Page=1,$ShowNum=3,$web,$Post=''){
if ($DataNum == 0) {
$back = "沒有要查詢的數據";
}else {
if ($ShowNum<=0) {
$ShowNum = 3;
}
if ($Page<=0) {
$Page = 1;
}
if (empty($web)) {
$web = "#";
}
$pageNum = ceil($DataNum/$ShowNum);
if ($Page <= 1) {
$top = "首頁<<";
}else {
$top = "<a href='".$web."?page=0&".$Post."' target='_self'>首頁<< </a>";
}
if ($Page !==1) {
$upPage = "<a href='".$web."?page=".($Page-1)."&".$Post."' target='_self'>上一頁</a>";
}else {
$upPage = "上一頁";
}
if ($Page < $pageNum) {
$downPage = "<a href='".$web."?page=".($Page+1)."&".$Post."' target='_self'>下一頁</a>";
}else {
$downPage = "下一頁";
}
if ($Page == $pageNum) {
$foot = ">>尾頁";
}else {
$foot = "<a href='".$web."?page=".$pageNum."&".$Post."' target='_self'> >>尾頁</a>";
}
$back = <<<EOT
共 $pageNum 頁
第 $Page/$pageNum 頁 $top $upPage $downPage $foot
EOT;
}
return $back;
}
}//end class
?>
以上就是PHP連接MSSQL方法的總結,
Ⅹ 如何讓php5.5連接上mssql
PHP 查看是否支持MSSQL的方法:
檢測是否存在mssql_connect函數;
<?php
if (function_exists("mssql_connect")){
echo 'PHP環境支持MSSQL!';
}else{
echo '環境不支持MSSQL資料庫!';
}
查看phpinfo中mssql配置項是否開啟,如果存在mssql配置項,則支持;否則,不支持。;
配置php連接mssql:
開啟mssql擴展;打開php.ini配置文件,去掉extension=php_pdo_mssql.dll和extension=php_mssql.dll前面的「;」然後重啟apache伺服器;
將PHP目錄下ext目錄下的php_mssql.dll和ntwdblib.dll,復制到WINDOWS/system32文件夾下,然後重啟apache即可。