Home  >  Article  >  Backend Development  >  Solution to PHP Fatal error: Call to undefined function mssql_connect()

Solution to PHP Fatal error: Call to undefined function mssql_connect()

PHPz
PHPzOriginal
2023-06-23 10:06:101457browse

Solution to PHP Fatal error: Call to undefined function mssql_connect()

If you are a PHP developer, maybe you have encountered this error. It usually occurs when you try to connect to a Microsoft SQL Server database. In this article, we will explore the causes and solutions to this problem.

Cause

Before PHP 7.0, the database driver used by PHP was the Microsoft SQL Server driver (mssql). However, since PHP 7.0 version, this driver has been removed. PHP now uses Microsoft's official driver (sqlsrv).

If your PHP version is 7.0 or higher and you are still using the mssql_connect() function in your code, you will encounter this error.

Solution

There are two solutions to this problem.

  1. Upgrade to PHP 7.0 or higher and use the sqlsrv driver

If you are using the mssql driver in a version prior to PHP 7.0, you should upgrade to PHP 7.0 or higher, and use Microsoft's official driver (sqlsrv). You can follow the steps below to install and enable the sqlsrv driver.

Step 1: Download the Microsoft SQL Server driver

You can download the latest version of the Microsoft SQL Server driver from Microsoft's official website.

Step 2: Enable SQLSRV extension

After the download is complete, you need to enable the SQLSRV extension in the PHP configuration file. Open the php.ini file and add the following code in the dynamic extension section:

extension=php_pdo_sqlsrv_7_ts.dll
extension=php_sqlsrv_7_ts.dll

Here, we are using PHP 7.x version of the extension file. If you are using another version of PHP, you need to select the corresponding extension file according to your PHP version.

Step 3: Restart the Web Server

After completing all configurations, you need to restart your Web server to ensure that all changes take effect.

Now, you can use the sqlsrv_connect() function to connect to your Microsoft SQL Server database.

  1. Continuing to use the mssql driver in PHP 7.0 or higher

If you cannot upgrade to PHP 7.0 or higher and must continue to use the mssql driver , you can follow the steps below to resolve the issue.

Step 1: Download Microsoft SQL Server Driver

You need to download the Microsoft SQL Server driver, but this time you need to download the older version (version 3.0) driver.

Step 2: Enable MSDASQL driver

MSDASQL is an ODBC driver that can map OLE DB data sources to ODBC data sources. You need to enable the MSDASQL driver and configure your SQL Server data source as an OLE DB provider.

Step 3: Configure the php.ini file

Open the php.ini file and add the following code in the dynamic extension section:

extension=php_pdo_odbc.dll
extension =php_odbc.dll

Step 4: Restart the Web server

After completing all configurations, you need to restart your Web server to ensure that all changes take effect.

Now, you can use the mssql_connect() function to connect to your Microsoft SQL Server database.

Conclusion

No matter which method you choose, you can solve this error. If you can upgrade to PHP 7.0 or higher and use the official Microsoft SQL Server driver (sqlsrv), that would be the best option. But if you cannot upgrade the version, you can also connect using an older version of the Microsoft SQL Server driver (mssql). In any case, you need to follow the above steps carefully and patiently to solve this problem.

The above is the detailed content of Solution to PHP Fatal error: Call to undefined function mssql_connect(). For more information, please follow other related articles on the PHP Chinese website!

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