Download Hai creato un database in access e vorresti che venisse

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Hai creato un database in access e vorresti che venisse pubblicato online per averlo sempre
disponibile o farlo aggiornare da altre persone?
Con PHP puoi creare uno script che permetta la visualizzazione e l'aggiornamento dei dati del tuo
database Access. Vediamo come PHP e Access possono lavorare insieme.
Il modo migliore per accedere ad un database Access è quello di usare le funzioni ODBC (Open
Database Connectivity) di PHP; per fare questo dobbiamo però creare un dsn di sistema (Data
Source Name) cioè un file che contiene le informazioni relative al tipo e al percorso del database.
Molti hosting però non permettono di utilizzare un dsn; in questo caso, quindi, è possibile usare
le funzioni COM (Component Object Model) di PHP. Le informazioni di accesso al database
dovranno essere inserite in una stringa che poi passeremo al metono Open() dell'oggetto
ADODB.Connection.
Ecco un esempio di stringa di connessione:
$cn="Provider=Microsoft.Jet.OLEDB.4.0;"; // indica il motore del database
$cn.="Data Source=C:/mytestdb.mdb;"; // indica il path del db
$cn.="Mode= 12 ;"; // indica il modo di accesso; se non si aggiunge questa stringa l'apertura è in
lettura/scrittura condivisa
$cn.="User ID=user; Password=password;" //indica user e pass se configurate
Non rimane che uploadare, nella path indicata nella stringa di connessione, il file .mdb che abbiamo
creato con office.
A questo punto, come abbiamo fatto in precedenza, creiamo lo script che ci farà accedere al
database:
<?php
$path= "C:/" ;
$db= "db.mdb" ;
$source=$path.$db ;
$cn="Provider=Microsoft.Jet.OLEDB.4.0;" ;
$cn.="Data Source=$source;" ;
//Verifico se esiste il file del db
if (!file_exists($source) ){
die("Il database non esiste") ;
}
$cnObj= new COM("ADODB.Connection");
$cnObj->open($cn) ;
/*Il DB è ora aperto e possiamo effettuare le operazioni che vogliamo*/
//Chiudo la connessione al DB
$cnObj->Close() ;
$cnObj->Release() ;
$cnObj= null ;
?>
Per effettuare le operazioni di modifica, visualizzazione ecc... possiamo istanziare l'oggetto
Recordset e inviare una query SQL con il metodo Open().
Vediamo come visualizzare i dati del nostro database; dopo aver aperto la connessione al db (e
prima di chiuderla!) inseriamo questo codice:
$rs= new COM("ADODB.Recordset"); // istanzio l'oggetto Recordset
$rs->Open("select * from clienti order by name",$cn); // invio la query
// ora avvio un ciclo per recuperare i dati
while(!$rs->EOF){
echo($rs->Fields['name']->value." ".$rs->Fields['surname']->value."<br />") ;
$rs->MoveNext() ;
}
// ora chiudo il recordset
$rs->Close() ;
$rs->Release() ;
$rs= null ;
Ora abbiamo il minimo indispensabile per connetterci a un db Access con PHP e visualizzare i dati
archiviati al suo interno.