Programmation Web: Cours Du Semestre 4 de Licence Pro Option: Informatique Et Télécoms
Programmation Web: Cours Du Semestre 4 de Licence Pro Option: Informatique Et Télécoms
Programmation Web: Cours Du Semestre 4 de Licence Pro Option: Informatique Et Télécoms
Programmation web
Travaux pratiques
Devoir №1 .............. 40 %
Devoir №2 .............. 40 %
MOYENNE
TP et Projet ............... 20 %
Objectifs spécifiques :
A la fin de l’UE l’apprenant sera capable de:
• comprendre les technologies et les protocoles liés au Web.
• comprendre les nouvelles tendances en matière de développement
Web: outils, environnements.
• décrire les outils et techniques utilisés pour le développement
d’applications Web côté client comme côté serveur.
• maitriser le langage de programmation PHP
• connaitre les fondamentaux du langage mySql
• réussir l’interaction des applications clientes avec un serveur web
• réaliser des sites web fonctionnels
Programmation web
Contenu
1. Généralités sur les langages
2. Introduction à PHP
3. Syntaxe du langage PHP
4. Variables et opérateurs de PHP
5. Contrôle et fonctions de PHP
6. Programmation en PHP
7. Initiation aux bases de données relationnelles
8. Syntaxe de MySQL
9. Fonctions de MySQL
10. Requêtes MySQL en PHP
11. Initiation au JavaScript
12. Outils et techniques Web modernes
Programmation web [email protected] 4
Généralités
Généralités sur les langages informatiques
Langage interprété
Un programme écrit dans un langage « interprété » a besoin d’un programme
auxiliaire (l’interpréteur) pour traduire au fur et à mesure les instructions du
programme pour les rendre intelligibles du point de vue du processeur. PHP,
VBScript, WebDNA
Langage compilé
Un programme écrit dans un langage « compilé » est traduit une fois pour toutes
par un programme annexe (le compilateur) afin de générer un nouveau fichier qui
sera autonome, qui n’a plus besoin d’un autre programme pour s’exécuter. C/C++,
Fortran, Pascal
Langage intermédiaire
• Appartient aux deux catégories (LISP, Java, Python, etc.)
• Un programme écrit dans un langage « intermédiaire » peut dans certaines
conditions subir une phase de compilation intermédiaire vers un fichier écrit dans
un langage qui n’est pas intelligible (donc différent du fichier source) et non
exécutable (nécessité d’un interpréteur).
Caractéristiques:
Code source ouvert (accès gratuit)
Supporte tous les standards du web
Facilement extensible grâce à de nombreux modules
Compatible avec les nouveaux et anciens standards web (XML, .NET)
<html> <html>
<head> <head>
<title>Exemple de code Php <title>Exemple de Php
</title> code</title>
</head> </head>
<body> <body>
<?php echo ’’Hello World!’’; ?> Hello World!
</body> </body>
</html> </html>
Programmation web [email protected] 12
Introduction à PHP
PHP & HTML:exemple
Un script php se commente comme en C :
<?php
// commentaire de fin de ligne
/* commentaire sur plusieurs
lignes */
# commentaire de ligne comme en shell
?>
Remarque:
• Tout ce qui se trouve dans un commentaire est ignoré.
• Il est conseillé de commenter ses script pour expliquer l’objet
de leur exécution.
Programmation web [email protected] 13
Introduction à PHP
Variables en PHP
Le typage des variables est implicite en PHP. Il n’est donc pas nécessaire de
déclarer leur type au préalable ni même de les initialiser avant leur
utilisation.
Exemple :
Pour comparer la valeur de la variable $str (qui peut etre saisie par les
utilisateurs d’une page .php) à un nombre entier ou pour l’attribuer à un
identifiant numérique il faut s’assurer qu’elle est de type « int»
Exemples:
$_SERVER['HTTP_REFERER'] — URL de la page qui a appelé le script
PHP
$_SERVER['HTTP_USER_AGENT'] — permet d'avoir des informations
sur : - le type de navigateur utilisé par le client
- le système d'exploitation
$_SERVER['QUERY_STRING'] — Il s'agit de la partie de l'URL (ayant servi
à accéder au script PHP) située après le point d'interrogation
$_SERVER['SCRIPT_FILENAME'] — Chemin d'accès complet au script
PHP (ex. c:webservers/home/site.org/lib/page.exe)
$_SERVER['HTTP_HOST'] Nom de domaine du serveur
Programmation web [email protected] 17
Introduction à PHP
Variables prédéfinies en PHP
Elles sont souvent de type superglobales, c'est à dire accessible depuis
n'importe quelle partie d’un code et sans notion de portée.
Remarques:
Pour tester le type d'une variable, l’on utilise les fonctions
de type « is_* » :
is_array, is_bool, is_double , is_float , is_int , is_integer , is_long , is_null ,
is_numeric , is_object , is_real , is_resource , is_string , is_callable (est-ce
une fonction?).
Exemple:
$variable = ‘‘year’’;
$$variable = 2014;
echo $year; // renvoie 2014 (‘year’ a pris la valeur 2014)
define(‘‘id_constante’’,‘‘valeur’’);
// ou bien define(id_constante, ‘‘valeur’’);
Exemple:
define(‘‘NOM_GENERAL’’, ‘‘IUT’’);
define(‘‘NOM_PROPRE’’, ‘‘LOKOSSA’’);
Remarques:
Les constantes ne sont définies qu’une seule fois dans le script.
Leurs valeurs restent inchangées et leurs identificateurs ne sont
pas sensibles à la case (contrairement aux variables).
Exemple 1 :
$tableau = array(‘’Ville’’ => ‘’LOKOSSA’’, ‘’Ecole’’ => ‘’IUT’’);
Exemple 2 :
$tableau[‘’Ville’’] = ‘’ ‘’LOKOSSA’’;César’’;
$personne[‘’Prénom’’] = ‘’Jules’’;
• Opérateurs d’assignement :
= (affectation), *= ($x*=$y équivalent à $x=$x*$y),
de même l’on utilise /=, +=, -=, %=
• Opérateurs d’erreur
$retour=@$tab['toto']; // ne retourne pas d'erreurs si l'index
‘toto’ n'existe pas
• Opérateurs de chaîne (., concaténation)
$a="IUT";
$b=$a." LOKOSSA"; // $b retourne ‘ IUT LOKOSSA’
• Opérateurs de comparaison :
Table de vérité de XOR
== ($a==$b, même valeur)), (OU EXCLUSIF)
=== ($a===$b, même valeur et même type), a b a XOR b
< (inférieur strict), <= (inférieur large),
0 0 0
> (supérieur strict), >= (supérieur large),
0 1 1
!= (différence)
1 0 1
1 1 0
Syntaxe :
$value=(condition)?(expression1):(expression2);
Interprétation:
Si la condition est vraie alors l’opérateur évalue et assigne à $var
l’expression1 sinon il évalue et assigne l’expression2.
Exemple :
$nbr = ($var>10)?($var):($var%10);
Dans cet exemple, la variable
$nbr = $var (prend pour valeur $var ) si $var>10,
sinon
$nbr = $var%10 (vaut le reste de la division entière de $var par 10.
Programmation web [email protected] 31
Introduction à PHP
Référence en PHP
On peut à la manière des pointeurs en C faire référence à une
variable grâce à l’opérateur & (ET commercial).
Exemple :
$var1 = 100; // la variable $var1 est initialisée à la valeur 100
$var2 = &$var1; // la variable $var2 fait référence à $var1
$var1++; // on augmente la valeur de $var1 de 1
echo $var2; // qui est répercutée sur $var2 qui
// vaut alors 101
Exercice 2
Écrivez une expression conditionnelle utilisant les variables $age et
$sexe dans une instruction if pour sélectionner une personne
de sexe féminin dont l’âge est compris entre 12 et 50 ou au delà de 50 ans
pour afficher un message de bienvenue approprié.
Remarque :
1. Une fonction peut ne pas avoir d’arguments ou encore retourner de
valeurs (le cas d’une fonction d’affichage de message )
2. On peut donner une valeur par défaut aux arguments lors de la
déclaration de la fonction.
Exemple : function set_ville($ville=‘’Lokossa’’) {
echo ‘cette ville est’.$ville;
}
Programmation web [email protected] 37
Introduction à PHP
Fonctions en PHP
Remarques:
3. En version 3 du PHP (version interprétée), une fonction ne peut
être appelée qu’après sa définition. En version 4 et 5 (compilées)
une fonction peut être appelée avant sa définition.
Exemple :
function fonc_1() { // définition de la fonction fonc_1
echo ‘’fonction fonc_1 définie plus haut’’;
}
fonc_1(); // appel de la fonction fonc_1 définie plus haut
fonc_2(); // appel de la fonction fonc_2 définie plus bas
Exemple :
function calcul($a, $b) {
return array($a+$b, $a-$b, $a*$b);
}
Exemples:
number_format (1000000.4433); // affiche 1,000,000
number_format (1000000.4433,2); // affiche 1,000,000.44
number_format (1000000.4433,3,",","."); // affiche 1.000.000,443
Programmation web [email protected] 42
Introduction à PHP
Fonctions en PHP
Exercice:
Exemple :
function exit_f() {
$tab=array(‘A’, ‘B’, ’C’);
if (rand (0,9)>count($tab);
Exit ();
}
Programmation web [email protected] 45
Introduction à PHP
Fichier en PHP
file_get_contents() - la plus simple des fonctions utilisées pour lire
un fichier .
Elle prend comme paramètre le nom du
fichier et elle affecte son contenu à une
variable type chaîne de caractère.
Exemple:
Le fichier test.txt contient le texte suivant:
‘C’est un test sur le contenu du fichier’
$str=file_get_contents(’’test.txt’’);
echo $str;
Exemples :
$fp = fopen(‘’../docs/list.txt’’, ‘’r’’);
$fp = fopen(‘’http://www.php.net/’’,’’r’’);
$fp = fopen(’’ftp://user:[email protected]/’’, ‘’w’’);
Exemple
<form action=‘’index.php’’ method=‘’POST’’ ENCTYPE=‘’multipart/form-data’’>
<input type=‘’hidden’’ name=‘’MAX_FILE_SIZE’’ value=‘’1024000’’>
<input type=‘’file’’ name=‘’mon_fichier’’><br>
<input type=‘’submit’’ value=‘’envoyer’’>
</form>
Exemple:
$nom_fichier = $HTTP_POST_FILES[‘’nom_fichier’’][‘’name’’];
Remarque:
Pour la version 4 et 5 du PHP la syntaxe $HTTP_POST_FILES[] peut
se réduire à $_FILES[]
Programmation web [email protected] 55
Introduction à PHP
Fichier en PHP: envoi de fichier
Remarques:
1. Vérifier avec is_file() (ou file_exists()) si un fichier du même
nom existe déjà sur le serveur à l’emplacement où on veut copier
le nouveau fichier. On pourra supprimer l’ancien fichier avec
unlink()
2. Même si le paramètre MAX_FILE_SIZE est inclus dans le
formulaire, il est important de vérifier la taille du fichier
réceptionné.
3. La vérification du type MIME du fichier est également importante
dans le cas où on ne souhaite réceptionner que des types de
fichiers bien particuliers (des images GIF, JPEG ou PNG par
exemple).
4. La durée de vie du fichier temporaire sur le serveur est limitée au
temps d’exécution du script. Pour pouvoir exploiter ultérieurement
le fichier sur le serveur, il faut le sauvegarder dans un répertoire
et lui donner un vrai nom.
Exemple:
<input type=‘’file’’ name=‘’fichier_1’’>
<input type=‘’file’’ name=‘’fichier_2’’>
Exemple:
echo $_FILES[‘’fichier_1’’][‘’name’’].’’<br>’’;
echo $_FILES[‘’fichier_1’’][‘’tmp_name’’] .’’<br>’’;
echo $_FILES[‘’fichier_1’’][‘’size’’] .’’<br>’’;
echo $_FILES[‘’fichier_1’’][‘’type’’] .’’<br>’’;
Exemples:
$created_date = date("Y-m-d"); //date("Y-m-d H:i:s");
$time = date('H:i:s',strtotime($created_date));
$expiration_date= date("Y-m-d",time() + 7* 3600 * 24);
Programmation web [email protected] 60
Introduction à PHP
Date en PHP: les formats
Les clés du tableau associatif retourné par getdate
seconds : secondes
minutes : minutes
hours : heures
mday : jour du mois
wday : jour de la semaine, numérique
mon : mois de l'année, numérique
year : année numérique
yday : jour de l'année numérique
weekday : jour de la semaine, textuel complet en anglais
month : mois textuel complet en anglais
Exemple:
$today=getdate();
If ($today[‘mday’]==‘31’) && ($today[‘mon’]==‘12’)
Echo ‘C’est le dernier jour de l’année’;
Programmation web [email protected] 61
Introduction à PHP
Expressions régulières en PHP:
Exemple:
$adress= ‘IUT Lokossa, tel: +229 ’
if (eregi(‘’lokossa’’, $adress)) echo l’Ecole est à Lokossa.
Exemple :
$message = ‘’Mon 1er mail’’;
mail(‘’[email protected]’’, ‘’Juste un test’’, $message);
Quelques entêtes :
From: [email protected] //L’envoyeur
X-Mailer: PHP\n // maileur
X-Priority: 1\n // Message urgent!
Return-Path: [email protected] // @ retour pour erreurs
Cc: [email protected] // Champs CC (invisible)
Reply-to: <[email protected]> // E-mail de retour
Exemple1:
Class displayEcoleInfo extends displayEcole{
var $type;
function displayEcoleInfo(){
$type= $this->displayEcole ();
}
function displayInfo($ecole){
echo “type:“. $this->type. "<br>";
foreach($ecole as $key=>$item) {
echo "ecole [".$key . "] : ".$item. "<br>" ;
}
}
}
Programmation web [email protected] 69