[Helpc] Site en PHP: création et interrogation d'une base de données MySQL

  • From: "Shaka( Rudy)" <strub.rudy@xxxxxxxxx>
  • To: <helpc@xxxxxxxxxxxxx>
  • Date: Mon, 7 Oct 2002 23:38:11 +0200

Site en PHP: création et interrogation d'une base de données MySQL
Par Mohamed Afiri,
ZDNet France
6 août 2002 
Un site dynamique facilite la mise à jour des informations et le respect
d'une charte graphique. De la conception d'une base de données MySQL à
l'affichage de ses enregistrements à l'aide d'un script PHP, la création
d'un site web dynamique.
 

PHP pour People Hate Perl (les gens détestent Perl) diront les mauvais
langues. La véritable signification de cet acronyme est Personal Home
Page pour Page d'accueil personnelle. Tout démarre en 1994. Rasmus
Lerdof développe ce langage de script dans le but de conserver une trace
des internautes qui consultent son CV, via une base de données. Depuis,
plusieurs programmeurs ayant apporté leur pierre à l'édifice, nombreux
sont les sites dynamiques qui exploitent ce langage, tant il a bénéficié
d'améliorations au fil de ses versions. Outre sa gratuité et l'écriture
assez simple de scripts, ce langage open source et multiplate-forme
offre de nombreux atouts, notamment l'accès à des bases de données
MySQL. Un simple script PHP permet d'interroger une base MySQL
rapidement réactualisée, en vue de délivrer à vos visiteurs par exemple
les prochaines dates de la tournée de BRMC ou les dix dernières entrées
de votre site consacré aux DVD nippons. Le système de gestion de bases
de donnée (SGBD) MySQL a également le vent en poupe depuis plusieurs
années.

EasyPHP comme environnement de travail

Avant de se plonger dans l'écriture de scripts PHP, il reste à choisir
l'environnement de développement indispensable à la création d'un site
dynamique. Notre choix s'est porté sur EasyPHP; ce programme gratuit et
complet intègre toutes les applications indispensables à la création de
sites web dynamiques: le langage PHP version 4, le serveur Apache, le
SGBD MySQL et l'outil d'administration de base de données PhpMyADmi. Il
est, de plus, simple à installer et à utiliser.
Commencez tout d'abord par télécharger et installer
<http://logitheque.zdnet.fr/logi/cgi-bin/a_logi.pl?ID=9964> EasyPHP. Une
fois EasyPHP lancé, les serveurs MySQL et Apache sont exécutés par
défaut. Ces deux composants vont vous permettre respectivement
d'héberger votre base de données et de tester localement vos pages web.
Parmi les diverses possibilités qu'offre le langage PHP, figure de la
création de la base de données MySQL à l'affichage des données sur un
navigateur à l'aide d'un script PHP. Dans notre exemple - la publication
d'un fil d'actualités - la base de données n'intègre qu'une seule table.
Le côté relationnel (liaisons entre les tables) que permet le SGBD MySQL
n'est pas mis en avant par souci de simplicité.
Avant de construire votre base, il est nécessaire de bien définir vos
besoins. Notre fil d'actualités contient trois types de données: le
titre et le chapô de l'actualité, ainsi que sa date de publication. Un
champs baptisé "id", dont la valeur permet d'identifier de manière
unique un enregistrement de cette table, vient les compléter. On parle
de clé primaire dans le monde des SGBD. Le champ "id" contient des
nombres entiers qui seront auto-incrémentés. Nul besoin alors d'en
saisir la valeur pour chaque enregistrement de la table.

Création de la base de données MySQL

Une fois EasyPHP lancé, ses différents composants sont accessibles
depuis la zone de l'horloge de la barre des tâches de Windows. Suite à
un clic droit sur son icône, sélectionnez "Administration" dans le menu
contextuel qui apparaît. L'interface d'EasyPHP prend la forme de pages
web affichées sur votre navigateur. Cliquez sur le bouton "PhpMyAdmin"
présent sur la page d'accueil d'EasyPHP, afin de lancer cet outil
d'administration de bases de données. 
Dans le champ "Créer une base de données", baptisez votre base puis
cliquez sur "Créer". Allez au plus simple quant aux noms des champs:
faites court en évitant accents et espaces, sources d'erreurs par la
suite.
À présent, nommez votre table dans le champ "Créer une nouvelle table
sur la base..." et indiquez le nombre de champs désirés. Activez enfin
le bouton "Exécuter".


Saisissez à présent les noms des divers champs de votre table, ainsi que
le type de données qu'ils contiendront. Dans notre exemple, la base se
nomme "news" et son unique table "actus". Le champ id est un entier,
auto-incrémenté de type clé primaire et indexé. "titre" et "chapo"
doivent contenir du texte. Le champ date renvoie au jour et à l'heure
auxquels une actualité a été publiée. On lui affecte le type DATETIME,
plutôt que DATE. Vous obtiendrez des informations détaillées sur les
types de données acceptés par les tables MYSQL sur le site de l'Afup
<http://dev.nexen.net/docs/mysql/annotee/manuel_Column_types.php> 
. 
 <http://dev.nexen.net/docs/mysql/annotee/manuel_Column_types.php> 
 <http://images.zdnet.fr/img/reviews/2002/07/definition_champ.jpg>
