Académique Documents
Professionnel Documents
Culture Documents
Introduction
public/www
2
Serveur http
3
client
index.html
4
support
Le répertoire
Généralités
• Langage de script-serveur est :
o un programme stocké sur un serveur et exécuté par celui-
ci,
o qui passe en revue les lignes d’un fichier source pour en
modifier une partie du contenu, avant de renvoyer à
l’appelant ( un navigateur par exemple) le résultat du
traitement.
• La tâche d’interprétation des ordres à exécuter est déléguée à
un composant, souvent appelé moteur installé sur le serveur.
Généralités
• Langage côté client : traité par la machine qui accueille le
logiciel de navigation.
• Les résultats peuvent varier en fonction de plate-forme utilisée
: Un programme en JavaScript pourra fonctionner sous
Netscape et poser problème sous d’autres explorateurs.
• Les résultats peuvent être différents suivant la machine (PC,
Mac).
• Nécessité de tests importants
• Ne permettent pas de masquer les sources du programme
• Sont indépendants du serveur.
Généralités
• Langage côté serveur : le travail d’interprétation du programme
est réalisé par le serveur.
• indépendant de la machine et du logiciel de navigation utilisés
pour la consultation.
• Compatibles avec tous les navigateurs et toutes leurs versions.
• Permettre le masquage des sources des programmes.
• Nécessité de recharger la page chaque fois que celle-ci est
modifiée.
PHP
• PHP : Hypertext Pre-Processor.
• Langage de création de page web dynamiques côté serveur.
• Connaît un succès toujours croissant sur le Web et se
positionne comme un rival important pour ASP.
• Combiné avec le serveur Web Apache et la base de données
MySQL, PHP offre une solution particulièrement robuste,
stable et efficace.
• Gratuité : Tous les logiciels sont issus du monde des logiciels
libres (Open Source).
PHP
• Langage de scripts permettant la création d’applications Web.
• Indépendant de la plate-forme utilisée (côté-serveur).
• La syntaxe provient des langages C, Perl et Java.
• Ses principaux atouts sont:
o Gratuité et disponibilité du code source (PHP4 est
distribué sous licence GNU GPL) ,
o Simplicité d'écriture de scripts,
o Possibilité d'inclure script PHP au sein d'une page HTML ,
o Simplicité d'interfaçage avec des bases de données,
o L'intégration au sein de nombreux serveurs web (Apache,
Microsoft IIS, ...).
PHP
1 SGBD
MySQL
public/ww
client w
4
fichier.php 2
Serveur http
3
Module PHP
Génération Fichier_bis.php
du code html
PHP
• Les instructions PHP peuvent être insérées dans les
commandes HTML
• Ceci facilite le développement des sites web dynamiques.
• Lorsque PHP commence à traiter un fichier, il ne fait
qu'afficher le texte HTML qu'il rencontre.
• Faut indiquer à PHP le début d'une telle séquence, en passant
en mode PHP comme tel :
<?php /* Instructions PHP */ ?>
Ou
<? /* Instructions PHP */ ?>
PHP
• Les instructions PHP peuvent être insérées dans les
commandes HTML
• Ceci facilite le développement des sites web dynamiques.
• Lorsque PHP commence à traiter un fichier, il ne fait
qu'afficher le texte HTML qu'il rencontre.
• Faut indiquer à PHP le début d'une telle séquence, en passant
en mode PHP comme tel :
<script language= "php" >……< /script>
Ou
<% ..... %>
Serveur Web locale: EasyPHP
• Seul un serveur web peut générer le PHP.
• Le client ne peut pas interpréter les scripts PHP.
• Faut donc trouver un moyen pour compiler les scripts PHP
localement.
• Vous pourrez ainsi travailler dessus pour réaliser votre site en
PHP.
• EasyPHP est en fait un "package" qui contient tous les
programmes nécessaires pour pouvoir traiter du PHP !
• www.easyphp.org
EasyPHP
• Apache : c'est le programme qu'utilisent les serveurs. Il permet
au serveur de distribuer des pages web... mais il ne connaît que
le HTML !
• PHP : PHP est comme un "plugin" de Apache. Il a besoin
d'Apache pour fonctionner, et grâce à lui Apache saura
travailler sur des pages PHP.
• Apache + PHP = un serveur PHP.
• MySQL : c'est un SGBD(OPEN) pour la gestions des bases de
données.
• PHPmyAdmin : Interface utilisateur qui permette de faciliter
la gestion des bases de données.
Administration EasyPHP
• Faites un clic droit sur l'icône EasyPHP dans la barre des
tâches. Un petit menu s'ouvre.
• Le bouton "Administration" permet de configurer EasyPHP.
Administration EasyPHP
• PhpMyAdmin > Gestion BDD : c'est par ici que vous pourrez
gérer votre base de données.
Administration EasyPHP
• /*forme de commentaires 1 */
Attention pas d’imbrication comme en langage C
• # forme de commentaires 2
Ce type de commentaire à la Unix est très peux utilisé
• // forme de commentaires 3
Comme en langage C++
PHP: Types et Variables
• Le typage des variables est implicite en PHP : pas besoin de
déclarer leur type au préalable ni même de les initialiser avant
leur utilisation.
• Les identificateurs de variable sont précédés du symbole $.
Exemple: $Variable
• Les variables peuvent être de type entier (integer), réel (double),
chaîne de caractères (string), tableau (array), objet (object),
booléen (boolean).
PHP: Types et Variables
• Il est possible de convertir une variable en un type primitif
grâce au opérations de cast.
• Exemple :
$str = ’’12’’; // $str vaut la chaîne ‘’12’’
$nbr = (int)$str; // $nbr vaut le nombre 12
• L’opération de cast est une conversion de type. L’action de
caster consiste en convertir une variable d’un type à un autre.
PHP: Types et Variables
• Quelques fonctions :
o empty($var) : renvoie vrai si la variable est vide.
o isset($var) : renvoie vrai si la variable existe.
o unset($var) : détruit une variable.
o gettype($var) : retourne le type de la variable.
o settype($var, ’’type’’) : convertit la variable à type.
o is_long(), is_double(), is_string(), is_array(),
is_object(), is_bool(), is_float(), is_numeric(),
is_integer(), is_int()…
PHP: Types et Variables
• Une variable peut avoir pour identificateur la valeur d’une
autre variable.
• Syntaxe : ${$var} = valeur;
• Exemple :
$toto = ’’var’’;
${$toto} = 2002;
echo $var; // la variable $var vaut donc 2002
PHP: Types et Variables
• Une variable locale à une fonction n’est pas connue dans le
reste du programme.
• Une variable créée dans un bloc n’est pas connue dans les
autres blocs, mêmes ceux supérieurs.
PHP: Opérateurs
• Opérateurs arithmétiques :
+ (addition), - (soustraction), * (multiplié), / (divisé), %
(modulo), ++ (incrément), --(décrément).
• Opérateurs d’assignement :
= (affect.), *= ($x*=$y équivalent à $x=$x*$y), /=, +=, -=, %=
• Opérateurs logiques :
and, && (et), or, || (ou), xor (ou exclusif), ! (non)
• Opérateurs de comparaison :
== (égalité), != (différence), <, <=, >, >=.
PHP: Constantes
• Des constantes sont des variables dont la valeur est fixée une
fois pour toute. Les constantes ne portent pas le symbole $ en
début d’identificateur et ne sont pas modifiables.
• define("var",valeur): définit la constante var de valeur valeur.
• Exemple :
define("author", "Ahmed");
echo author; // affichera Ahmed
• Contrairement aux variables, les identificateurs des constantes
(et des fonctions) ne sont pas sensibles à la casse.
PHP: Références
• à la manière des pointeurs en C, on peut récupérer la référence
à une variable grâce à l’opérateur & (ET commercial).
• Exemple 1 :
$toto = 100; // $toto initialisée à 100
$var = &$toto; // $var fait référence à $toto
$toto++; // on change la valeur de $toto
echo $var; // $var vaut alors la valeur 101
PHP: Mathématiques
• Il existe un ensemble de fonctions mathématiques :
o abs($x) : valeur absolue
o ceil($x) / floor($x) : arrondi supérieur/inférieur.
o pow($x,$y) : x exposant y
o round($x,$i) : arrondi de x à la ième décimale
o max($a, $b, $c …) : l’argument de valeur maximum
o Et aussi : cos, sin, tan, exp, log, min, pi, sqrt…
• M_PI : valeur de pi (3.14159265358979323846)
• M_E : valeur de e (2.7182818284590452354)
PHP: Mathématiques
• Nombres aléatoires :
o rand([$x],[$y]) : valeur entière aléatoire entre 0 et
RAND_MAX si x et y ne sont pas définis, entre x et
RAND_MAX si seul x est défini, entre x et y si ces deux
paramètres sont définis.
o srand() : initialisation du générateur aléatoire
o getrandmax() : retourne la valeur du plus grand entier
pouvant être généré
PHP: Chaines de caractères
• Une variable chaîne de caractères n’est pas limitée en nombre
de caractères. Elle est toujours délimitée par des simples
quottes ou des doubles quottes.
• Exemples :
$nom = "Ahmed";
$prenom = ‘Alaoui’;
PHP: Chaines de caractères
• Les doubles quottes permettent l’évaluation des variables et
caractères spéciaux contenus dans la chaîne (comme en C)
alors que les simples ne le permettent pas.
• Exemples :
echo "Nom: $nom";
echo ‘Nom: $nom’;
• Quelques caractères spéciaux : \n (nouvelle ligne), \r (retour à
la ligne), \t (tabulation horizontale), \\ (antislash), \$ (caractère
dollars), \’’ (double quotte).
• Exemple : echo "Hello Word !\n";
PHP: Chaines de caractères
• Opérateur de concaténation de chaînes :
$x = ‘’Hello’’;
$y = ‘’Word’’;
echo $x.$y;
$name = "Henry";
$whoiam = $name." IV";
$text = ‘Patati’;
$text .= " et patata…";
PHP: Chaines de caractères
• Affichage d’une chaîne avec echo:
echo ‘Hello Word.’;
echo "Hello ${name}\n";
echo "Nom : ", $name;
echo ("Bonjour");
PHP: Chaines de caractères
• strlen($str) : retourne le nombre de caractères d’une chaîne
• strtolower($str) : conversion en minuscules
• strtoupper($str) : conversion en majuscules
• trim($str) : suppression des espaces de début et de fin de
chaîne
• substr($str,$i,$j) : retourne une sous chaîne de $str de taille
$j et débutant à la position $i
• strnatcmp($str1,$str2) : comparaison de 2 chaînes
• addslashes($str) : déspécialise les caractères spéciaux (‘, ‘’, \)
• ord($char) : retourne la valeur ASCII du caractère $char
PHP: Variables
• Une variable est un objet repéré par son nom, qui peut être
nombre, texte ou autre. Les variables conservent
temporairement des valeurs, qui pourront être modifiées lors
de l'exécution du programme.
• PHP supporte quatre types scalaires : Booléen, entier, nombre
à virgule flottante, chaîne de caractères.
• PHP supporte deux types composés : Tableau, objet.
PHP: Variables
• Le typage des variables est implicite en PHP. Il n’y a donc pas
besoin de les déclarer ni même de les initialiser avant leur
utilisation, toutefois, les noms de variables doivent répondre à
certaines règles syntaxiques:
o Tout nom de variable doit obligatoirement être précédé du
caractère dollar ($).
o Tout nom de variable doit commencer par une lettre
(majuscule ou minuscule) ou un "_", mais jamais un
chiffre.
PHP: Variables
• Le typage des variables est implicite en PHP. Il n’y a donc pas
besoin de les déclarer ni même de les initialiser avant leur
utilisation, toutefois, les noms de variables doivent répondre à
certaines règles syntaxiques:
o Un nom de variable peut comporter des lettres, des chiffres
et le caractère _ (les espaces ne sont pas autorisés).
o Les noms de variables sont sensibles à la casse.
o On affecte des valeurs aux variables à l’aide du signe =
PHP: Variables
• Les variables sont précédées du signe $
$bonjour = "Hello";
$nom = "Hello";
$nomcomplet = "Paul &nom";
$email = "google". "."."com";
PHP: Variables
• Les variables référencées (&)
<?php
$f = 'Pierre'; // Assigne la valeur 'Pierre' à $f
$b = &$f; // Référence $f avec $b.
$b = "Mon nom est Pierre"; // Modifier $b
echo $f; // $f est aussi modifiée
echo $b;
?>
PHP: Variables
• Le type d’une variable est à liaison superficielle :
<?php
$a = 100;
echo $a;
$a=“une chaine de caractères”;
echo $a;
?>
PHP: Variables
• Le type d’une variable est à liaison superficielle :
<?php
$a = 100;
echo $a;
$a=“une chaine de caractères”;
echo $a;
?>
PHP: Variables
• Il est pratique d'avoir parfois des noms de variables qui sont
variables. C'est−à−dire un nom de variable qui est affectée et
utilisée dynamiquement. Une variable classique est affecté avec
l'instruction suivante:
<?php $val = "bonjour"; ?>
<?php
$a = 3.14;
If(gettype($a)=="double") settype($a, "integer" );
?>
PHP: Les opérateurs arithmétiques
Variable Description
$_SERVER["SERVER_NAME"] Le nom du serveur
$_SERVER["HTTP_HOST"] Nom de domaine du serveur
$_SERVER["SERVER_ADDR"] Adresse IP du serveur