Home >Backend Development >PHP Tutorial >PHP怎样连接Sql Server数据库

PHP怎样连接Sql Server数据库

WBOY
WBOYOriginal
2016-06-23 14:38:171875browse

我刚刚开始接触PHP,做到数据库连接这部分了。。几乎很多教程都是MySql的,我现在想连接Sql Server数据库,怎么连接呢。从网上找到的配置方法我都配置了。但是我的安装目录下面没有ntwdblib.dll这个文件。
代码如下:
$conn=@mssql_connect("localhost","zhengjie","123") or die("连接错误!");
mssql_select_db("学生信息管理");
if($conn)
{
echo "连接成功!";
}
?>
运行以后没有任何的提示……求帮助……谢谢


回复讨论(解决方案)

把mssql_connect前的@去掉,看错误反馈。
用ODBC方式会比较方便。

好问题,不会

去了@以后是警告,不是错误……

是什么警告?

代码看不出问题,应该是配置有问题,你看看下面的步骤多做了吗?

1、打开PHP配置文件php.ini,找到;extension=php_mssql.dll把前面的分号去掉。

2、找到mssql.secure_connection = Off修改成 mssql.secure_connection = On。

3、把PHP文件夹下的php_mssql.dll和ntwdblib.DLL这两个文件拷贝到C:\windows\system32\文件夹下。

4、重启Apache,OK


不用odbc 直接用php的方法,php.ini里开通一下 php_mssql.dll。因为默认是不开通的。

现在流行pdo.

PDO怎么用啊。。。5楼的方法我都做好了。不过我的PHP里面没有ntwdblib.DLL,是不是PHP的错误啊……

你的php版本?

1.首先你要确定你用"zhengjie","123"能登陆sql_server服务器(sql身份验证进去)
2.建议去直接去下载Wamp的版本(你自己配置环境可能用问题),里面可以直接开启PHP_MSSQL模块
至少我用这个从来不会连接不上
3.可以试着用COM连接
这里讲见怎么用COM连接
允许 DCOM,需要将php.ini中的 ;com.allow_dcom=TRUE前的分号";"去掉。

$conn = new COM("ADODB.Connection") or die("Cannot start ADO");    $connstr = "Provider=SQLOLEDB;               Persist Security Info=False;               User ID=sa;               Password=;               Initial Catalog=cdr;               Data Source=localhost";      $conn->Open($connstr); 

我用的就是wamp,PHP版本是5.3.3的,模块开启了。。但是不是连接不上,根本就没有任何的提示,他也不提示你连接上了,也不提示错误信息,气死了。。有高手的话留个QQ,加我帮帮我也行……602788658,谢谢了先……

$conn=@mssql_connect("localhost\\MS2005","zhengjie","123") or die("连接错误!");
mssql_select_db("学生信息管理");
if($conn)
{
echo "连接成功!";
}
else
{
echo "连接错误!";
}
?>

$conn=@mssql_connect("localhost\\MS2005","zhengjie","123") or die("连接错误!");
if($conn)
{
echo "连接成功!";
}
else
{
echo "连接错误!";
}
    echo "a";
?>

这样怎么A都不输出了,是不是我的代码有错误啊……

应该是执行mssql_connect()时程序出错意外中止了
请去掉 @ 让它报出错误来

应该是执行mssql_connect()时程序出错意外中止了
请去掉 @ 让它报出错误来

Fatal error: Call to undefined function mssql_connect() in E:\PHP\PHP\PHP\mysql\MySql1.php on line 2

http://blog.xmnn.cn/?uid-525196-action-viewspace-itemid-906722
去这里下载个ntwdblib.dll

你的SQL SERVER是什么版本?如果是2005以上的版本,得安装官方的驱动
http://msdn.microsoft.com/zh-cn/library/cc296152%28v=SQL.90%29.aspx

你用
mysql_error()
查一下错误信息

真心难 我也搞了好久都不晓得怎么继续了。。。。。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn