22
CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Embed Size (px)

Citation preview

Page 1: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

CPI/BTS 2Programmation Web

Introduction au PHP

Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Page 2: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

– Acronyme récursif pour « PHP: Hypertext Preprocessor »

– Code inclus dans le HTML– Interpréteur PHP inclus au sein du serveur web– Instructions exécutées par le serveur web– Décodage automatique des variables transmises par

le client– Mais il n’y a toujours pas de véritable connexion

client serveur, il faut le gérer par programmation.

Page 3: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

• Tout comme les CGI, le PHP est exécuté (ou interprété) sur le serveur WEB.

• Après l’interprétation, le code HTML résultant est envoyé au client web

• PHP est un langage très abordable pour un débutant, mais fournit cependant des fonctions très avancées pour les sites complexes

Page 4: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

– Exemple de base

<html>

<head>

<title>Exemple</title>

</head>

<body>

<?php echo "Bonjour, je suis un script PHP!"; ?>

</body>

</html>

Page 5: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

– Commentaires sur l’exemple:

• Le code PHP est directement inclus dans le HTML. On ne génère pas du HTML à partir du PHP (bien qu’on puisse tout à fait le faire)

• Le code PHP commence par une balise de début et se termine par une autre balise. Cela sert à indiquer au serveur web ou commence le code PHP et ou il finit.

• Nécessité de nommer les pages HTML contenant du code PHP avec l’extension .php pour qu’elles soient correctement interprétées par le serveur web.

• Possibilité de nommer les pages avec l’extension .phps pour afficher les sources du fichier dans le navigateur au lieu d’interpréter le code.

Page 6: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

• Syntaxes de base– Balises de début et de fin

<?php

//commentaire PHP comme en C

/* commentaire PHP comme en C */

# commentaire PHP comme en shell Unix

?>

– Les instructions sont séparées par un point virgule à chaque fin d'instruction, comme en langage C ou en Perl.

Page 7: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

• Types de variables– Nous utiliserons principalement 4 types de base:

• Booléen (TRUE ou FALSE)

Ex. $var = TRUE;

if ($var == TRUE) echo ‘OK!’;

if ($var) echo ‘OK!’;

• Entier: entier signé 32 bits (> 2 milliards de valeurs)

Si un nombre dépasse la limite d’un entier il sera interprété comme un flottant.

• Flottant : $a = 1.234; • Chaîne de caractères: $a = ‘hello le monde’

Page 8: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

• Types de variables– Premier gros avantage du PHP: nous n’avons pas à

définir le type des variables.

– Pas de bloc de déclaration non plus: une variable peut être utilisée n’importe ou, n’importe comment.

– L’affectation d’une valeur à une variable (notation $var) lui affecte aussi un type.

– Transtypage automatique d’un type à un autre lors d’appel à des fonctions nécessitant des types précis en entrée ou sortie.

Page 9: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

• Types de variables– Nous verrons ultérieurement

• les tableaux,

• les objets,

• Les types mixes.

Page 10: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

• Les Variables– Les variables sont représentées par un signe dollar "$" suivi du

nom de la variable.– Le nom est sensible à la casse (Ex : $x != $X).– Un nom de variable valide doit commencer par une lettre ou un

souligné (_), suivi de lettres, chiffres ou soulignés.

<?php

$var = "Jean";

$Var = "Paul";

echo "$var, $Var"; // affiche « Jean, Paul »

$4site = 'pas encore'; // invalide : commence par un nombre

$_4site = 'pas encore'; // valide: commence par un souligné

?>

Page 11: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP

• Les Opérateurs

– Lire la doc

http://www.php.net/manual/fr/language.operators.php

Page 12: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Les Structures de contrôle : if-then-else<?php

if (expression)commandes

?><?php

if ($a > $b)print "a est plus grand que b";

?><?php

if ($a > $b) {print "a est plus grand que b";$b = $a;

}?>

Page 13: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Les Structures de contrôle: if-then-else

<?php

if ($a > $b) {

print "a est plus grand que b";

} else {

print "a est plus petit que b";

}

?>

Page 14: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Les Structures de contrôle: while

<?php

$i = 1;

while ($i <= 10) {

echo $i++;

}

?>

Note: la valeur qui sera affichée sur la page HTML sera la valeur avant l’incrémentation.

Page 15: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Les Structures de contrôle: do-while

<?php

$i = 0;

do {

print $i;

} while ($i>0);

?>

Note: possibilité d’utiliser la fonction break; pour sortir d’une boucle do..while.

Page 16: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Les Structures de contrôle: for<?php/* exemple 1 */for ($i = 1; $i <= 10; $i++) {

print $i;}/* exemple 2 */for ($i = 1;;$i++) {

if ($i > 10) { break; }print $i;

}/* exemple 3 */$i = 1;for (;;) {

if ($i > 10) { break; }print $i;$i++;

}

Page 17: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Préambule aux Exercices

• Créer un répertoire ‘web’ à la racine de votre répertoire utilisateur

• Serveur WEB temporaire:

http://www.mtp.epsi.fr/~prénom.nom/web

• Le serveur cherche par défaut les fichiers index.html puis index.php sinon il liste le répertoire.

Page 18: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Exercice n°1

• Faire une page HTML comportant du code PHP qui affiche plusieurs phrases quelconques au milieu de la page.

Faire un lien HTML vers le site de l’EPSI juste après l’affichage du texte via le PHP.

Page 19: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Exercice n°2

• Dans une page HTML, utiliser deux variables contenant un nom et un prénom.

• Afficher le nom et le prénom sur la page en utilisant 3 méthodes:– 2 commandes echo– 1 commande echo avec une seule chaîne de caractère– 1 commande echo avec un point de concaténation

• Oui, il faut chercher un peu dans la doc !

Page 20: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Exercice n°3

• Créer 3 variables TVA, Prix et Nombre• Calculer le prix HT et le prix TTC pour les 10 articles et les afficher.• On affichera également le type de chaque variable ( fonction

gettype() )

Page 21: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Exercice n°4

• Affecter respectivement les valeurs 150, 350, et 10 aux variables prix_table, prix_armoire et nombre.

• Calculer le prix total pour les 10 armoires• Comparer le prix de l’armoire et de la table et afficher quel prix est

le plus élevé (gérer l’égalité de prix).

Page 22: CPI/BTS 2 Programmation Web Introduction au PHP Prog Web CPI/BTS2 – M. Dravet – 03/10/2003 Dernière modification: 03/10/2003

Le PHP• Exercice n°5

• Affecter une valeur à la variable Nombre et afficher la somme des entiers de 1 à Nombre

• Vous réaliserez cet exercice avec une boucle for puis avec une boucle while.