Vous êtes ici :
Accueil Cours Développement web Création d'un site web en PHP et MySQL Introduction

Création d'un site web en PHP et MySQL : Introduction

Définition

PHP   est   un   langage   de   script   HTML  exécuté   du   côté   du   serveur.   Il   veut   dire   « PHP   :   Hypertext Preprocessor ».   Sa   syntaxe   est   largement   inspirée   du   langage   C,   de   Java   et   de   Perl,   avec   des améliorations spécifiques. Le but du langage est d'écrire rapidement des pages HTML dynamiques.

Historique

L'origine de PHP remonte à 1995 quand Rasmus Lerdorf a créé PHP/FI, une librairie de scripts Perl utilisés  pour  la  publication de son  CV  sur  son site personnel.   Au fur et à mesure des  évolutions,   la librairie   a   été   portée   en   C   et   agrémentée   de   nouvelles   fonctionnalités   pour   créer   des   pages dynamiques   simples   pour   le   web   et   accéder   à   quelques   sources   de   données.   PHP/FI   signifie Personal Home Page/Forms Interpreter. PHP/FI  2.0  sort   en  1997,  toujours  développé  par   une  seule   personne.   C'est   le  succès  :   50000  sites (1% des noms de domaines) disent l'utiliser ou le supporter. Les contributeurs affluent. PHP 3.0 sort en juin 1998, c'est la première version développée conjointement par Rasmus Lerdorf, Andi  Gutmans   et   Zeev  Suraski  et   entièrement   réécrite   (les  versions  précédentes   étaient  trop   lentes pour   une   application   commerciale).   Outre   les   performances,   PHP  3   est   modulaire   et extensible, permettant   de   lui   greffer   des   API   supplémentaires,   ce   qui   n'a   pas   manqué   avec   le   support   de nombreuses bases de données, de formats et de protocoles, une syntaxe plus cohérente et un support basique  de  l'objet.   Il  a  été  installé  sur  10%  du  parc  mondial   des  serveurs  web  avec  des  dizaines  de milliers de développeurs et des centaines de milliers de sites. Le   moteur   de   PHP   4   a   été   repensé   afin   d'en   améliorer   les   performances   pour   des   applications
complexes   et   d'augmenter   encore   la   modularité.   Un   nouveau   moteur   a   vu   le   jour,   appelé   Zend Engine   (contraction   de   Zeev   et   Andi).   PHP   4   sort   officiellement   en   mai   2000   et   apporte   des performances accrues, le supports de plusieurs serveurs web, les sessions,  une sécurité accrue.
Et   PHP  5  ,   un  cycle  qui  peut  durer   plusieurs  mois,   le  but  de  PHP  5 est une amélioration des performances du moteur Zend  (Zend Engine 2), un modèle objet étendu et très   proche   du   C++,   une   compatibilité   accrue   avec   de   nouveaux   standards   et   les   anciens   (RPC, XML,.NET, ...)

 

Utilisation pratique

PHP est utilisé dans les rubriques suivantes :

– Forums et Messageries
– Commerce électronique
– Banque/Comptes en ligne
– Publication en ligne
– Moteurs derecherche
– Tout ce que vous voulez,(sauf les jeux)


Résumons quelques sigles que nous allons utiliser par la suite.

  •  HTML:Hypertext Markup Language
  •  PHP:HypertextPreProcessor
  •  SQL:Structured Query Language
  •  MySQL:serveur de base de données et les outils pour y accéder
  •  LAMP:Linux– Apache– MySQL– PHP,le quatuor gagnant dess erveursweb.

 Pages statiques et dynamiques


Une page statique et une page écrite directement en HTML. Elle peut éventuellement incorporer du code  Javascript  lui donnant un semblant  de  'dynamisme'   mais  uniquement du côté du navigateur  et des données locales. Pour des  traitements plus  lourds nécessitant l'accès à une base de données, un  formatage de tableau
en   fonction   de   résultats,   une   recherche   poussée,   du   graphisme,   il   faut   passer   par   des   pages dynamiques   et   par   un   langage   qui   sera   exécuté   du   côté   du   serveur   :   ASP   sur   les   serveurs Microsoft/IIS, Perl, PHP...

 

PHP   est   un   langage   Server   Side   ou   côté   serveur.   Lors   du   chargement   d'une   page   PHP,   c'est   le serveur   qui  va  lire,   interpréter   et   exécuter   le  code.   Puis   il   renvoie  le  résultat,   généralement  sous  la forme de code HTML au navigateur. Ainsi le navigateur et l'utilisateur ne voient jamais le véritable
code PHP exécuté. De plus le résultat étant une page web classique en HTML, pas besoin d'installer sur le client des composants spécifiques (java, ...). Il n'y a donc pas de notion de vitesse d'exécution du côté du client, mais celle du serveur est prépondérante.

 

Scripts CGI

PHP   peut   être   utilisé   comme   langage   CGI (Common Gateway Interface).   Pour   rappel,   un   script   ou   programme   CGI   est   un programme   comme   un   autre   mais   dont   la   sortie   est   dédiée   à   un   navigateur,   par   exemple   un programme shell, C ou Perl qui sort du HTML. PHP étant un langage script comme un autre on peut l'utiliser dans ce cas, mais ce n'est pas forcément le mieux.

 

Pourquoi préférer PHP à d'autres langages comme ASP ?

