• Aucun résultat trouvé

Introduction à PHP. Au sommaire de ce chapitre

N/A
N/A
Protected

Academic year: 2022

Partager "Introduction à PHP. Au sommaire de ce chapitre"

Copied!
12
0
0

Texte intégral

(1)

1

Introduction à PHP

Au sommaire de ce chapitre

✔ Origines de PHP

✔ Atouts de PHP

✔ Fonctionnement de PHP avec un serveur Web

✔ Premiers pas

✔ A quoi ressemble un script PHP ?

✔ Sauvegarde des données

✔ Réception de la saisie des utilisateurs

✔ Choix entre plusieurs possibilités

✔ Répétition du code

✔ Conclusion

Ce chapitre est un chapitre d’introduction à PHP. Vous apprendrez ses origines, à quoi il ressemble et pourquoi il représente actuellement une des meilleures technologies pour la gestion, par le serveur, d’un site web dynamique, voire même pour créer de véritables applications web. Vous y découvrirez également quelques-unes des principales fonctionna- lités du langage.

Au début, PHP représentait une simple macro de remplacement. PHP a évolué au rythme auquel apparaissent les nouvelles technologies sur le Net. C’est aujourd’hui un produit effi- cace et plein de bonnes surprises. En outre, c’est une technologie offerte gratuitement, disponible sous UNIX comme sous Windows, sur votre propre machine de développement et auprès de votre hébergeur web.

Inutile, probablement, de vous présenter Internet, l’intranet ou l’extranet, et encore moins le Web : vous savez sans doute qu’aujourd’hui les anciens sites, constitués simplement d’une collection de pages HTML statiques, font place de plus en plus à des applications

(2)

6 Partie I Programmation avec PHP

Web. Conséquence : les webmasters doivent prendre une décision souvent difficile pour choisir, parmi une centaine de technologies disponibles, celle qui conviendra le mieux à leur site.

Des exemples en ligne

De nombreux exemples supplémentaires ont été préparés pour accompagner l’adaptation française de cet ouvrage. Code source et exemple de résultats sont disponibles à l’URL http://www.cgsa.net/

php/campusPress et, pour chaque exemple, à une adresse spécifique notée comme celle-ci : http://www.cgsa.net/php/campusPress/?exemple=polymorphisme

Ce chapitre vous fait entrer de plain-pied dans l’univers PHP. Plusieurs petits exemples sont à votre disposition ; vous pouvez facilement les adapter à votre situation, tout comme les autres scripts que vous rencontrerez dans ce livre. En effet, nous nous sommes appliqués à toujours élaborer des programmes que vous pourrez aisément personnaliser et qui vous apporteront une solution réellement exploitable. Toutefois, ne vous découragez pas si vous ne comprenez pas tout, nous aurons l’occasion d’y revenir plus en détail dans les prochains chapitres.

Origines de PHP

Des idées simples aboutissent à de magnifiques créations. PHP est né avec le site de Rasmus Lerdof : une page personnelle, avec son CV, qui permettait à l’origine de conserver une trace des utilisateurs. A l’époque, PHP supportait déjà les requêtes SQL. Comme cela arrive souvent sur le Web, des internautes ont rapidement voulu leur propre copie du programme.

Rasmus a donc décidé de mettre en ligne la version 1.0 de PHP (Personal Home Page).

A la surprise de son auteur, PHP est devenu rapidement très populaire. Conséquence : une multitude de suggestions ont atterri dans sa boîte aux lettres. Certes, PHP 1.0 pouvait contrôler la saisie des utilisateurs et remplacer certaines commandes HTML. Mais les utili- sateurs commençaient à se demander si PHP n’était pas capable de mieux faire : boucles, structures conditionnelles, etc. A l’instar de tous les autres langages de programmation modernes, la seconde étape logique de l’évolution de PHP consistait effectivement à adop- ter des fonctionnalités plus puissantes. Rasmus étudia donc la structure des autres langages, il se documenta à propos de YACC et de Bison GNU. Résultat : PHP 2.0.

La version 2.0 permet au développeur d’intégrer des instructions de programmation puis- santes directement dans du code HTML. Concrètement, un script PHP peut analyser les données soumises par un formulaire HTML, communiquer avec des bases de données et effectuer des calculs complexes à la volée. Et l’exécution de tels scripts est très rapide, car le code source du langage est directement compilé dans le serveur Web Apache. Ainsi, les instructions PHP sont exécutées à l’intérieur même du serveur, sans aucune ressource supplémentaire, contrairement aux CGI (Common Gateway Interface).

