Destinées à collecter les informations saisies par les visiteurs, les bases de données permettent, en outre, un tri et une recherche facile des informations sauvegardées... Leur pilotage par une page ASP ou PHP présuppose que vous sachiez les créer et les manipuler "à la main" !
Nous ne traiterons ici que les couples ASP/Access et PHP/MySQL, alors familiarisez-vous d'abord, si ce n'est pas déjà fait, avec MS Access (un cours ?) ou PhpMyAdmin (http://localhost/mysql/ si votre serveur Apache est activé !)
Même si vous ne disposez pas du logiciel MS Access, vous pouvez utiliser ses bases sous ASP (voire PHP) en allant voir cette fiche !
A l'instar de l'installation, la 1ère connexion à une base de données est une opération souvent difficile (surtout en ASP)... mais une fois que l'on a compris comment faire, la procédure devient naturelle et la connexion tellement pratique que l'on a du mal à s'en passer... Comme elle dépend de certains paramètres du serveur, l'effort est à renouveler à chaque fois que l'on change d'hébergement... Nous allons donc construire ici un fichier "_connexion" à inclure dans vos pages et qui devra être adapté à chaque système.
Alors, prenez votre temps pour cette nouvelle étape de votre progression, et si vous rencontrez des difficultés allez lire la F.A.Q. puis posez votre question... Pour d'autres couples, vous pouvez chercher dans les quelques liens associés à ce sujet !
Comment faire ?
Comme pour tout script, la syntaxe est très chatouilleuse... alors faites bien attention à la respecter scrupuleusement pour éviter l'apparition d'erreurs qui seront ensuite souvent difficiles à corriger !
Créez d'abord ma_base.mdb avec MSAccess puis :
ma_page.asp
<!-- #include file="_connexion.asp"-->
<% ' Déconnexion Conn.close : Set Conn=nothing %>
et pour la connexion, 2 possibilités :
Méthode 1 : DSN-less
_connexion.asp
<% ' Path long de la base de données dbPath = Server.MapPath("/rep_depro/ma_base.mdb") ' Création de l'objet permettant la connexion Set Conn = Server.CreateObject("ADODB.Connection") ' Connexion Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};" _ & " DBQ=" & dbPath %>
Méthode 2 : avec DSN
Panneau de configuration > Sources de donnees ODBC > Onglet DSN systeme (sources de données système) > Ajouter > Driver Microsoft Access Driver (*.mdb)
Sélectionner la base de donnée
Nom de la source : ma_base
_connexion.asp
<% ' Création de l'objet permettant la connexion Set Conn = Server.CreateObject("ADODB.Connection") ' Connexion Conn.Open "ma_base" %>
Le répertoire où se trouve la base de données doit avoir des droits en écriture !
<? // Paramètres persos $host = "localhost"; // voir hébergeur $user = "login"; // vide ou "root" en local $pass = "password"; // vide en local $bdd = "ma_base"; // nom de la BD // connexion @mysql_connect($host,$user,$pass) or die("Impossible de se connecter"); @mysql_select_db("$bdd") or die("Impossible de se connecter"); ?>
A noter : Si vous avez configuré PHP sur le port 81, il se peut que PHPMyAdmin ne fonctionne pas correctement... modifiez alors la variable $cfgPmaAbsoluteUri du fichier ../EasyPHP/phpmyadmin/config.inc.php ainsi :
/** * Your phpMyAdmin url */ $cfgPmaAbsoluteUri = 'http://127.0.0.1:81/mysql/';
Cette page n'affiche rien, bien sûr, mais permet juste de vérifier que votre connexion s'est bien produite... Si un message d'erreur s'affiche, vérifiez chaque caractère de votre script, puis regardez dans la F.A.Q. ci-dessous, enfin le cas échéant, posez votre question...