Adodb connectie in PHP 7.0.1

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Gee Bee

Gee Bee

16/04/2016 17:19:10
Quote Anchor link
Hallo,

Heb een project waarin ik MS Access gebruik als backend. In PHP maak ik de verbinding met de volgende code regels.

$db_conn = new \COM("ADODB.Connection") or die("Cannot start ADO"); ( overigens, óók "new COM(..." zonder de '\' voor de 'COM' geeft dezelfde foutmelding )
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=". realpath("../db/whatever.mdb").";";
$db_conn->open($connstr);

Na het installeren van een nieuwe XAMPP versie ( met PHP 7.0.1 ) krijg ik nu de volgende foutmelding: Fatal error: Uncaught Error: Class 'COM' not found in .... ( de rest van de melding geeft de bestandsnaam en het regelnummer waar de fout optreedt, zoals "je" kan raden de bovenste regel in het bovenstaande voorbeeld )

In de "oude" XAMPP ( met PHP 5.4.7 ) werkte alles prima. Als ik die twee versies vergelijk, valt me meteen op dat in de 7.0.1 versie de volledige "pear" map ( onder de map "php" ) is verdwenen én dat de "pear" map in de 5.4.1 versie een submap genaamd "adodb" bevat.

Zit 'em nou ook hierin de "fout" en is dit op te lossen door de map uit de 5.4.1 versie simpelweg in de 7.0.1 versie te kopiëren?
 
PHP hulp

PHP hulp

28/11/2024 20:13:55
 
Ben van Velzen

Ben van Velzen

17/04/2016 00:58:41
Quote Anchor link
De pear map is in jouw geval niet relevant, omdat je geen gebruik maakt van de pear ADODB. Wat relevant is, is het ontbreken van de COM class, welke volgens php.net wel onderdeel is van PHP 7. Heb je de benodigde extensies ingeschakeld (php_com_dotnet.dll in php.ini)? Zoja, geeft je error log startup warnings/errors?

Zie ook http://php.net/manual/en/com.setup.php
Gewijzigd op 17/04/2016 00:59:40 door Ben van Velzen
 
Gee Bee

Gee Bee

17/04/2016 15:11:05
Quote Anchor link
Heb de regel "extension=php_com_dotnet.dll" in php.ini toegevoegd ( stond er nog helemaal niet, zelfs niet 'disabled' ) en daarmee werkt het!

Thnks!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.