2014-02-05 5 views
-2

Я пытаюсь использовать COM объект в моем сценарии на XAMPP сервере и получать ошибкиPHP класс COM не найден

fatal error class COM not found

Может кто-нибудь помочь?

Код:

//create an ADO connection and open the database 
$conn = new COM("ADODB.Connection"); 
$conn->open("PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\WebData\Northwind.mdb"); 
+0

Вы пробовали установить его/увидеть, если он установлен правильно? –

+0

Я добавил [COM_DOT_NET] extension = php_com_dotnet.dll в php.ini, но все равно получаю ту же ошибку. – user3275714

+0

Вы ссылались на ответ DanFromGermany? или посмотрел руководство по установке? –

ответ

2

As of PHP 5.3.15/5.4.5, this extension requires php_com_dotnet.dll to be enabled inside of php.ini in order to use these functions. Previous versions of PHP enabled these extensions by default.

You are responsible for installing support for the various COM objects that you intend to use (such as MS Word); we don't and can't bundle all of those with PHP.

От http://php.net/manual/en/com.installation.php

From PHP 5.4.5, COM and DOTNET is no longer built into the php core.you have to add COM support in php.ini:

[COM_DOT_NET] extension=php_com_dotnet.dll

Otherwise you will see this in your error log: Fatal error: Class \'COM\' not found

The extension is included with php 5.4.5 for Windows.

http://php.net/manual/en/com.installation.php#109552 От

+0

lol.At в то же самое время мы установили ответ – Ivan

+0

добавил эти строки и скачал php_com_dotnet.dll, но все еще получал ту же ошибку .. может ли plx указать, где добавить эти строки в php.ini? в разделе [php] ??? – user3275714

+0

Вы перезапустили Apache? –

0

В РНР 5.3.15/5.4.5, это расширение требует php_com_dotnet.dll для включения внутри php.ini, чтобы используйте эти функции. Предыдущие версии PHP включили эти расширения по умолчанию.

Вы несете ответственность за установку поддержки различных COM-объектов, которые вы собираетесь использовать (например, MS Word); мы не можем и не можем объединить все с PHP.

Если у вас установлено, пожалуйста, сначала проверьте, добавлено ли расширение в выражении.

Пример:

<?php 
if (!extension_loaded('gd')) { 
    if (!dl('gd.so')) { 
     exit; 
    } 
} 

// update 

if (!extension_loaded('com')) { 
    echo "COM no exists"; 
} 
+0

этот код не дает никакого результата. – user3275714

+0

Этот код является примером, показывающим, как проверить, загружено ли расширение. – Ivan

+0

результат com не существует .. я установил php_com_dotnet.dll, а также добавил [com_dot_net] extension = php_com_dotnet.dll, что я должен делать, может ли plx указать, где добавить эти два loines в php.ini ?? – user3275714

Смежные вопросы