OVH Community, votre nouvel espace communautaire.

PDO / Access database (.accdb)


Gaston_Phone
31/08/2016, 14h24
L'erreur n'était pas là où je le pensais mais l'important c'est que finalement cela fonctionne

mnk0r
31/08/2016, 13h48
Merci pour l'idée qui me semblait improbable à la première lecture mais ça fonctionne.

Code:
$dbName = "Data.accdb";
if(!file_exists($dbName)) {    
    die("Could not find database file.
".$dbName); } try { $db = new PDO("odbc:DRIVER=MDBTools; DBQ=$dbName"); } catch(PDOException $e) { echo "Error: ".$e->getMessage()."
"; }
Il faut écrire DBQ en majuscule !

Gaston_Phone
31/08/2016, 12h55
odbc-mdbtools et odbc: Driver=MDBTools : N'y aurait-il pas de problème de Majuscule/Minuscules ?

mnk0r
31/08/2016, 12h35
Bonjour,

Après plusieurs heures de recherche et de tests, je reste sans résultats.

Nous avons pris un VPS puisque l'accès via PDO à une base Access (.accdb) n'est pas possible sur un mutualisé. Nous sommes donc parti sur une distribution LAMP1.0 et nous avons suivi le tutoriel de sécurisation de celui-ci proposé par OVH : https://docs.ovh.com/pages/releasevi...ageId=18121864

http://inscriptions.online/phpinfo.php

Nous sommes donc sur une config très classique avec PHP5.6.24 sur laquelle nous aimerions installer le module ODBC afin de se connecter sur cette base Access.

Malgré l'ensemble des sujets trouvés en ligne et les différents tests, rien à faire, nous n'arrivons pas à avoir quelque chose de fonctionnel.

Pour le moment, j'ai réinstallé le VPS afin d'avoir quelques chose de propre (après les X tests effectués).

Installation des modules
Code:
apt-get install unixodbc unixodbc-dev php5-odbc mdbtools odbc-mdbtools
Ouverture la base de données
Code:
$dbName = "Data.accdb";
if(!file_exists($dbName)) {    
    die("Could not find database file.
".$dbName); } try { $db = new PDO("odbc:Driver=MDBTools;Dbq=$dbName"); } catch(PDOException $e) { echo "Error: ".$e->getMessage()."
"; }
Erreur
Code:
Error: SQLSTATE[08001] SQLDriverConnect: 1 [unixODBC]Could not find DSN nor DBQ in connect string
Je suis preneur de toutes les idées !

Merci d'avance pour toutes vos réponses,

Alexandre