Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php 连接 sqlserver

php 连接 sqlserver

WBOY
WBOYasal
2016-06-23 14:34:231113semak imbas

引用:http://hi.baidu.com/coyeah/blog/item/c8ff20fab1f25d17a9d31129.html

一:环境搭建

sqlserver2005或者sqlserver2008

请先到此处下载驱动

http://www.microsoft.com/downloads/details.aspx?FamilyId=61BF87E0-D031-466B-B09A-6597C21A2E2A&displaylang=en

下载后解压文件

配置:

1.将解压的php_sqlsrv.dll 和 php_sqlsrv_ts.dll 放到PHP的扩展目录中(PHP\EXT)。
2.编辑php.ini文件(在windows文件夹下),添加以下扩展: 
extension=php_sqlsrv.dll
extension=php_sqlsrv_ts.dll
3.去掉;extension=php_mssql.dll前的分号

       注意=号右边是解开过后的扩展的两个驱动的文件名,必须保证此文件在配置好的扩展目录内,而且需要注意此处最初不需要带";"。";"在php.ini文件里面,首部分号的含义代表行注释,如果有分号的时候,服务器在读取配置的时候会略过分号这一行不去读取相关内容,只有没有加分号的行才会被服务器读取。

  这里解释一下,两个驱动程序的区别在于,php_sqlsrv_ts.dll是线程安全的驱动,如果服务器本身的环境是使用的php5ts.dll,就是用这个驱动;php_sqlsrv.dll不是线程 安全的,这种情况下,服务器运行PHP应该加载的是php5.dll

4测试配置环境:

  整个过程操作好了过后,写一个test.php测试一下配置的相关环境,测试代码如下:


phpinfo();

?>

 若出现以下图片证明环境已经配置好了:

二:连接测试

       SQL Server常用的有两种认证方式,一种是本地系统账户认证(Windows Authentication ),一种是使用用户名和密码(SQL Server Authentication ),第二种认证方式必须启用SQL Server的混合模式。

  1.Windows Authentication连接部分代码段:

       
             $serverName = "(local)";

             $connectionInfo = array("Database"=>"TestingInfo","ConnectionPooling"=>false);

              $conn = sqlsrv_connect( $serverName,$connectionInfo);

            if(! $conn){

                      echo "o no!!!!!";

                      die( print_r( sqlsrv_errors(), true));

             }else{

                     echo "yes done";
            }

        ?>

  2.SQL Server Authentication连接部分代码段:

      
             $serverName = "(local)";

             $uid = "dbusername";//数据库用户名

           $pwd = "dbuserpass";//数据库用户密码

             //下面的Database为数据库名

             $connectionInfo =   array("UID"=>$uid,"PWD"=>$pwd,"Database"=>"dbname");

             $conn = sqlsrv_connect( $serverName,$connectionInfo);

              if(! $conn){

                   echo "o no!!!!!!!";

                    die( print_r( sqlsrv_errors(), true));

               }else{

                      echo "yes done";

               }

      ?>

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:PHP __call()方法Artikel seterusnya:Using WCF Services with PHP