`
hudeyong926
  • 浏览: 2034931 次
  • 来自: 武汉
社区版块
存档分类
最新评论

PHP5连接MSSQL的方法

阅读更多

使用以下方式连接MS SQL Server 2005:
mssql_connect('localhost,1433 ', USERNAME, PASSWORD);

 

为了php连接sql2005 ,我在网络上找了一大堆资料在我的csdn博客中.晚上3:05分时候终于搞定了

php连接sql2005的问题,现在整合,同时把FAQ整合上.

我前面写的教程:

连接前配置系统:

1.检查文件 php\ntwdblib.dll 默认下面有一个,将php目录下边的ntwdblib.dll 复制到系统windows 目录,不能连接再替换.

2.配置php

a、打开php.in将extension=php_mssql.dll的注释符号去掉。

image

b、打开php.in将mssql.secure_connection = Off改为on。

image

以上步骤完成后需要重启apache。

注意:实际使用中发现 如果通过php压缩文件手工安装php到iis下,必须重启机器而不仅仅是iis。

3.配置sqlserver
a. 运行 SQL Server 配置管理器:SQL Server Configuration Manager,打开协议 Protocols
b. 允许命名管道 "named pipes" 和 "tcp/ip"
c. 右键点击 "tcp/ip",打开属性 Properties 标签 "IP addresses"
d. 在 TCP 动态端口 "TCP Dynamic Ports" 填入1433
e. 重启 SQL Server

----------------------------------------------------------------------------------------------- 
4.使用以下方式连接MS SQL Server 2005:

<?php
$link=mssql_connect('localhost','sa','123456');
if(!$link) echo "Error !";
else echo "Ok!";
mssql_close();        	   
?>

输入http://127.0.0.1


5.FAQ常见问题:

1报错:

Fatal error : Call to undefined function mssql_connect()

解决:

使用MSSQL_系列函数
要使用这两种都需要在php.ini进行设定: 
   (1)允许 DCOM,需要将php.ini中的 ;com.allow_dcom=TRUE前的分号";"去掉。
   (2)使用MSSQL扩展,需要php.ini中的 ;extension=php_mssql.dll前的分号";"去掉。(关键) 
   (3)确认extension_dir为正确路径,以本机为例:extension_dir = "c:\AppServ5.2.6\php\ext"。 
   (4)如果仍然机器报错说找不到c:\AppServ5.2.6\php\ext\php_mssql.dll但明明存在这个文件。
   解决方法:将php_mssql.dll,ntwdblib.dll拷贝到系统目录\system32下重启测试。。
    (注:上面两个dll文件不在相同目录下,我的为c:\AppServ5.2.6\php\ext\php_mssql.dll;c:\AppServ5.2.6\php\ntwdblib.dll)
    另外设置好了后记得重启服务器哦。

2.mssql_connect() Unable to connect to server

确认SQLServer2005服务器正常.检查 TCP/IP已经启用

image

同时右键查看属性:

image

已经启用是否选择是

确认服务器正确之后,再确认ntwdblib.dll 文件位置是否放到了 c:\windows下,同时要保证ntwdblib.dll 这个文件的版本和sqlserver的版本对应 :

下面是对应关系:

2.ntwdblib.dll 版本为 2000.2.8.0 是 对应 SqlServer2000(这个是网络查资料和猜测,没装2000)

2.ntwdblib.dll 版本为 2000.80.194.0 是 对应 SqlServer2005(这个是用实验证明可以用,本人就是用笔记本装了2005)

3.ntwdblib.dll 版本为 2000.80.2039 是 对应 SqlServer2008(这个是猜测没有装2008)

 

6.其他问题:

如果php apache Sql Server2000都在同一台机器上,访问基本没有问题了。

如 果Sql Server2000和php机器是分离的,需要确认ping sqlserver所在机器的机器名能通,如过不通,修改php所在机器的\system32\drivers\etc下的hosts文件,增加一行 sqlserver所在机器的机器ip   sqlserver所在机器的机器名字。

如果还是无法访问,需要确认php所在的机器有无暗转mdac。要不索性安装一下sqlserver的客户端好了。

解决问题如下:

1.下载两个文件 php_mssql.dll 和 ntwdblib.dll

php_mssql.dll 如果这个没有复制到c:\windows下,就很容易出现

 

ntwdblib2093.dll 这个文件要注意版本,不然后面搞得很郁闷.

分享到:
评论

相关推荐

    php 连接mysql类

    Php连接mysql类。用法如下: 加入数据库连接类文件和配置文件 require_once ('DBConnect.class.php'); require_once ('dbconfig.php'); $dbconnect = new DBConnect ( CP_CONN_HOST, CP_CONN_USER, CP_CONN_PASS, ...

    Android连接MySQL方法

    综上所述,这个"Android连接MySQL方法"的项目涵盖了Android与服务器的网络通信、PHP中介、数据解析等多个关键知识点,对于理解Android网络编程和数据库交互具有实践指导意义。通过学习和研究这个源码,开发者可以更...

    PHP连接调用mysql数据库的方法.doc

    PHP 连接调用 MySQL 数据库的方法 本文将详细介绍 PHP 连接调用 MySQL 数据库的方法,包括如何使用相关函数连接数据库,创建数据库,选择缺省数据库,执行查询语句,取出查询结果,获取结果集信息,关闭数据库连接...

    Mac os 解决无法使用localhost连接mysql问题

    - PHP中使用localhost连接Mysql不成功的解决方法 - 解决MySQL无法远程连接的方法 - MySQL出现SQL Error (2013)连接错误的解决方法 - KB967723造成MySQL频繁无法连接 - mysql服务启动却连接不上的解决方法 - mysql ...

    PHP连接MySQL

    PHP连接MySQL

    整理 原生PHP连接MySQL的模板

    原生PHP连接MySQL的模板是开发者常用于实现PHP与MySQL交互的基础框架。下面我们将深入探讨这个主题。 首先,让我们了解如何使用原生PHP连接到MySQL数据库。这通常涉及以下步骤: 1. **建立连接**:使用`mysqli_...

    CentOS LAMP环境搭建和测试php与mysql的连接

    本文将详细介绍如何在CentOS系统上搭建LAMP环境,并测试PHP与MySQL的连接。 首先,我们要确保安装的是纯净的CentOS系统,避免预装的不必要的组件。在安装过程中,不选择Web服务器选项,因为后续我们会手动进行编译...

    php与mysql连接函数

    总结,以上是关于PHP连接MySQL数据库的基本操作介绍。需要注意的是,这些函数属于旧版的MySQL扩展(`mysql_*`),已经被废弃,并在PHP 7.2版本之后完全移除。因此,在现代PHP应用中,建议使用`mysqli`或`PDO`扩展来...

    php5-php7通用连接mysql数据库

    php5-php7通用连接mysql数据库 php5-php7通用连接mysql数据库 php5-php7通用连接mysql数据库 php5-php7通用连接mysql数据库 php5-php7通用连接mysql数据库

    php与mysql连接代码

    下面将详细阐述如何使用PHP连接到MySQL数据库。 1. **建立连接**: 在PHP中,我们可以使用`mysqli_connect()`或`PDO_MYSQL`函数来连接到MySQL服务器。例如,使用`mysqli_connect()`的代码如下: ```php $...

    PHP 5 + MYSQL 5 Web应用开发宝典

    3. **PHP与MySQL的交互**:探讨如何在PHP中连接和操作MySQL数据库,使用PHP的MySQL扩展(如mysqli或PDO)进行数据的增删改查,以及预编译语句和事务处理。 4. **Web应用框架**:可能提到了流行的PHP框架,如Laravel...

    php连接mysql数据库代码

    用来连接mysql数据库,获取与mysql数据库的连接,十分方便。

    php连接mysql数据库操作类.zip

    标题提到的"php连接mysql数据库操作类.zip"是一个压缩包,其中包含了一个PHP类,专门用于处理与MySQL数据库的交互,如查询、更新、删除等常见操作。这个类库可能是为了简化数据库操作,提高代码的可读性和可维护性而...

    微信小程序php后台内嵌mysql

    微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台内嵌mysql微信小程序php后台...

    PHP5+MYSQL网页系统开发设计

    《PHP5+MYSQL网页系统开发设计》是一本深入讲解如何使用PHP5和MySQL进行网页系统构建的专业书籍。这本书籍旨在帮助读者掌握这两种技术的结合,从而实现高效、稳定的动态网站开发。PHP5作为一门广泛使用的服务器端...

    NaviCat连接时提示不支持远程连接的MySql数据库解决方法

    - 解决NaviCat连接MySQL出现2059错误的方法。 - 使用Navicat进行远程连接MySQL的详细步骤解析。 以上就是通过NaviCat利用HTTP通道解决不支持远程连接的MySQL数据库问题的方法。遵循这些步骤,你应该能成功建立远程...

    Android 实现连接MySQL数据库

    总的来说,Android连接MySQL数据库涉及网络编程、后端接口设计、JSON解析等多个环节,通过合理的架构设计和安全措施,可以实现高效且安全的数据交互。在实际开发中,还需要注意处理网络延迟、错误处理等问题,以提供...

Global site tag (gtag.js) - Google Analytics