Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP Fatal error: Class 'COM' not found

Tags:

php

windows

iis-7

I'm getting this error after upgrading PHP to v. 5.5.1:

Fatal error: Class 'COM' not found in
C:\inetpub\wwwroot\ndsystems\database_engine\mssql_engine.php on line 184

Line 184 in mssql_engine.php file:

$this->COMConnection = new COM('ADODB.Connection');    //line 184
try {
    $this->COMConnection->Open($connectionString);
    $this->RetrieveServerVersion();
} catch (com_exception $e) {
    $this->lastError = $e->getMessage();
    $result = false;
}
return $result;

Environment is Windows 2008 R2 SP1, IIS 7

Things I tried:

  1. Added this at the end of php.ini:

    [PHP_COM_DOTNET]
    
    extension=php_com_dotnet.dll
    
  2. Added extension=php_com_dotnet.dll in [PHP] section of php.ini

  3. Rebooted IIS and also rebooted server itself.

  4. Downgraded PHP to 5.3.27

Nothing seems to work. How do I fix this error?

like image 557
user1060641 Avatar asked Dec 12 '25 03:12

user1060641


1 Answers

In addition to adding

[PHP_COM_DOTNET]
extension=php_com_dotnet.dll

to your php.ini file, you have to tell PHP where to look for the extension, and to enable extensions.

To tell PHP where to look for extensions on Windows just uncomment (remove the leading ;) following line:

extension_dir = "ext"

To enable extensions set the enable flag to On:

enable_dl = On
like image 167
CallMeHarmon Avatar answered Dec 14 '25 15:12

CallMeHarmon



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!