L'intérêt d'accéder à une base Access en PHP est de pouvoir utiliser un simple navigateur Web depuis n'importe quel poste sans avoir besoin d'installer Access de partout et donc d'acheter une licence pour chaque poste.
Nous utiliserons un poste Windows 7 Professionnel x64 pour cet article.
Ouvrir le panneau de configuration puis cliquer sur "Programmes" puis sur "Activer ou désactiver des fonctionnalités Windows".
Dans la liste des fonctionnalités, cocher "Services Internet (IIS)".
Déployer l'arborescence et cocher "CGI" afin que PHP puisse fonctionner.
Depuis le poste ou est installé IIS, ouvrir l'adresse "http://localhost" dans un navigateur. Vous devez obtenir l'affichage ci-dessous. Depuis un autre poste, remplacer localhost par l'adresse IP du poste où est installé IIS.
Pour rappel, "localhost" est équivalent à l'adresse IP 127.0.0.1 qui veut dire sur n'importe quel ordinateur "soi-même".
Par défaut le serveur WEB IIS affiche la page "iisstart.html" située dans le dossier "c:\inetpub\wwwroot" (voir capture d'écran ci-dessous).
Installer PHP pour Windows (php-5.3.17-nts-Win32-VC9-x86.msi) avec les options par défaut, à la question "Select the Web Server you wish to setup", cocher "IIS FastCGI".
Créer un fichier "index.php" dans le dossier par défaut de IIS ("c:\inetpub\wwwroot") contenant le code PHP ci-dessous :
phpinfo();
Depuis le poste ou est installé IIS, ouvrir l'adresse "http://localhost/index.php" dans un navigateur. Vous devez obtenir l'affichage ci-dessous.
Ouvrir le panneau de configuration, Sélectionner afficher par petites icônes
Cliquer sur "Outils d'administration".
Si vous avez un système 32 bits, double cliquer sur "Sources de données (ODBC)" et cliquer ici pour passer à la suite.
Si vous avez un système 64 bits, faire un clic droit sur "Sources de données (ODBC)" et cliquer sur "Propriétés" comme le montre la capture d'écran ci-dessous.
Changer le chemin vers le fichier "odbcad32.exe" de %windir%\system32\ vers %windir%\sysWOW64\ puis cliquer sur "Ok".
Double cliquer sur "Sources de données (ODBC)"
Cliquer sur l'onglet "Source de données système" puis sur "Ajouter"
Sélectionner le type de source de données, ici : Microsoft Access Driver (*.mdb)
Donner un nom à la source de données. C'est ce nom qu'il faudra utiliser dans votre code PHP.
Cliquer ensuite sur "Sélectionner".
Sélectionner votre fichier .mdb (base de données Microsoft Access).
Cliquer sur "OK" pour valider.
Cliquer sur "OK" pour valider et fermer le gestionnaire de sources ODBC.
La configuration de la source de données ODBC est terminée.
Le test a été réalisé avec une base de données "Sommets.mdb" contenant une table comme le montre la capture d'écran ci-dessous :
Exemple de code PHP pour exécuter une requête sur notre base de données Access :
<?php
$conn=odbc_connect('ODBC_Sommets','','');
if (!$conn) {exit("Echec de connection : " . $conn);}
$sql="SELECT * FROM Sommets";
$rs=odbc_exec($conn,$sql);
if (!$rs) {exit("Erreur dans la requête SQL");}
$ListeSommets = "";
while (odbc_fetch_row($rs)) {
$ListeSommets = $ListeSommets . '<tr><td>' . odbc_result($rs, "Massif") . '</td><td>';
$ListeSommets = $ListeSommets . odbc_result($rs, "Nom") . '</td><td>';
$ListeSommets = $ListeSommets . odbc_result($rs, "Altitude") . '</td></tr>' ;
}
odbc_close($conn);
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<title>Les sommets en PHP !</title>
</head>
<body>
<h1>Tableau des sommets</h1>
<table border=1 cellspacing=0>
<tr><td>Massif</td><td>Nom</td><td>Altitude (m)</td></tr>
<?php echo $ListeSommets; ?>
</table>
</body>
</html>
Bien entendu, il est possible d'exécuter des requêtes d'ajout, de suppression, de mise à jour...
Résultat obtenue dans le navigateur :
Article connexe : Premiers pas en PHP