Search code examples
phpsql-serverazurephp-extensionazure-sql-reporting

Fatal error: Call to undefined function sqlsrv_connect() using wamp php 5.5.12


I am trying to connect to a Azure data base. I have read many other stack overflow answers but they did not work for me:

-I have downloaded all the drivers that Azure offers to you. They are in

C:\wamp\bin\php\php5.5.12\ext folder: enter image description here

-I have added to the system variable the path to extensions folder.

-I have set the extension in both php.ini files (inside the apache and php folders).

-Extensions have been set like

extension=php_sqlsrv_5X_ts.dll
extension=php_pdo_sqlsrv_5X_ts.dll and like extension=C:/wamp/bin/php/php5.5.12/ext/php_sqlsrv_5X_ts.dll extension=C:/wamp/bin/php/php5.5.12/ext/php_pdo_5X_ts.dll

Where X means that I have tried 53, 54, 55 and 56.

-I restart all wamp services every single time that I try new changes.

-I have even tried with IISExpress.

-It is still giving me this error and I can't see "sqlsvr" when I use phpinfo().

what more I should do? I have been suffering this for weeks.


Solution

  • I use this XAMPP with PHP 5.5.34 at https://www.apachefriends.org/download.html to have the test to enable the sqlsrv extension of PHP.

    You can refer my steps:

    1. After install the XAMPP application, run xampp-control.exe, click config=>PHP(php.ini) to check the extension folder.enter image description here
    2. Download the MSSQL driver for PHP in 3.2 version from https://msdn.microsoft.com/en-us/library/cc296170%28v=sql.105%29.aspx?f=255&MSPPError=-2147217396. Uncompress it.
    3. Copy php_pdo_sqlsrv_55_ts.dll and php_sqlsrv_55_ts.dll from the uncompressed driver folder to the PHP extension folder (X:\xampp\php\ext in my scenario).
    4. Add extension=php_pdo_sqlsrv_55_ts.dll and extension=php_sqlsrv_55_ts.dll in PHP.ini file.
    5. Start Apache.

    Meanwhile, you can use phpinfo() to check the setting of Loaded Configuration File and extension_dir to make sure whether you have configured the correct settings in the definite files and the DLL files in the right folder.