Database ODBC PHP

ODBC è un'interfaccia di programmazione applicativa (Application Programming Interface, API) che ci permette di connetterci a una fonte di dati (ad esempio un database MS Access).

Creare una connessione ODBC

Tramite una connessione ODBC, puoi connetterti a qualsiasi database su qualsiasi computer nella tua rete, purché la connessione ODBC sia disponibile.

Ecco come creare una connessione ODBC per accedere ai dati di MS Access:

  1. Apri nella finestra di Control PanelStrumenti di gestione
  2. Fai doppio clic suSorgente dati (ODBC) Icona
  3. Seleziona il sistema Scheda DSN
  4. Clicca su "Aggiungi" pulsante
  5. Seleziona Microsoft Access Driver. CliccaCompleta.
  6. Nella prossima finestra, clicca su "Seleziona" per localizzare il database.
  7. Dai a questa database unNome del sorgente dati (DSN).
  8. CliccaConferma.

Attenzione, questa configurazione deve essere completata sul computer sul quale si trova il tuo sito web. Se il tuo computer sta eseguendo Internet Information Server (IIS), le istruzioni sopra elencate funzioneranno, ma se il tuo sito è situato su un server remoto, devi avere accesso fisico al server o chiedere al tuo provider di hosting di configurare il DSN per te.

Connettersi a ODBC

La funzione odbc_connect() viene utilizzata per connettersi a un sorgente dati ODBC. Questa funzione ha quattro parametri: il nome del sorgente dati, il nome utente, la password e un parametro opzionale di tipo puntatore.

La funzione odbc_exec() viene utilizzata per eseguire una query SQL.

Esempio

Esempio che crea una connessione al DSN chiamato northwind senza nome utente e password. Poi crea ed esegue una query SQL:

$conn=odbc_connect('northwind','','');
$sql="SELECT * FROM customers"; 
$rs=odbc_exec($conn,$sql);

Recuperare il record

La funzione odbc_fetch_row() viene utilizzata per restituire un record dal set di risultati. Se è possibile restituire una riga, restituisce true, altrimenti restituisce false.

Questa funzione ha due parametri: l'identificatore del risultato ODBC e un numero opzionale di riga:

odbc_fetch_row($rs)

Recuperare il campo dal record

La funzione odbc_result() viene utilizzata per leggere un campo dal record. Questa funzione ha due parametri: l'identificatore del risultato ODBC e il numero o il nome del campo.

La riga di codice seguente restituisce il valore del primo campo dal record:

$compname=odbc_result($rs,1); 

La riga di codice seguente restituisce il valore di un campo chiamato "CompanyName":

$compname=odbc_result($rs,"CompanyName");

Chiudere la connessione ODBC

La funzione odbc_close() viene utilizzata per chiudere la connessione ODBC.

odbc_close($conn);

Esempio ODBC

Esempio seguente mostra come creare prima una connessione al database, quindi un result set, e infine visualizzare i dati in una tabella HTML.

<html>
<body>
<?php
$conn=odbc_connect('northwind','','');
if (!$conn)
  {exit("Connection Failed: " . $conn);}
$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);
if (!$rs)
  {exit("Error in SQL");}
echo "<table><tr>";
echo "<th>Companyname</th>";
echo "<th>Contactname</th></tr>";
while (odbc_fetch_row($rs))
{
  $compname=odbc_result($rs,"CompanyName");
  $conname=odbc_result($rs,"ContactName");
  echo "<tr><td>$compname</td>";
  echo "<td>$conname</td></tr>";
}
odbc_close($conn);
echo "</table>";
?>
</body>
</html>