致命错误:未捕获的错误:调用未定义的函数 mssql_query() [重复]

Posted

技术标签:

【中文标题】致命错误:未捕获的错误:调用未定义的函数 mssql_query() [重复]【英文标题】:Fatal error: Uncaught Error: Call to undefined function mssql_query() [duplicate] 【发布时间】:2020-06-07 08:15:29 【问题描述】:

我正在尝试将 php 与 mssql 连接并遇到此错误。 我已经下载了驱动程序并安装和配置了我的 PHP.ini 文件。 我正在接收已建立的连接,但它不适用于 mssql_query 任何人都可以帮助我解决这个问题。

<?php
$serverName = "server details";
$connectionInfo = array("Database"=> "mydbname", "UID" => "id", "PWD" => "password");
$conn = sqlsrv_connect($serverName , $connectionInfo);

if($conn)
    echo "connection established <br />";

else
    echo "connection could not established <br />";
    die(print_r(sqlsrv_errors(),true));


$query = "SELECT * FROM AgeNames";

$result = mssql_query( $query );

for ($i = 0; $i < mssql_num_rows( $result ); ++$i)
     
         $line = mssql_fetch_row($result);
         print( "$line[0] - $line[1]\n");
     

我在 PHP ini 中添加了这些字段 PHP ini image

这就是我在 phpinfo() 中得到的结果

phpinfo

phpinfo screenshot 2

【问题讨论】:

***.com/q/17498216/2943403 @mickmackusa 它不是 mysql @mickmackusa 我要的是mssql,你提供的链接有mysql的解决方案 这就是为什么我没有使用那个帖子来敲定你的问题。不过道理是一样的。您不能混合使用 API。 显然,使用前面提到的副本关闭此页面是合适的。这是另一片雪花:***.com/q/49473909/2943403 【参考方案1】:

您似乎使用了不正确的功能。 您需要使用sqlsrv_query 函数而不是mssql_query

$result = sqlsrv_query( $conn, $query );

附: 自 PHP 7.0 起,mssql_query 已被删除。阅读更多here。

【讨论】:

非常感谢,但我使用 sqlsrv_query 遇到了另一个问题,我无法从表中获取数据。 $query = "SELECT * FROM AgeNames"; $result = sqlsrv_query( $conn , $query); while( $row = sqlsrv_fetch_array( $result, SQLSRV_FETCH_NUMERIC)) echo "Minimum Age: ".$row['0']."\n"; echo "Maximum Age: ".$row['MaxAge']."\n"; 我收到此错误 Notice: Undefined index: MinAge in C:\xampp\htdocs\aljawaizi\connection.php on line 23 Minimum Age: Notice: Undefined index: MaxAge in C:\xampp\htdocs\aljawaizi\connection.php on line 24 嗨@KhalilUrRehman,我建议你为这个错误创建一个不同的问题。由于这与原始问题无关,因为您不再收到 Call to undefined function,这意味着您的代码能够处理该功能。 为什么要在结果集中指定 NUMERIC 键,然后尝试访问名为 MaxAge 的键?

以上是关于致命错误:未捕获的错误:调用未定义的函数 mssql_query() [重复]的主要内容,如果未能解决你的问题,请参考以下文章

致命错误:未捕获的错误:调用 /homepages/ 中未定义的函数 mysql_pconnect() [重复]

致命错误:未捕获的错误:调用未定义的函数 mssql_query() [重复]

PHPmyadmin 问题 - 致命错误:未捕获错误:调用未定义函数 mb_detect_encoding()

PHP 致命错误:未捕获的错误:使用 Laravel 5.8 和 PHP 7.4 调用未定义函数 Whoops\Exception\xdebug_is_enabled()

捕获致命错误:调用未定义的函数 geoip_db_avail()?

PHP 致命错误:未捕获的错误:在 PHP 7.2.13 上调用未定义函数 idn_to_ascii()