mssql_connect显示空白页

问题描述 投票:1回答:3

我是sql server的新手,我只想在Windows 7计算机上使用iis 7将sql server express 2012与php连接。

这是我的代码:

    $myServer = "ASUS\SQLEXPRESS";
    $myUser = "sa";
    $myPass = "1991";
    $myDB = "test"; 

    echo("aaaa");
    //connection to the database
    $dbhandle = mssql_connect($myServer, $myUser, $myPass);
    echo("bbbb");

    //select a database to work with
    $selected = mssql_select_db($myDB, $dbhandle)
      or die("Couldn't open database $myDB"); 

    //declare the SQL statement that will query the database
    $query = "SELECT *FROM mhs";

    //execute the SQL query and return records
    $result = mssql_query($query);

    $numRows = mssql_num_rows($result); 
    echo "<h1>" . $numRows . " Row" . ($numRows == 1 ? "" : "s") . " Returned </h1>"; 

    //display the results 
    while($row = mssql_fetch_array($result))
    {
      echo "<li>" . $row["nim"] . $row["nama"] . "</li>";
    }
    //close the connection
    mssql_close($dbhandle);

我在本地iis上运行的php代码,我认为用户名,密码和服务器名是正确的,但是当我在本地iis上执行它时,它没有显示任何错误,只是没有显示'aaaa'和'bbbb'。



我认为我在mssql_connect中错了,但是怎么了? 有谁能够帮助我?
谢谢。

php iis-7 sql-server-express
3个回答
2
投票

我不确定,但是较新版本的SQL服务器与mssql不兼容。 您应该使用更新SQLSRV(PHP.NET)SQLSRV(Microsoft网站) 。 我在使用MSSQL时遇到了同样的问题,最后转移到了SQLSRV。 现在工作正常。


0
投票

将您的代码更改为以下内容,以便您可以捕获错误。

$dbhandle = mssql_connect($myServer, $myUser, $myPass) or die(mssql_error());

0
投票

请按照以下给出的步骤将MSSQL与php连接:

  1. 与您的php.ini文件相关的设置:

    a)在您的php.ini文件中搜索变量mssql.secure_connection ,如果其关闭则将其置于打开模式
    b)从dll扩展php_mssql.dll中删除注释(即,从扩展的前面删除;)

  2. 与dll文件相关的设置。 从Internet下载文件名ntwdblib.dll 。 您可以从此处下载它,也可以在互联网上搜索。 将下载的dll复制到apache / bin目录,对于IIS,将其复制到php扩展目录(如果在php.ini中找不到变量extension_dir的路径),则还需要在php扩展目录中拥有php_mssql.dll 。 如果不存在,请下载并将其复制到默认的php扩展目录。

  3. 重新启动所有服务 (即php和apache或iis),然后可以使用下面给出的脚本连接到SQL Server。

© www.soinside.com 2019 - 2024. All rights reserved.