PHP Valid XHTML 1.1Cette page est conforme à la norme CSS!Mise à jour 09-2000
SOMMAIRE

Présentation
Les exemples détaillés
Les outils et liens
Télécharger les exemples
PRESENTATIONRetour en haut de page

Comparaison PHP et ASP


Dans leur principe de fonctionnement, PHP et ASP sont identiques : le serveur web, via un langage de script, génère à la volée une page HTML.

PHP présente l'avantage sur ASP de ne pas être une technologie propriétaire: il tourne notamment avec le serveur Apache, aussi bien sous Windows que sous Linux. Sur ce dernier système, il s'agit d'un logiciel libre, ainsi que Apache lui-même et la base de données Mysql.

Quant au langage, il ressemble à du C simplifié ou à d'autres langages comme Java ou Perl. La correspondance avec ASP est totale. Une application écrite en PHP a été transposée en ASP sans rien réécrire, simplement en transposant ligne à ligne la syntaxe des instructions, et spécialement celles des accès aux bases de données, car Mysql était remplacée par Access.

On notera à ce sujet que la méthodologie décrite dans la page ASP est valable ici aussi. En écrivant des routines d'accès aux bases de données, cet aspect pourrait être quasiment gommé de l'application, seules les routines spécifiques devant être réécrites ou modifiées.

A noter qu'il existe des logiciels permettant de convertir automatiquement des pages ASP en PHP.

LES EXEMPLES DETAILLESRetour en haut de page

Présentation   Voir le résultat

L'application exemple prise ici est une gestion de bibliothèque personnelle.
Les fonctions nécessaires à cette application sont :
  • l'enregistrement des livres (ainsi que les modifications et suppressions)
  • l'enregistrement des tables annexes ( auteurs et catégories)
  • l'affichage de statistiques
La base utilisée est MySQL.
La présentation des pages est homogène :
. bandeau en haut de l'écran (fond rouge),
. menu sur la gauche de l'écran (fond bleu),
. page écran (fond jaune). Cette page écran est à son tour décomposée en une ligne de titre, un corps et une ligne de pied pouvant contenir les boutons. Les boutons peuvent être classiques ou sous forme graphique; dans ce cas une image se modifie au passage de la souris sur le bouton.

Certaines pages ont un usage particulier, qui illustre les possibilités de mutualiser le code d'une application. Ces pages sont écrites sous forme de fichiers .inc à inclure quand nécessaire dans une page.

zibase.inc
Donne des fonctions de remplissage des listes déroulantes, qui peuvent être appelées à divers endroits de l'application.

zicadregen.inc
Donne des fonctions d'affichage (structure bandeau/menu/detail, titre/corps/pied des pages, ...).

zicattable.inc
Fournit par une approche objet des fonctions d'accès à la base de données pour la table des catégories.
On en tire deux avantages :
le code détaillé de la mise à jour de la base est isolé et peut être plus facilement mis au point ou adapté à d'autres besoins,
le code de la page utilisant ces fonctions est simplifié et donc plus clair car il ne comporte qu'une ligne d'appel à une méthode de l'objet base de données.

ziconst.inc
Permet, par l'utilisation de constantes, de définir certains comportements du logiciel. On peut par exemple définir les valeurs des paramètres d'accès en fonction de l'hébergeur (mots de passe, nom de la base, ...)
Un autre intérêt est constitué dans l'exemple par la constante appelée XC_BOUTONS qui permet de définir si les boutons seront classiques ou graphiques. Le découpage bien structuré de l'application en fonctions élémentaires permet, sans remettre en cause le tout, d'avoir le choix de la présentation; seule la routine d'affichage du bouton doit prendre en compte cette particularité, les autres fonctions n'en sont pas affectées.

Détail des fonctions


Page de sommaire
Cette page constitue la page d'accueil de l'application et présente le menu.

Page Les auteurs
Affiche une liste des auteurs existants dans la base.
En cliquant sur une ligne, un petit carré bleu s'affiche afin de mettre en évidence la ligne choisie. Cette fonction est gérée en Javascript.

Le pied de page présente les boutons :

  Précédent Défiler la liste vers le début
  Suivant Défiler la liste vers la fin
  Nouveau Ajouter un auteur à la base
  Modifier Modifier la fiche de l'auteur choisi (avec le carré bleu)
  Supprimer Supprimer la fichie de l'auteur choisi

Page Les catégories
Affiche une liste des catégories existantes dans la base.
La mise à jour ne s'effectue pas, comme pour les auteurs et les livres, en choissant la ligne puis en enregistrant les données dans une page séparée, mais directement sur la liste de présentation.
Pour ces raisons, le bas de page ne présente que 3 boutons :

  Précédent Défiler la liste vers le début
  Suivant Défiler la liste vers la fin
  Valider Effectue les ajouts, les modifications et suppressions puis défile d'une page vers l'avant

Page Les livres
Cette page fonctionne sur le même principe que la table des auteurs. La particularité en est le renvoi sur la fiche de l'auteur.

Page Modifier un livre
Cette page permet la mise à jour d'un livre. En création et en suppression, c'est une page similaire qui affiche les données.
Elle ne présente que 2 boutons en pied :
  Valider Accepte les modifications puis réaffiche la liste des livres
  Annuler Abandonne la modification en cours et réaffiche la liste des livres

Page Statistiques
Présente un histogramme à barres horizontales du nombre de livres par auteur et par catégorie.
Voir le résultat


LES OUTILS ET LIENSRetour en haut de page

Serveur web PWS

Fourni avec Windows 98 (dans le répertoire Adds-on du CD).
Support de ASP intégré avec base Access.

Serveur Apache

Disponible sous Windows 98 et Linux.
Version W98 sur le site http://www.phpfrance.net/

Base de données MySQL

Disponible sous Windows 98 et Linux.
Voir les sites PHP pour un lien sur Mysql ou sur le site http://www.mysql.com/

Edit Plus

Editeur offrant la coloration des sources pour différents langages.
Disponible sur http://www.telecharger.com/

Quelques sites sur PHP

http://www.allhtml.com/   Tutoriels et exemples
http://www.nexen.net/   Tutoriels, exemples et documentation