ASP n'est pas entièrement un langage puisque ASP veut dire Active Server Page. ASP dispose bien entendu de ses propres API mais qui peuvent être accessibles via un autre langage. Il s'agit d'utiliser un   langage   (quelconque)   pour   créer   des   pages   dynamiques.   Nativement   disponible   avec   IIS  sous Windows,   il   ne   l'est   pas   par   défaut   avec   les   autres   systèmes   ou   serveurs   web   comme   Apache.   Il existe cependant des modules de compatibilité ASP pour Apache comme Apache::ASP qui reprend les   API   ASP   en   les   étendant   et   en   programmation   PERL.   Sous   Windows,   le   code   ASP   se   fait généralement   en   VBScript   ou   en   Jscript.   C'est   aussi   possible   sous   Unix/Linux   et   Apache,   mais   il faut   alors   se   tourner   vers   des   solutions   commerciales   (Sun   One   ASP,   Instant   ASP,   ...).    Sous Windows  ASP  et  VBScript  sont  utilisés  pour  l'accès aux  ActiveX,  composants  bien  pratiques  mais véritables   gruyères   pour   la   sécurité.   Il   n'existe   pas   à   ce   jour   de   portage   de   ActiveX   sur   d'autres systèmes que Windows. PHP  est   disponible  pour  toutes   les   plate-formes   et   permet   de  faire  la  même  chose,   sinon  plus,   que ASP et VBScript. N'oublions pas que PHP dispose de plus de 2700 APIs!

 

Ce que vous devez déjà connaître

Vous   devez   connaître   HTML  ainsi   qu'un   langage   de   programmation   procédural   (C   par   exemple). Une connaissance basique du SQL peut être nécessaire mais sera abordée.

 

Le nécessaire serveur


PHP  ne  sert   pas  seulement  à  faire  des  pages  dynamiques.   C'est   un  langage  interprété  qui  au  même titre   que   Perl,   Python   ou   TCL  est   capable   de   lancer   des   scripts   intéractifs   ou   non.   On   peut   même utiliser PHP pour créer des interfaces graphiques (extension GTK). Le minimum nécessaire et vital
pour   apprendre   PHP   est   donc   l'interpréteur   PHP   lui-même   sur   un   environnement   supporté   (Unix,Windows,Mac, ...). Si   on   parle   de   LAMP,   on   voit   bien   la   référence.   Un   système   Linux,   un   serveur   Web   Apache,   un serveur   de   bases   de   données   MySQL   et   un   interpréteur   PHP.   La   version   4   de   PHP   permet   de fonctionner  avec  IIS,  et  MySQL  existe aussi   pour  Windows.   On  peut  donc  utiliser  une architecture WIMP (Windows, IIS, MySQL, PHP) ou WAMP (Windows,  Apache, MySQL, PHP). Ajouter PHP à IIS, c'est laisser la porte ouverte à tous les vents,on préférera donc la seconde solution.
Les distributions Linux disposent déjà du nécessaire pour l'architecture LAMP et le paramétrage est assez simple. De plus le mode « user_mod » de Apache permet à chaque utilisateur de créer son site web dans un répertoire spécifique de son répertoire personnel. Sous Windows,c'est déjà un peu plus complexe à mettre en oeuvre manuellement.On emploie donc des   distributions   toutes   faites,   la   meilleure  se   nommant   EasyPHP.   Les  versions   1.6   et   1.7   sont   les meilleures pour développer. On peut ainsi développer son site sous Windows et le porter tel quel sur un serveur Unix.

 

Le nécessaire client


Pour   développer   il   suffit   d'un   simple   éditeur   mais   il   vaut   mieux   préférer   un   éditeur   plus   évolué supportant  la coloration syntaxique et  quelques  fonctions évoluées.   L'éditeur  HAPEdit   3 ou Notepad++ est  parfait pour   développer   en   PHP.   L'accès   aux   bases   MySQL   peut   se   faire   soit   depuis   un   navigateur
(phpMyAdmin) soit depuis une interface MySQLCC ou encore DBDesigner pour la conception. Pour les tests: un simple navigateur respectant les standards du web.

 

Le respect des standards

Le W3C est l'organisme international faisant loi dans le monde des standards du web. Il a défini une série de normes dont le HTML, le XML, le XHTML, les CSS, etc. Pourquoi respecter un standard ? C'est la garantie d'un bon fonctionnement et du bon affichage de manière identique de vos pages sur tous les navigateurs supportant ce standard. Avec   une   bonne   déclaration   (entête   HTML)   les   navigateurs   IE6,   Mozilla   1.5,   Opera   7,   Galeon, Konqueror, etc, sont compatibles avec ces standards. L'utilisation de balises propriétaires à un navigateur (blink par exemple) ou de vbscript (sous IE) est à   proscrire.   La   dernière   norme   HTML  valide   est   HTML   4.01   STRICT.   XHTML   qui   à   terme remplacera   définitivement   HTML   est   aussi   bien   supporté.   La   dernière   norme   CSS   et   la   3. Cependant dans ce cas préférez CSS-2 car quelques rares des navigateurs supportent CSS-3. Prenez l'habitude quand c'est possible de tester votre site sur deux ou trois navigateurs : IE6 car c'est le   plus   répandu,   Opera   car   il   est   extrêmement   respectueux   des   standards   et   Mozilla   car   c'est   le challenger   et   probablement  remplaçant  à  terme  de  IE  (qui  n'aura  plus  d'évolution  de  version  avant LongHorn).




Vous êtes ici :
Accueil Cours Développement web Création d'un site web en PHP et MySQL Introduction