【问题标题】:Moving php script from IIS to Linux- Script fails将 php 脚本从 IIS 移动到 Linux - 脚本失败
【发布时间】:2010-11-19 12:48:07
【问题描述】:

您好,我有以下脚本,它在 IIS 上运行良好,但是当我将相同的脚本放在 Linux 机器上时,它失败并出现以下错误。这不应该只是工作吗?

致命错误:在第 10 行调用 /home/thePathToTheScript/services/dhTest.php 中未定义的函数 mssql_connect()

第 10 行 = $dbhandle = mssql_connect($myServer, $myUser, $myPass)

//start
$myServer = "SQLB15.sqlDBCenter.com";
$myUser = "unc_user";
$myPass = "unc1234";
$myDB = "db_Stuff"; 

//connection to the database
$dbhandle = mssql_connect($myServer, $myUser, $myPass)
  or die("Couldn't connect to SQL Server on $myServer"); 

//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 DISTINCT Name As theName";
$query .= "FROM tb_Names ";
$query .= "ORDER BY Name";

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

任何指针都非常感谢

添加 - 这是 php.ini 的 mssql 部分 [MSSQL] ;允许或阻止持久链接。 mssql.allow_persistent = 开启

;最大永久链接数。 -1 表示没有限制。 mssql.max_persistent = -1

;最大链接数(持久+非持久)。 -1 表示没有限制。 mssql.max_links = -1

;要显示的最小错误严重性。 mssql.min_error_severity = 10

;要显示的最低消息严重性。 mssql.min_message_severity = 10

;与旧版本 PHP 3.0 的兼容模式。 mssql.compatability_mode = 关闭

;连接超时 ;mssql.connect_timeout = 5

;查询超时 ;mssql.timeout = 60

;有效范围 0 - 2147483647。默认值 = 4096。 ;mssql.textlimit = 4096

;有效范围 0 - 2147483647。默认值 = 4096。 ;mssql.textsize = 4096

;限制每批中的记录数。 0 = 一批中的所有记录。 ;mssql.batchsize = 0

;指定如何返回 datetime 和 datetim4 列 ; On => 返回转换为 SQL 服务器设置的数据 ; Off => 以 YYYY-MM-DD hh:mm:ss 形式返回值 ;mssql.datetimeconvert = 开启

;连接服务器时使用 NT 身份验证 mssql.secure_connection = 关闭

;指定最大进程数。默认 = 25 ;mssql.max_procs = 25

【问题讨论】:

    标签: php linux iis


    【解决方案1】:

    您正在尝试使用可能未加载的 mssql 扩展。您需要检查 php.ini 并查找“extension=mssql.so”,然后取消注释并重新启动 Apache。

    如果这个扩展不存在,或者它不起作用(重新启动 apache 或运行脚本时出错),那么你需要检查你的 Linux 发行版你需要哪些额外的包以及如何制作它工作。

    【讨论】:

    • 谢谢,我似乎找不到你提到的扩展 - 这是 Dreamhost 上的托管帐户 - 我已将 php.ini 中的 mssql 详细信息添加到原始帖子中。看起来应该不错。
    【解决方案2】:

    您的 Linux 机器上没有安装 MS SQL 扩展。

    See the PHP docs how to install/configure MS SQL

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多