Ho un problema di connessione ad un database Microsoft con il quale ho lavorato fino a qualche giorno fa, poi non so come, la connessione non ha più funzionato.
Questo è lo script PHP di test per la connessione:
$db = "c:\italsoft\XP-MACRO\XP-DATI\XP-M001\MX-M001.MDB";
$sc = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=$db;";
$cn = new COM( "ADODB.Connection" );
$rs = new COM( "ADODB.Recordset" );
$cn->open( $sc );
$query = "SELECT `NRDOC` FROM `DOCFATT`";
$rs->Open( $query, $cn ); // Line #18
if( $rs->EOF ){
print 'No data found!';
}else{
while( $rs->EOF === NULL ){
print $rs->Fields['NRDOC']->value() . '<br />';
$rs->MoveNext();
}
}
Questo è il risultato:
Ho cercato su google, provato diverse soluzioni, ma niente, il problema non si è risolto. Molti consigliano di installare dei pacchetti driver di Office. Nel mio caso i driver erano già installati, quindi niente di nuovo per me.
L'errore di interfaccia non registrata viene fuori solo se nella stringa di connessione imposto uno dei provider che ho installato altrimenti l'errore non fornisce alcun dettaglio. Questo mi fa pensare che il problema sia qualche impostazione e non la mancanza di file o driver.
Sono due giorni che ci sbatto la testa ma non so più cosa provare.