PHP est un langage de script permettant d’intégrer des instructions de programmation puissantes directement dans du code HTML. Le serveur traite les scripts PHP d’une page et génère dynamiquement la page HTML résultat des fonctions PHP. Le principal intérêt de PHP est que celui-ci permet de créer facilement des pages dynamiques résultats de calculs ou de requêtes SQL effectuées sur une base de données.
Qu’appelle t’on une page dynamique ? Deux appels consécutifs d’une même page dite dynamique peuvent donner deux pages HTML différentes (la page est statique au niveau du client web mais elle est générée dynamiquement au niveau du serveur).
PHP peut également générer des fichiers PDF, s’interfacer avec des serveurs de messagerie, des serveurs LDAP ou encore générer des images et graphiques GIF à la volée, etc..
L’utilisation d’un langage de script tel que PHP est un passage obligé pour réaliser un site à contenu évolutif et riche sans avoir à passer son temps à modifier sans cesse les pages du site : plusieurs personnes alimentent, à partir d’une simple interface Web, une ou plusieurs bases de données qui servent à générer le contenu du site en fonction des demandes des utilisateurs.
Javascript : le code Javascript est interprété par le client Web alors que le code PHP est directement interprété par le serveur Web (avec PHP seul le résultat est visible au niveau du client). De ce fait, Javascript est surtout utilisé pour la présentation et la manipulation d’une page html (menu déroulant, bannière, etc.. ) alors que PHP sert surtout à générer automatiquement du contenu à partir de bases de données.
Perl : Perl est le langage le plus populaire pour les solutions SGI. Il permet de supporter des technologies complexes tels qu’un moteur de recherche. Contrairement à PHP, Perl ne peut pas s’intégrer directement dans une page web ce qui implique une mise au point beaucoup plus délicate et plus complexe qu’avec PHP. Sans compter que la force de PHP réside dans le fait que celui-ci supporte directement les requêtes SQL.
ASP : ASP ou Active Server Page est la solution proposée par Microsoft avec son serveur Web IIS (Internet Information Server) pour créer des pages dynamiques. L’intérêt de ASP est que celui-ci utilise les fonctionnalités de Perl. Format propriétaire Microsoft, ASP inclue beaucoup moins de fonctionnalités que PHP. De ce fait si le serveur Internet n’est pas sous Windows, nous n’avons aucun intérêt à utiliser des scripts ASP au lieu de scriots ASP.
Installation de PHP et MySQL : se référer au site funix.org pour l’installation de PHP et MySQL à partir des sources ou des paquetages rpm.
A l’issu de l’installation de MySQL, le script mysql_install_db doit être lancé afin de créer les bases mysql et test.
L’étape suivante consiste à la mise en place des utilisateurs :
Mot de passe du root : mysqladmin -u root password 'mot-de-passe'
Pour ajouter un utilisateur phil qui sera un super utilisateur avec les mêmes droits que root :
$ mysql -u root -p mysql
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 3.23.23-beta-log
Type 'help' for help.
mysql> INSERT INTO user
-> VALUES('localhost','phil',PASSWORD('mot-de-passe'),
-> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
Query OK, 1 row affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Attention de ne pas remplacer localhost par le nom de votre machine lors de la saisie de la commande SQL ci-dessus.
Vérification du bon fonctionnement de PHP : écrivez un fichier nommé info.php contenant les lignes suivantes :
<?
phpinfo();
?>
Installation de phpMyAdmin :
phpMyAdmin est une application indispensable qui permet d’administrer entièrement un serveur MySQL en tant que super-utilisateur. Pour un simple utilisateur, il est possible d’utiliser phpMyAdmin pour administrer la base de donnée qui lui est allouée.
Exercice : téléchargez l’application phpMyAdmin sur le site phpinfo.net (Rubrique Applications puis catégorie Bases de données) puis installer et mettre en oeuvre l’interface d’administration du serveur MySQL.
Il existe de très nombreuses applications php prêtes à l’emploi couvrant la plupart des domaines : Annuaire, Bannières, Bases de Données, Livre d’Or, WebMail, Moteur de recherche, Portail, Newsletter, E-Commerce, Petites Annonces, Formation, Forum, Sondage, etc..
Avant de vous lancer dans de longs développements, assurez vous que l’application que vous souhaitez n’existe pas déjà... quitte à y effectuer quelques modifications afin de correspondre exactement à vos besoins.
phpMyChat est une application de Chat en PHP, supportant des bases MySQL, PostgreSQL et ODBC. Disponible en de nombreuses langues.
Exercice : téléchargez l’application phpMyChat sur le site phpinfo.net (Rubrique Applications puis catégorie Chat / IRC) puis installer et mettre en oeuvre le système temps-réel de discussion accessible sous la forme d’un sous-domaine de type chat.nom-machine
Phorum est le plus populaire et le plus complet des forums PHP. Phorum peut s’interfacer avec des bases de données MySQL ou PostgreSQL. Il est permet de mettre rapidement en place des forums de discussion en plusieurs langues sur plusieurs thèmes de discussion.
Exercice : téléchargez l’application Phorum sur le site phpinfo.net (Rubrique Applications puis catégorie Forum) puis installer et mettre en oeuvre le système temps-réel de discussion accessible sous la forme d’un sous-domaine de type forum.nom-machine.
Le package EasyPhp disponible sur le site easyphp.org permet d’installer très facilement PHP, MySQL et PhpMyAdmin sur une machine à base de Windows 98 ou Windows NT. Les dernières versions de ce package comprennent un programme d’installation qui se charge d’installer à votre place le trio Apache, PHP et MySQL.
La version Windows peut exploitable à la mise en oeuvre d’un serveur d’hébergement professionnel permet de mettre au point en local les sites sous Windows (avec par exemple le logiciel Dreamweaver Macromedia) sans avoir à recourir à de nombreux transfert par ftp.