Cliquez enfin sur "Sauvegarder" une fois les différents champs de votre
table définis. Une nouvelle page web s'affiche. Cliquez sur "Insérer"
pour saisir vos données. Une fois les valeurs du premier enregistrement
saisies, cochez la case "Insérer un nouvel enregistrement". Cliquez sur
"Exécuter" pour valider ce premier enregistrement. 
 <http://images.zdnet.fr/img/reviews/2002/07/definition_champ.jpg> Une
fois la saisie de vos données achevée, l'interrogation et l'affichage
des données passent par la création d'une page HTML. Un script PHP, dont
l'objectif est d'extraire de la base de données les informations
désirées du serveur MYSQL et leur affichage sur un navigateur, sera
inséré dans cette page. PHP est en effet un langage de script qui
s'exécute côté serveur, à l'inverse de Javascript par exemple. Commencez
tout d'abord par créer le répertoire en local dans lequel sera stocké
votre page. Il doit être créé par défaut dans le répertoire nommé "www"
d'EasyPHP. (C:\Program Files\EasyPHP\www\). Des alias créés à partir de
la page de démarrage d'EasyPHP permettent de placer votre répertoire où
bon vous semble sur votre disque dur.

 <http://images.zdnet.fr/img/reviews/2002/07/definition_champ.jpg>
Écriture du script PHP

 <http://images.zdnet.fr/img/reviews/2002/07/definition_champ.jpg> Un
simple éditeur peut servir à créer vos pages en PHP. Lancez par exemple
le bloc-notes de Windows. Collez les balises de référence d'une page
HTML, ci-dessous, dans votre éditeur de texte.
 <http://images.zdnet.fr/img/reviews/2002/07/definition_champ.jpg>
<http://images.zdnet.fr/img/reviews/2002/07/definition_champ.jpg> 









Le script PHP, voué à l'affichage des données d'une base MySQL, est ici
inséré entre les balises d'une page HTML. Un script PHP est lui-même
délimité par les balises . Et comme tout langage de développement, PHP
impose de respecter vigoureusement sa syntaxe et de connaître sa
bibliothèque de fonctions. Ainsi, le nom des variables d'un script
commence obligatoirement par le caractère "$", l'insertion de
commentaire par "//". Vous trouverez des didacticiels et des scripts PHP
prêts à l'emploi sur de nombreux sites web
(http://www.easyphp.org/liens.php3).
 <http://images.zdnet.fr/img/reviews/2002/07/php4.jpg> À l'aide d'un
script PHP, nous allons extraire les valeurs des champs: titre, chapo et
date des cinq dernières actualités publiées. Il faut tout d'abord isoler
de la table actus, les cinq derniers enregistrements. L'interrogation de
la base de données s'effectue à l'aide du langage de requêtes SQL.
Sélectionner les valeurs titre, chapo, date des trois derniers
enregistrements de la table actus, triés par date de publication, se
traduit en langage SQL par: SELECT titre,chapo,date FROM actus ORDER BY
date DESC LIMIT 5.
 <http://images.zdnet.fr/img/reviews/2002/07/php4.jpg> Le script PHP
ci-dessous fait appel à cette requête et quatre fonctions de PHP dédiées
à l'accès à une base de données MySQL. Les paramètres liés aux fonctions
"mysql_select_db" et "mysql_select_db" sont corrects dans ce script, car
notre serveur MySQL n'héberge qu'une seule base de données. La fonction
"echo" de PHP renvoie des chaînes de caractères au navigateur. Quant à
la mise en forme du texte au sein de cette fonction, elle fait appel à
des balises HTML. Enfin, le caractère "." sert à concaténer les
résultats dans le langage PHP.
 <http://images.zdnet.fr/img/reviews/2002/07/php4.jpg> 
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif> Enregistrez à
présent ce fichier dans le répertoire relatif à votre site. Ce fichier
doit porter pour extension ".php". D'un clic droit de la souris,
sélectionnez à présent "Web local" dans le menu contextuel d'EasyPHP.
Cliquez sur le nom de votre répertoire puis sur ce fichier. Voilà: les
cinq dernières actualités ou les données propres à votre base
s'affichent à présent dans votre navigateur. La seconde partie de ce
guide sera consacrée à la mise en ligne du site.
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif>  
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif>  
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif>  
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif> --->
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif> Shaka( Rudy)
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif> Helpc list owner
 <http://images.zdnet.fr/img/reviews/2002/07/php1.gif>
shaka.rudy@xxxxxxxxx
 <mailto:shaka.rudy@xxxxxxxxx>  
 <mailto:shaka.rudy@xxxxxxxxx>  

Other related posts:

  • » [Helpc] Site en PHP: création et interrogation d'une base de données MySQL