Visualizzazione dei risultati da 1 a 2 su 2

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    74

    ODBC connettersi a mdb con php7

    Versione php7.4 x64
    apache 2.4 x64


    1) Controllare nel php.ini che le estensioni di seguito, siano decommentate (quindi senza punto e virgola)


    extension=odbc


    extension=pdo_odbc


    2) Aprire "Amministratore origine dati ODBC (64bit)" e controllare che ci siano solo driver 64bit.




    Questo punto è il fulcro di tutto il discorso. I driver presenti saranno quelli utilizzati come connettore nella stringa php,


    per un db .mdb andremo ad utilizzare : MS Access Database. Sono stato costretto a disinstallare i driver a 32bit, altrimenti andava in errore, quindi il driver 64bit non viene caricato se presente un driver 32bit, non so il perchè.


    3) installare i driver per access a 64bit, io ho usato: accessdatabaseengine_X64.exe scaricato dal sito ufficiale microsoft.


    4) riavviate il pc e quindi server apache


    5) creare lo script seguente:
    Codice PHP:
    <?php
    $dbName 
    $_SERVER["DOCUMENT_ROOT"]. "/prova_mde/testdb/testdb.mdb"// Definisce percorso e nome del database";
    if (!file_exists($dbName)){die("file non trovato.");}else{echo 'db trovato <br />';}

    try { 
    $db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=$dbName; Uid=; Pwd=;"); }catch(PDOException $error_mess) {    echo $error_mess->getMessage(); }  $sql "select * from categorie";
    // eseguo la query$result = $db->query($sql);
    // ciclo tutti i risultatiwhile ($row = $result->fetch()) { print_r($row);}
    ?>
    PUNTI FONDAMENTALI DA RISPETTARE:


    1) $_SERVER["DOCUMENT_ROOT"]. (senza e mettendo il percorso scritto per intero è andato in errore)


    2) odbcRIVER={Microsoft Access Driver (*.mdb, *.accdb) ( va scritto completo, in diverse guide scrivono fino a *.mdb, ma il


    nome del connettore va scritto identico e completo)


    3) ovviamente la classe pdo di php deve essere abilitata nel php.ini !!!!






    ok questo è tutto, spero di aver risparmiato notti insonni ad altri.


    ciao
    Immagini allegate Immagini allegate
    "Gli eroi sono uomini comuni che compiono azioni straordinarie in momenti straordinari" - ( Dal film U-571 )

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.