目前php连接数据库的方法很多,但是那主要是针对于mysql,由于经常是在windows上工作,所以便把数据库选择了sqlserver,在采用sqlserver进行数据库连接的时候,特别容易出现权限的问题; 注:由于“Microsoft Drivers for PHP for SQL Server”驱动程序目前只有32位版,所以如果是使用sqlserver数据库的朋友,不建议使用php 64位,否则会导致无法连接 sqlserver数据库的问题!为了方便大家使用,特价配置好(sqlserver)的php放到百度云,方便大家使用,百度云地址:链接:http://pan.baidu.com/s/1i3s1QqL密码:2zeq 方便他人亦是方便自己,如果觉得还行就点下下边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!
工具/原料
windows 8 x64
IIS
Visual Studio 2015 Enterprise RC
PHP for Visual Studio
Microsoft SQL Server 2014 sp1
打开数据库权限
1、打开"C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2014\Configuration Tools\SQL Server 2014 Configuration Manager"
2、修改 Named Pipes的Status为 Enable

3、修改 TCP/IP->IP Addresses->IP All①清除 TCP Dynamic Ports里面的内容;②修改 TCP Port的值为 1433;具体的内容如下:

4、修改 TCP/IP->IP Addresses->IP12(自己连接数据所使用的ip地址,本机测试采用的是127.0.0.1)①修改 Active为 Yes;②修改 Enabled为 Yes;③清除 TCP Dynamic Ports里面的内容;④修改 TCP Port的值为 1433;具体的内容如下:

5、打开&孥恶膈茯quot;C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2014\SQL Server 2014 Management Studio"①输入 Server name:"127.0.0.1,1433"② Authentication:SQL Server Authentication③用户名:sa(超级管理员)④密码:****具体的效果如下图

6、点击连接后,如果设置成功,效果应该如下图所示:至此数据库的权限设置完毕;

添加PHP对SQL SERVER的支持
1、新建一个php文件,输入内容:<?phpecho phpinfo();?>运行后,可以查看到如下数据:①PHP的版本是 5.4.24;②属于线程非安全版;


2、在微软官网去下载最新的“Microsoft Drivers for PHP for SQL Server”:https://www.microsoft.com/en-us/download/details.aspx?id=20098并 解压开后的效果如下图所示:

3、由于本机的php的版本是5.4的,并且是非线程安全的,所以我这里需要的是:php_sqlsrv_54_nts.dllphp忧溲枷茫_pdo_sqlsrv_54_nts.dll并将它们拷贝到php根目录下的ext目录下面如:我的目录是“C:\Program Files (x86)\IIS Express\PHP\v5.4\ext”注:其中的54表示的是php的版本号,nts表示的是非线程安全,ts表示的是线程安全,不同的php版本需要不同的sqlserver库

4、打开php根目录下面的php.ini文件;①去掉”extension=php_pdo.dll“前面的";"②在下面添加”extension=php_pdo_sqlsrv_54_nts.dll“;”extension=php_sqlsrv_54_nts.dll“;并保存

验证php连接数据库
1、由于修改的地方较多,所以建议重新启动电脑后继续下面的操作;
2、新建一个php工程,添加如下的内容:<?phptry { $dbName = "sqlsrv:Server=127.0.0.1,143泌驾台佐3;Database=dbPHP";$dbUser = "sa";$dbPassword = "fuke";$db = new PDO($dbName, $dbUser, $dbPassword); if ($db){echo "database connect succeed.<br />"; }}catch (PDOException $e){$content = iconv("UTF-8","gbk",$e->getMessage()); echo $content . "<br />";}echo "Hello World!";}?>运行后的效果如下:

3、至此php通过pdo的方式连接sqlserver便成功了;方便他人亦是方便自己,如果觉得还行就点下下边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!