2008-10-23 7 views
2
 include('adodb5/adodb.inc.php'); 

     $myServer = "localhost"; 
     $myUser = "root"; 
     $myPass = "root"; 
     $myDB = "database"; 

     //create an instance of the ADO connection object 
     $conn = new COM("ADODB.Connection") or die("Cannot start ADO"); 

     //define connection string, specify database driver 
     $connStr = "PROVIDER=SQLOLEDB;SERVER=".$myServer.";UID=".$myUser.";PWD=".$myPass.";DATABASE=".$myDB; 
     $conn->open($connStr); //Open the connection to the database 

Это первый раз, когда я пришел через библиотеку ADODB и якобы собирается помочь мне перейти от MySQL в Microsoft SQL Server. Кто-нибудь знает, почему я получаю эту ошибку, или если есть более простой способ, который не связан с игрой с файлом php.ini?Фатальная ошибка: Class «COM» не найден при попытке использовать ADODB

ответ

0

Наиболее вероятная причина в том, что ADO неправильно установлен на сервере. Попробуйте запустить последнюю версию MDAC и убедитесь, что она правильно установлена, а затем попробуйте аги. Обновите свой вопрос с дополнительной информацией для получения дополнительной информации. Предполагаю, что вы на Windows Server?

1

Кажется, что вы включаете библиотеку adodb PHP, но на самом деле ее не используете, вместо этого пытаетесь создать объект ADO COM (Microsoft).

Если у вас не установлен/работать с PHP вы могли бы попробовать использовать ODBC DSN-менее подключения, как ADO:

include('adodb5/adodb.inc.php'); 

$myServer = "localhost"; 
$myUser = "root"; 
$myPass = "root"; 
$myDB = "database"; 


$db = ADONewConnection('odbc_mssql'); 
$dsn = "Driver={SQL Server};Server={{$myServer}};Database={{$myDB}};"; 
$db->Connect($dsn,$myUser,$myPass) or die($db->ErrorMsg());   

if (!$rs = $db->Execute('select * from table')) die($db->ErrorMsg()); 

while (!$rs->EOF) { 
    print_r($rs->fields); 
    $rs->MoveNext(); 
} 

$rs->Close(); 

Смотри также другие примеры подключения на http://phplens.com/adodb/code.initialization.html#connect_ex

2

Если вы хотите используйте следующий код:

new COM("ADODB.Connection") 

Вам необходимо включить "COM поддержку" в PHP, например с помощью расширения com_dotnet (php_com_dotnet.dll) How to install COM extension