Reputation: 179
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:
Added this at the end of php.ini:
[PHP_COM_DOTNET]
extension=php_com_dotnet.dll
Added extension=php_com_dotnet.dll
in [PHP] section of php.ini
Rebooted IIS and also rebooted server itself.
Downgraded PHP to 5.3.27
Nothing seems to work. How do I fix this error?
Upvotes: 3
Views: 24289
Reputation: 31
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
Upvotes: 3