(3)

A partir de cette version 2, PHP a représenté un outil crédible pour le développement Web, et plusieurs sites commerciaux n’ont pas hésité à l’adopter. En 1996, Clear Ink mit en ligne SuperCuts (http://www.supercuts.com) et utilisa PHP pour créer un système de naviga- tion personnalisé. En janvier 1999, plus de 100 000 sites avaient adopté le langage PHP.

Une communauté de développeurs s’est créée autour du langage. De nouvelles fonctions ont ainsi pu voir le jour et de nombreux bugs ont été rapidement résolus. Zeev Suraski et Andi Gutmans ont apporté des fonctions essentielles en écrivant un nouveau moteur d’analyse, celui de la version 2.0 provoquant de nombreuses erreurs. C’est pourquoi Rasmus décida de créer la version 3.0 de PHP et demanda à plusieurs programmeurs de le rejoindre dans ce travail. Outre Zeev et Andi, citons également Stig Bakken, Shane Caraveo et Jim Winstead.

Après six mois de développement, la version 3.0 de PHP sortit le 6 juin 1998.

Versions de PHP

En mai 2000, la version officielle de PHP est la version 3.0.16 et une version Beta de PHP4 (la version Release Candidate 1) est également disponible mais n’inclut pas encore toutes les librairies nécessaires.

Vous pouvez télécharger les dernières versions sur le site officiel de PHP ou un de ses nombreux sites miroirs. Vous y trouverez les sources en langage C et des exécutables et dll pour Windows, ainsi que de nombreux liens et ressources.

http://www.php.net

Atouts de PHP

Les sceptiques se posent tous la même question : pourquoi devrais-je apprendre le langage PHP ? Le temps des sites Web statiques développés avec des pages HTML et quelques scripts CGI est définitivement révolu. Désormais, les catalogues de produits des entreprises doivent pouvoir être convertis pour être consultables en ligne, à travers l’interface d’une boutique électronique acessible 24 heures par jour. La question n’est plus de savoir s’il faut passer d’un site statique à une application web, mais le problème posé est celui du choix des outils.

Perl est le langage le plus populaire pour les solutions CGI et il a été adopté pour supporter des technologies Web complexes tels CyberCash ou le moteur de recherche EWS d’Excite.

Microsoft, quant à lui, propose ses ASP (Active Server Pages) avec son serveur Web IIS (Internet Information Server). On trouve également d’autres solutions, telle celle d’Allaire, ColdFusion. Certaines sont payantes, d’autres gratuites. Pour les découvrir, n’hésitez pas à vous connecter au site ServerWatch.com.

Quels sont les avantages de PHP, comparé à tous les autres langages ? Pour répondre briè- vement, il est le meilleur. Son code est plus rapide à programmer et à exécuter. De plus, un même script peut tourner sur différents serveurs et différents systèmes d’exploitation. PHP

(4)

inclut, en standard, de nombreuses fonctionnalités, qui, dans d’autres environnements, ne se retrouvent que sous forme d’extensions supplémentaires.

PHP est gratuit et répond à la philosophie "open source". N’importe qui peut se connecter sur le site et télécharger le code source du langage. Notez toutefois qu’une distribution binaire existe et qu’elle peut également s’installer dans un environnement Windows. Il y a donc peu de risques à essayer PHP et vous ne devrez verser aucun droit pour développer vos propres applications Web, à la différence d’autres langages tels ColdFusion d’Allaire ou Tango de Pervasive. Des géants comme Netscape ont rapidement compris l’avantage de diffuser le code source de leur produit sur Internet.

PHP fonctionne sous UNIX, Windows 95/98, Windows NT et Macintosh. Il a été initiale- ment conçu pour être intégré dans le serveur Web d’Apache, (ce dernier est également gratuit, son code source distribué librement, ses versions tournent sous UNIX et sous Windows) et représente actuellement le serveur le plus utilisé sur Internet. Mais des versions commerciales d’Apache (WebTen ou Stronghold, par exemple) supportent sans aucune diffi- culté PHP. Idem pour presque tous les autres serveurs, dont Microsoft IIS. Ainsi, les mêmes scripts peuvent s’exécuter à partir de différentes plates-formes sans subir aucune modifica- tion. En outre, la version 4 du langage devrait supporter la norme ISAPI, ou NSAPI, qui offre de meilleures performances sur les serveurs de Microsoft et de Netscape.

PHP est librement modifiable et il a été conçu pour intégrer de multiples extensions. Cela n’est pas étonnant, car il est programmé en C. De plus, PHP propose une API (Application Programming Interface) très stable. Les développeurs expérimentés pourront ainsi aisé- ment ajouter de nouvelles fonctions.

PHP est uniquement dédié au développement de pages Web dynamiques, contrairement à des langages généraux (Perl, C et Java, entre autres), qui représentent d’excellents outils de programmation, mais restent très difficiles à manier pour le Web. Les applications PHP sont rapides à mettre en place et faciles à créer, car leur code est directement intégré dans les pages HTML.

Le support technique est également gratuit. Envoyez vos questions à une mailing list consa- crée à PHP et vous recevrez en quelques heures la réponse à votre problème. Un système d’archives, disponible sur le site de PHP, permet d’obtenir une solution clairement commentée à la majorité des questions.

Un groupe de discussion francophone

Vous pouvez aussi poser vos questions et apporter vos contributions au groupe de discussion PHP francophone :

fr.comp.infosystemes.www.auteurs.php

(5)

PHP est un langage très populaire. Plusieurs fournisseurs d’accès ou hébergeurs de sites l’ont d’ores et déjà adopté, autorisant ainsi les utilisateurs à développer leurs propres appli- cations Web sans exposer leur serveur aux risques des CGI. De plus, de tels sites peuvent migrer d’une machine à l’autre sans aucune difficulté et on peut leur ajouter de nouvelles fonctionnalités en toute simplicité.

Plusieurs techniques utilisées dans d’autres langages peuvent parfaitement s’appliquer à PHP. De fait, le C et le Perl ont fortement inspiré PHP. Ainsi, si vous avez déjà l’expérience d’un de ces deux langages, l’apprentissage de PHP ne présentera aucune difficulté.

A l’inverse, après avoir appris les fondements de ce nouveau langage, vous pourrez appli- quer de nombreuses techniques à plusieurs autres langages, pas seulement le C et le Perl, mais aussi Java et d’autres outils structurés comme le C. Cela représente un réel atout que vous ne retrouverez pas dans d’autres langages si vous utilisez des éditeurs visuels tels Tango Entreprise ou Microsoft Visual Interdev pour apprendre à programmer.

Fonctionnement de PHP avec un serveur Web

Etudions d’abord la procédure usuelle qui permet d’envoyer une page Web à un navigateur.

Tout commence lorsque ce dernier émet une requête pour afficher un document HTML à partir d’une URL. Celle-ci indique l’adresse du serveur, l’emplacement et le nom du fichier.

Le serveur reçoit également d’autres informations : version du navigateur, système d’exploitation du client, adresse IP, etc. Beaucoup d’autres données peuvent ainsi être transmises au serveur, par le biais d’un formulaire par exemple.

Si la requête concerne l’affichage d’une page HTML, le serveur recherche simplement le document, indique au navigateur qu’il va recevoir du texte (au format HTML) et envoie le contenu du fichier. Le navigateur reçoit le contenu de la page et commence à l’afficher à l’écran en interprétant tout le code HTML. Cela n’a rien de bien compliqué si vous connais- sez déjà un peu la programmation Web.

Voyons maintenant le traitement des CGI. Quand un serveur reçoit une requête qui pointe vers un script, il ne se contente plus d’envoyer le contenu du fichier, il doit auparavant l’exécuter. De cette façon, le script génère du code HTML que le serveur pourra ensuite envoyer au client. Du côté du navigateur, ce dernier se limite à la réception du code HTML et à son affichage. Bref, c’est le serveur qui se charge du gros du travail, ce que l’on a un peu trop souvent tendance à oublier…

Quand une page PHP est incluse dans la requête d’un client, la procédure est exactement la même que celle que nous venons de voir avec les CGI. En fait, le script est d’abord traité par l’analyseur PHP qui générera le code HTML que le serveur enverra ensuite au client.

(6)

Premiers pas

Apprendre un nouveau langage de programmation ne se limite pas à la lecture d’un livre, si vous souhaitez réellement le maîtriser. La lecture et la réflexion ne constituent que les premières étapes. En fait, la meilleure approche consiste à essayer de programmer par vous-même en recopiant le code du livre. Si cela fonctionne, effectuez quelques modifica- tions et testez votre nouveau script.

Toutefois, vous avez besoin d’un environnement capable d’exécuter les scripts PHP pour vous adonner à cette technique. Comme vous le constaterez rapidement, il existe une multi- tude de services d’hébergement sur le Web prêts à accueillir des applications PHP, dont quelques hébergeurs francophones qui proposent ce service gratuitement. Si vous utilisez l’un de ces services, il vous suffit de connaître l’extension des fichiers PHP qui permettront au serveur de les reconnaître (en général, .php3 ou .php) et de les transférer dans votre répertoire. En effet, les serveurs Web savent comment traiter certains documents à partir de leur extension.

Si vous avez besoin de configurer votre propre environnement d’exécution, plusieurs possi- bilités s’offrent à vous. La première étape consiste à choisir un serveur Web (Apache, par exemple). Petite remarque : avec Apache, PHP s’installe sous la forme d’un module inté- gré, ce qui permet au moteur de script de s’exécuter très rapidement. Explication : aucun nouveau process n’est créé chaque fois que le serveur doit envoyer une page. A l’inverse, avec un autre serveur, PHP doit être installé sous la forme d’un exécutable indépendant.

A l’heure où nous écrivons ces lignes, Apache est le serveur le plus utilisé sur le Web (plus de 50 % des sites tournent sous Apache ou sous d’autres serveurs libres et gratuits). Dans ces conditions, tout le monde peut compiler et installer son propre serveur avec le module PHP intégré (ce qui ne sera toutefois pas toujours une partie de plaisir pour les débutants).

C’est pourquoi, vous trouverez un "pas à pas" technique et parfaitement bien détaillé sur le site de PHP, www.php.net.

Lorsque Shane Caraveo a rejoint le projet PHP3, il a porté le langage PHP sur les plates- formes Windows. Ainsi, ce langage fonctionne sous la forme d’un moteur de script dans IIS, mais un dispositif de librairie dynamique (ISAPI) est en cours de développement. Ce sera, en quelque sorte, l’équivalent du module Apache. Cela dit, par expérience, l’environnement PHP fonctionne mieux avec le serveur Xitami de Imatix, disponible sur notre CD-ROM.

Tous les serveurs Web supportent les fonctionnalités des CGI de façon très différente. Si vous rencontrez des difficultés pour déclarer PHP dans la configuration de votre serveur, posez vos questions à l’excellente mailing list officielle du langage.

(7)

Mailing list

Attention : la mailing list officielle de PHP est extrèmement chargée : environ 300 messages par jour ! Ne vous abonnez que si vous êtes capable d’ingurgiter ce nombre de messages : php3-subscribe

@lists.php.net

Il est également possible de s’abonner à une liste de synthèse qui ne véhicule que quelques messages par jour : php3-digest-subscribe@lists.php.net ou à une liste francophone php3-france-subscribe

@onelist.com

Sinon, préférez les groupes de discussion. Vous pouvez, sans formalité, lire et écrire dans le groupe de discussion francophone déjà cité : fr.comp.infosystemes.www.auteurs.php et lire les messages de la mailing liste officielle (en anglais), sans nécessairement vous y abonner, en consultant news.netimages .com ou new.php.net

Les archives sont disponibles à http://www.tryc.on.ca/archives/php3/ et une recherche sélective à http://www.php.net/search.php3

A quoi ressemble un script PHP ?

Les instructions PHP s’intègrent directement dans les pages Web. A l’instar des balises HTML, elles commencent par < et se terminent par >. Pour les distinguer des autres balises, PHP ajoute un point d’interrogation (?) aux chevrons, de cette façon : <? et ?>. Tout le texte compris à l’extérieur de ces signes est envoyé directement au navigateur, sans aucune inter- vention de l’analyseur PHP. Tout ce qui est contenu dans la balise PHP sera traité par ce dernier.

Pour s’adapter à la norme XML et rester compatible avec certains éditeurs visuels tel Microsoft FrontPage, vous disposez de deux syntaxes. La première, utile pour la compati- bilité avec XML, consiste à insérer "php" juste après le signe d’ouverture de la balise PHP (<?php … ?>). La seconde consiste à utiliser une balise de script comme si vous deviez déclarer un morceau de code JavaScript dans votre page. Reportez-vous à l’Annexe D pour voir comment ces différentes syntaxes fonctionnent. En ce qui nous concerne, nous utili- sons les simples signes <? et ?> pour construire tous nos exemples.

Comme le code PHP s’intégre dans les fichiers HTML, ses instructions, à l’instar du code HTML, s’écrivent dans le format texte (ASCII). Dans ces conditions, avec un Macintosh, l’éditeur de texte SimpleText suffit largement. Sous Windows, NotePad fera parfaitement l’affaire, mais nous lui préférons cependant UltraEdit 6.0 (http://www.ultraedit.com) ou TextPad 4.2 (http://www.textpad.com) qui permettent de mettre la syntaxe PHP en évidence. Sous UNIX, vi et emacs sont tout à fait appropriés pour la création de tels scripts.

Cela dit, vous pouvez utiliser n’importe quel éditeur de texte pour arriver à vos fins.

La Figure 1.1 reproduit une simple page HTML qui intègre une ligne de code PHP (voir Listing 1.1). Lorsque ce document est traité par le module PHP, le code contenu entre les signes <? et ?>, est remplacé par la date du jour.

(8)

Listing 1.1 : Affichage de la date courante

<HTML>

<HEAD>

<TITLE>Listing 1-1</TITLE>

</HEAD>

<BODY>

Today’s Date: <? print(Date("l F d, Y")); ?>

</BODY>

</HTML>

Les espaces, tabulations et retours chariot ne sont pas interprétés par PHP. Cela dit, rien ne vous interdit de les utiliser pour rendre votre code plus lisible. Le Listing 1.2 permet d’obtenir le même résultat que le script précédent mais, comme vous pouvez le remarquer, son code est beaucoup plus lisible.

Notez également que le listing contient des commentaires introduits par le signe slash (/) suivi d’un astérisque (*). Tous les caractères compris entre /* et */ seront ignorés par l’analyseur PHP. N’hésitez pas, dans ces conditions, à les utiliser pour expliquer votre code, ce qui sera fort utile au moment de mettre à jour votre programme.

Mais ce n’est pas la seule façon d’insérer des commentaires dans votre script. Si vous inscrivez une phrase sur une seule ligne qui ne doit pas être traitée par l’analyseur PHP, vous pouvez la faire précéder d’un double slash (//) ou du signe livre (£), beaucoup plus rarement utilisé.

Un commentaire ne coûte pas cher et peut rapporter gros N’hésitez pas à utiliser des commentaires et à aérer votre code.

Utilisez la syntaxe C, c’est-à-dire /* … */, pour créer des blocs de commentaires et pour éliminer temporairement des petits morceaux de code.

Figure 1.1

La date du jour avec PHP.

(9)

Utilisez la syntaxeC++ c’est-à-dire // pour les commentaires en fin de ligne, ou occupant toute une ligne ou simplement pour créer des séparations dans votre source.

Attention : "#…", ";…", "{…}" et "<!--…-->" ne sont pas, en PHP, des moyens de placer des commentaires…

Après avoir ignoré les espaces et les commentaires dans le Listing 1.2, l’analyseur PHP rencontre le premier terme : print. Cette commande PHP permet d’envoyer du texte au navigateur ; le reste de la ligne sera ensuite évalué. S’il génère un résultat, celui-ci sera alors envoyé au navigateur.

Où se termine notre ligne ? A l’instar du langage C ou de Java, PHP utilise le signe point- virgule (;) pour déterminer la fin de la ligne (JavaScript et BASIC utilisent le retour chariot).

Listing 1.2 : Un code plus lisible

<HTML>

<HEAD>

<TITLE>Listing 1-2</TITLE>

</HEAD>

<BODY>

Today’s Date:

<?

/*

* Afficher la date courante */

print(Date("l F d, Y"));

?>

</BODY>

</HTML>

L’instruction print(Date("l F d, Y")) appelle une fonction intitulée Date et lui passe, comme argument, tout ce qui est contenu entre les parenthèses. Cet argument permet, dans notre exemple, de définir le format de la date : jour, mois et année sur quatre chiffres.

La chaîne de caractères contenue entre guillemets est appelée constante. Ainsi, PHP sait, lorsqu’il rencontre des guillemets, qu’il doit interpréter les caractères à l’intérieur comme du texte. Sans ces guillemets, PHP en déduit que vous appelez une fonction ou que vous utilisez une commande du langage lui-même, voire un nombre. En d’autres termes, le premier guillemet indique le début du texte à lire, et le dernier guillemet la fin.

Notez que la commande print est inscrite en minuscules et que Date a, ici, une majuscule initiale. PHP ne tient pas compte de la casse des caractères de l’intitulé des fonctions inter- nes (il n’en va pas de même pour les variables et pour les fonctions que vous créerez vous- même). Ainsi, Print, PRINT et PrInT correspondent à des appels valides pour une seule et même fonction interne.

(10)

La casse des noms de fonction

Dans ce livre, la plupart des noms de fonctions internes vous seront proposés en minuscules, comme getrandmax.

Libre à vous de décider ensuite de la casse à utiliser.

Les programmeurs professionnels préfèrent en général quelque chose comme getRandMax qui permet mieux de comprendre ce que le nom signifie.

Sauvegarde des données

Il est souvent nécessaire de sauvegarder des valeurs pour les utiliser plus loin dans votre script. A cet effet, PHP (comme les autres langages de programmation) emploie des varia- bles. Elles permettent d’attribuer un nom à des informations que vous souhaitez conserver et manipuler. Le Listing 1.3 illustre le rôle des variables.

Listing 1.3 : Assigner des valeurs aux variables

<?

$YourName = "Leon";

$Today = date("l F d, Y");

$CostOfLunch = 3.50;

$DaysBuyingLunch = 4;

?>

<HTML>

<HEAD>

<TITLE>Listing 1-3</TITLE>

</HEAD>

<BODY>

Today’s Date:

<?

/*

Figure 1.2

Les variables s’affichent sur la page.

(11)

** afficher la date courante */

print("<H3>$Today</H3>\n");

/*

** afficher le message et le prix du repas */

print("$YourName, you will be out ");

print($CostOfLunch * $DaysBuyingLunch);

print(" dollars this week.<BR>\n");

?>

</BODY>

</HTML>

Le premier bloc de code PHP assigne plusieurs valeurs à quatre variables : $YourName,

$Today, $CostOfLunch et $DaysBuyingLunch. L’analyseur les interprète comme des varia- bles, car elles sont précédées du signe dollar ($). La première fois que vous déclarez une variable, PHP réserve un espace mémoire pour lui attribuer la valeur que vous souhaitez sauvegarder. Inutile de lui indiquer le type de données à stocker, il l’identifiera parfaitement tout seul.

Mélanger HTML et PHP

L’exemple 1.3 montre que l’on peut, à de nombreuses reprises, passer de HTML à PHP et vice versa, en utilisant les marques "<?" et "?>".

Mais, en même temps, il vous montre que l’auteur a judicieusement regroupé, en tête, la définition des valeurs et a placé, dans un second temps, la genération du code HTML.

En sautant trop souvent de HTML à PHP, vous rendriez le code difficile à lire.

Dans un premier temps, le script assigne une chaîne de caractères aux variables YourName et Today. Comme nous l’avons indiqué précédemment, PHP sait que la chaîne correspond à du texte, car nous l’avons délimitée par des guillemets. Notez toutefois que la fonction Date renvoie du texte. Nous appelons ce type de données une chaîne, abréviation de chaîne de caractères. En l’occurrence, un caractère signifie une simple lettre, un chiffre ou à n’importe quel autre signe généré par une touche de votre clavier (ou même un signe exoti- que n’existant pas sur votre clavier)

Nous avons employé l’opérateur d’assignement égal à (=) pour séparer les intitulés de varia- bles de leur valeur. Tout ce qui se trouve à droite de ce signe est sauvegardé dans la variable dont l’intitulé apparaît à gauche.

Les troisième et quatrième instructions attribuent une valeur numérique à deux variables.

La valeur 3.50 est un chiffre décimal, une fraction ou un nombre. PHP identifie ce type par le terme double, un héritage du langage C sans doute. La valeur 4, quant à elle, correspond à un nombre entier, ou à un entier tout simplement.

(12)

Après avoir envoyé quelques lignes de codes HTML au navigateur, un autre bloc PHP est ouvert. Le script commence à afficher la date courante dans un style spécifique : <H3> . . .</H3>. Notez que le programme passe un nouveau type d’informations à la commande print. De fait, vous pouvez utiliser une chaîne littérale ou des variables pour reproduire des données à l’écran.

Toutefois, PHP n’est plus aussi tolérant avec la casse des caractères lorsqu’il s’agit d’inti- tulés de variables. Ainsi, Today et today ne désignent pas la même variable et, comme il n’est pas nécessaire de les déclarer avant de les utiliser, les erreurs se multiplient sans que vous vous en aperceviez. En effet, si vous vous trompez dans la casse des caractères, vous créez simplement une nouvelle variable, et aucune erreur n’est générée.

La dernière partie du script affiche Leon, you will be out 14 dollars this week (Leon, tu nous dois 174 francs pour cette semaine). Nous avons effectivement calculé le montant total du prix en utilisant l’opérateur de multiplication (*).

Réception de la saisie des utilisateurs

La manipulation des variables dont vous déterminez les valeurs à l’intérieur du script se révèle très limitée à court terme. Elle devient plus intéressante lorsqu’il s’agit de travailler avec des données provenant des utilisateurs de votre site. Lorsque vous appelez PHP à partir d’un formulaire HTML, sachez que les champs du formulaire seront, en PHP, représentés par des variables. Le Listing 1.4 donne un exemple de ce type de formulaire. Le script du Listing 1.5, quasi identique au précédent, est chargé de traiter les variables que vous recevez.

Le Listing 1.4 correspond à un formulaire HTML standard, qui ne vous surprendra pas si vous avez déjà l’habitude des CGI. Nous disposons de trois champs correspondant respec- tivement à trois de nos précédentes variables. Ainsi, nous ne déterminons plus ici leur valeur directement dans le script, mais c’est l’utilisateur qui les indique. Concrètement, lorsqu’il cliquera sur le bouton Submit, le script désigné par l’attribut ACTION recevra les données du formulaire que le moteur PHP devra ensuite convertir en variables.

La première partie du script ne reprend plus les lignes qui permettaient de paramétrer nos trois variables (nous avons juste conservé la déclaration de celle intitulée Today). Toutefois, le reste du programme, qui suppose que des données existent bien pour nos variables, n’a subi aucune modification. Essayez, par exemple, de déclencher notre script sans saisir une seule information, ou en entrant des suites de caractères sans aucune signification.

Notez que lorsque vous entrez un texte alors que le script attend un nombre, PHP fera toujours de son mieux pour convertir l’information. Par exemple, si vous saisissez dans notre formulaire la chaîne 10 francs pour le prix du repas, PHP n’en retiendra que le nombre 10 !

Références

Documents relatifs

Maintenance industrielle Page 82 On changeant le type d’engrenage on constate une nette diminution des valeurs des fréquences propres et une augmentation de

Hormis les erreurs classiques dues à des mauvais chemins, le problème le plus fréquent est celui où le serveur web ne peut pas écrire dans le répertoire com- pile que vous avez

graphique PCI Express ne pourra accueillir que cartes graphiques au format PCI Express (standard actuel) ; un bus graphique AGP ne pourra accueillir que des cartes graphiques

tant un système d'alimentation variable pour les différents haut-parleurs composant la c,,. Les sons de toute la gamme musicale à reproduire ne doivent pas. On

Depuis qu’elle a connu la peinture en bas, bon elle a dessiné une ou deux fois ça et quand je lui ai expliqué et tout elle a changé de dessin, elle fait des beaux dessins, elle

Pour mesurer le courant I, nous placerons un ampèremètre en SERIE dans le circuit pour mesurer le passage des charges électriques dans le fil conducteur.. Pour que notre mesure

Ce déplacement de charges Q est engendré par un potentiel électrique V se variant par rapport à la référence et appelé :. POTENTIEL

Nous considérerons dans la technique, qu'il faut 5 fois la constante de temps τ pour pouvoir considérer le condensateur C comme chargé à 100 %.. Analogie au temps t 5 correspondant