Cours : Web

Programmation Web & Multimédia · course

Voir tous les documents en programmation

Cours : Web

Dr, Mohamed Amine Mezghich, amine,mezghich@ensi-uma,tn

Module : Programmation Web & Multimédia, ENSI Année universitaire 2016-2017

Plan

• Chapitre 1 : Le langage HTML • Chapitre 2 : Le langage CSS • Chapitre 3 : Le langage JavaScript • Chapitre 4 : Le langage PHP • Chapitre 5 : Le langage XML

2

Chapitre 1 : Le langage HTML

Introduction

•

réseau de

Internet est un réseaux, un ensemble d'ordinateurs interconnectés et utilisant le même protocole. Ce réseau offre différents services, tels que messagerie électronique, ftp (transfert de fichiers), telnet (connexion à distance)...et le fameux World Wide Web (WWW) ou Web! L'idée de départ du Web est de laisser l'information sous forme non- structurée sur le réseau, plutôt que de l'organiser en base de données. En revanche, chaque document peut faire référence aux autres, par le biais de trois mécanismes:

– 1. Un schéma d'adressage uniforme pour localiser chaque information

sur le Web: Les URL;

– 2. Un protocole (HTTP) pour accéder aux ressources disponibles sur le

Web;

– 3. Un langage balisé permettant la navigation entre sites à l'aide de

liens hypertextes: le langage HTML.

4

Introduction

• Pour publier des informations sur un même réseau, il est nécessaire de parler le même langage. Pour cette raison, tous les ordinateurs connectés sur le réseau utilisent le même protocole d'échange de données, et le langage utilisé pour la création de pages Web est le langage HTML l'utilisateur de: (Hypertext Markup Language). HTML permet à

 Publier du texte mis en forme, des images, du son, de la vidéo...  Concevoir des formulaires permettant de dialoguer avec un serveur distant

(commander un produit, réserver une place de théâtre, ...);

 Lire les informations publiées par d'autres utilisateurs, et naviguer grâce

aux liens hypertexte.

5

Introduction

• Un document hypertexte (HTML) n'est rien d'autre qu'un fichier de texte, portant l'extension ".HTML", et dans lequel apparaissent des Balises. Ces balises la structure du document: telle partie correspond à un titre, telle autre correspond à une image... Le langage HTML est ensuite interprété par un (navigateur, ou butineur, ou browser...) logiciel dit de navigation

définir

pour

but

ont

de

6

Structure d'un document HTML: Balises et Attributs

• Balises

Un document HTML a toujours la structure suivante:

<HTML> <HEAD> (contenu de l'en-tête) </HEAD> <BODY> (contenu du corps) </BODY> </HTML>

<-- balise de début de document HTML <-- balise de début de l'en-tête

<-- balise de fin de l'en-tête <-- balise de début du corps

<-- balise de fin du corps <-- balise de fin de document HTML

7

Structure d'un document HTML: Balises et Attributs

• Balises

Le corps (BODY) est composé de la succession d'éléments, chacun de ces éléments étant constitué de: o Une balise de début d'élément, de la forme <BALISE>; o Un contenu (qui peut lui-même contenir d'autres éléments) o Une balise de fin d'élément, de la forme </BALISE> (parfois optionnelle),

• Apprendre le langage HTML revient à connaître les différentes

balises et savoir les utiliser.

8

Structure d'un document HTML: Balises et Attributs

• Balises

Exemple de balises: o <HEAD>...</HEAD> et <BODY>...</BODY> sont des balises! o <P>...</P> : le contenu entre ces deux balises sera alors un paragraphe o <B>...</B> : le contenu entre ces deux balises sera alors du texte en caractères gras

9

Structure d'un document HTML: Balises et Attributs

• Attributs

A chaque balise sont associés un certain nombre d'attributs, qui caractérisent les propriétés de cette balise.

• Jusqu'ici, une balise servait à rendre un seul effet (par exemple, la

balise B mettait en gras).

• La majorité des balises HTML sont en fait capables de régler

•

plusieurs effets à elles-seules. Chaque effet est alors géré par un attribut. Les valeurs de ces attributs seront spécifiées comme suit:

<BALISE attribut1="valeur1" attribut2="valeur2"> ... </BALISE>

10

Structure d'un document HTML: Balises et Attributs

• Attributs

Exemples: Quelques attributs de la balise <BODY>: bgcolor (permet de spécifier la couleur de fond de votre page Web), fgcolor (permet de spécifier la couleur du texte de la page). Dans le code HTML, ces attributs apparaîtront sous la forme: <BODY bgcolor="red" fgcolor="black"> ... </BODY> • Remarques: • 1. Ne pas spécifier la valeur d'un attribut revient à laisser le navigateur choisir le contenu prévu par "défaut". Ainsi, si vous n'écrivez pas fgcolor=black dans votre page, ce n'est pas bien grave... le noir étant la couleur de texte par défaut des Navigateurs.

• 2. Une faute courante consiste à mélanger les notions de balise et

d'attribut. Par exemple, il est affreux (!!!) d'écrire: <bgcolor=red>, car bgcolor est un attribut de la balise BODY. Il faut écrire; <BODY bgcolor=red>

11

MISE EN PAGE

• Balise <HR>

La balise <HR> permet de tracer une séparation horizontale. Ses attributs sont donnés dans le tableau suivant:

12

MISE EN PAGE

• Balise <BR>

La balise <BR> permet de passer à la ligne.

• Balise <P> •

La balise <P> permet de mettre en forme un paragraphe. Ses attributs sont donnés dans le tableau suivant:

13

MISE EN FORME DE TEXTE

• Balises de titre: <H1>, <H2>...<H6>

Les balises <H1>...<H6> permettent de définir des niveaux de titre, du plus grand (niveau 1) aux titres de niveaux inférieurs (niveaux 2 à 6). Leurs attributs sont donnés dans le tableau suivant:

14

MISE EN FORME DE TEXTE

• Balise <FONT>

La balise <FONT> permet de choisir la police de caractères du texte. Donnons quelques attributs de cette balise:

15

MISE EN FORME DE TEXTE

• Balises de mise en relief

Les balises de mise en relief sont de deux types: les éléments physiques (gras, italiques...) et les éléments logiques (qui sont des combinaisons prédéfinies des éléments physiques). Les balises les plus courantes sont données dans le tableau suivant:

16

MISE EN FORME DE TEXTE

• Balises de mise en relief

17

LIENS HYPERTEXTE

La balise A et ses attributs

Le langage HTML permet la navigation sur le Web, à l'aide de liens hypertextes. Un lien est affecté à un morceau de texte, une image...Un clic sur ce lien permet de charger une autre page Web. Un lien est, par défaut, écrit en bleu souligné, puis en rouge foncé souligné lorsque le site pointé par ce lien a déjà été visité. La balise permettant de créer un lien hypertexte est la balise <A>. La balise de fin est obligatoire

Dans le code HTML, un lien apparaît donc de la manière suivante: · Code HTML: Pour aller sur Nomade cliquer <A href="http://www.nomade.fr">ici</A>. · Allure de la page Web: Pour aller sur Nomade cliquer ici.

18

LIENS HYPERTEXTE

L'attribut HREF La valeur de l'attribut HREF de la balise A est une URL. En effet, un lien hypertexte peut appeler une page Web disponible sur un site distant, une page Web disponible en local sur votre disque, ou encore un endroit particulier (position) d'un fichier HTML (intéressant dans le cas de fichiers très longs). Nous avons vu qu'une URL pouvait décrire toutes ces situations. Donnons quelques exemples: dans notre exemple, le lien est écrit à l'intérieur d'un fichier, appelé maPage.html, et ce lien pointe vers un autre fichier autrePage.html.

· Si autrePage.html est une page Web d'un site distant: Dans ce cas l'URL doit spécifier le protocole et l'adresse, Exemple: <A HREF="http://www.nomade.fr/autrePage.html">...</A>. · Si autrePage.html est une page Web en local sur votre disque: L'URL soit spécifier le chemin complet à suivre pour atteindre ce fichier. Exemple: <A HREF="chemin/autrePage.html">...</A>.

19

LIENS HYPERTEXTE

L'attribut NAME

L'attribut NAME de la balise A permet de donner un nom à un endroit particulier d'un fichier HTML. Ce nom pourra ensuite être appelé par un lien du même fichier ou d'un fichier différent. La syntaxe est la suivante: <A NAME="position"> (la balise de fin est dans ce cas optionnelle).

L'attribut TARGET Cet attribut spécifie le nom du cadre cible pour afficher le document défini par un lien. Exemple : _blank, _self

20

TABLEAUX

Les balises TABLE, TR, TD, TH, CAPTION

L'insertion d'un tableau se fait à l'aide de la balise <TABLE>. La balise de fin est obligatoire. Les attributs de cette balise sont donnés dans le tableau suivant:

21

TABLEAUX

Les balises TABLE, TR, TD, TH, CAPTION

La balise CAPTION permet de donner une légende à un tableau. Son attribut est ALIGN=top|bottom, suivant que l'on voudra placer la légende au-dessus ou en-dessous du tableau. La balise de fin est obligatoire. A l'intérieur de la balise TABLE, un élément <TR>...</TR> (Table Row) définit une ligne. A l'intérieur de la balise TR, un élément <TD>...</TD> (Table Data) définit une colonne (i.e. une cellule). Lorsque ces cellules sont celles de la première ligne, il est possible de remplacer la balise <TD>...</TD> par <TH>...</TH> (Table Header): le contenu de la cellule sera alors mis en gras. Ainsi, le code correspondant à un tableau 2 lignes-3 colonnes sera donc: <TABLE> <TR> <TD>contenu de ligne 1, colonne 1 <TD>contenu de ligne 1, colonne 2 <TD>contenu de ligne 1, colonne 3 </TR> <TR> <TD>contenu de ligne 2, colonne 1 <TD>contenu de ligne 2, colonne 2 <TD>contenu de ligne 2, colonne 3 </TR> </TABLE>

22

TABLEAUX

Les attributs des balises TR, TD et TH sont donnés dans le tableau suivant:

23

INSERTION D'IMAGES

La balise IMG et ses attributs L'insertion d'une image se fait à l'aide de la balise <IMG>. La balise de fin est interdite. Les attributs de cette balise sont donnés dans le tableau suivant:

24

LISTES D'ÉLÉMENTS

Listes ordonnées Il est possible, avec le langage HTML, de lister des éléments, de façon ordonnée. Les éléments seront alors numérotés, soit par des chiffres (1, 2, 3...) soit par des lettres majuscules (A, B, C...) ou minuscules (a, b, c...). Exemples: 1. élément numéro 1 2. élément numéro 2 A. élément numéro 1 B. B. élément numéro 2 C. C. élément numéro 3

25

LISTES D'ÉLÉMENTS

Listes ordonnées La balise permettant d'écrire une liste est la balise <OL> (O pour "ordered") (balise de fin obligatoire). Le choix du type de numérotation se fait grâce à l'attribut TYPE de la balise OL, selon le tableau suivant:

A l'intérieur des balises ouvrante et fermante, chaque élément (item) de la liste commence par une balise <LI> (balise de fin optionnelle). La structure HTML d'une liste ordonnée est donc la suivante: <OL TYPE="valeur"> <LI> un élément de la liste <LI> un autre élément de la liste </OL>

26

LISTES D'ÉLÉMENTS

Listes non-ordonnées

Le principe est le même que les listes ordonnées; la balise permettant d'écrire une liste nonordonnée est la balise <UL> (U pour "Unordered") (balise de fin obligatoire). Dans ce type de liste, les items de liste ne sont plus numérotés. Ils sont précédés d'un symbole, défini par l'attribut TYPE de la balise UL, selon le tableau suivant:

27

FORMULAIRES

Qu'est-ce qu'un formulaire?

Un formulaire intégré dans une page Web permet une interaction entre l'internaute et la personne qui a publié la page. Un formulaire contient des éléments appelés contrôles (champs de textes, boutons, boîtes à cocher, menus...). L'utilisateur change donc la valeur de ces contrôles avant d'envoyer son formulaire. Les informations contenues dans les différents champs sont alors récupérées et traitées par un logiciel,

28

FORMULAIRES

Qu'est-ce qu'un formulaire?

Un formulaire se compose d'une balise

<FORM>...</FORM>

Le contenu de cette balise est une succession d'éléments, définis eux-aussi par des balises, chaque balise caractérisant un type de contrôle. Enfin, les différents contrôles peuvent être disposés en tableau.

29

FORMULAIRES

Balise FORM

L'élément FORM est celui qui englobe tout le formulaire. Ses attributs ont pour tâche de contrôler comment et où seront envoyées les données du formulaire. Ne jamais emboîter des balises FORM!!! Il existe deux méthodes d'envoi des données:

· Par la méthode GET, les données (c.à.d le nom du champ et son contenu) sont concaténées en une unique chaine de caractères qui est ajoutée à l'URL (regarder le contenu du Champ "Location" de votre navigateur lorsque vous envoyez un formulaire). La taille de l'envoi est donc limitée;

· Par la méthode POST, la chaine de caractères est envoyée par le biais de séquences du protocole HTTP spéciales.

30

FORMULAIRES

Balise FORM

Les attributs de la balise FORM (balise de fin obligatoire) sont donnés dans le tableau ci-après:

31

FORMULAIRES

Balise INPUT La balise <INPUT>...</INPUT> permet de créer un grand nombre de contrôles. Quelques-uns de ses attributs sont donnés dans le tableau ci-après:

32

FORMULAIRES

Balise SELECT Une balise select permet de créer un menu déroulant, ou une liste de sélection (à choix forcé ou multiple). La balise de fin est obligatoire. Chaque item de la liste est ensuite défini à l'aide de balises OPTION (balise de fin facultative), qui ont les mêmes attributs que INPUT. Les attributs de la balise <OPTION>...</OPTION> sont présentés dans le tableau ci-après:

Exemple: <SELECT Name="monMenu" MULTIPLE> <OPTION> élément 1 de la liste</OPTION> <OPTION> élément 2 de la liste</OPTION> <OPTION> élément 3 de la liste</OPTION> </SELECT>

33

FORMULAIRES

Balise TEXTAREA

Cette balise permet de créer une zone de texte. Trois attributs obligatoires: COLS (nombre de colonnes visibles), ROWS (nombre de lignes visibles), NAME bien sûr! Balise de fin obligatoire!

34

INSERTION fichier Audio

35

INSERTION fichier Audio

36

INSERTION fichier Audio

37

INSERTION fichier Vidéo

38

INSERTION fichier Vidéo

39

Nouvelle Structure

<div id="nav">

<nav>

HTML 5

<div id="header"> <header>

<div class="article"> <article>

<div id="content"> <section>

<div id="footer"> <footer>

<div id="right">

<aside>

40

HTML 5

Nouvelle Structure

<header>

l’en-tête

Publicité

<footer>

le pied-de-page

<nav>

les principaux liens de navigation Menus du site

<section>

les parties thématiques de la page

<aside> les informations complémentaires

<article>

Souvent un élément d’une section

41

HTML 5

Nouvelle Structure

42

Chapitre 2 : Le langage CSS

Année universitaire 2016-2017

Qu'est-ce que les feuilles de style?

• Nous avons vu dans le chapitre de mise en forme de texte que

l'allure des niveaux de titre (couleur, taille, alignement) pouvait être modifiée à l'intérieur de la balise de titre. De même, il était possible de changer la couleur de fond d'écran, l'image de fond. Mais toutes ces interventions se faisaient à l'intérieur du fichier source HTML.

• Si l'on désire harmoniser les titres, il faudra ainsi parcourir tous les fichiers sources pour modifier tel ou tel attribut. Depuis la version 4 du langage HTML, il est possible de créer des feuilles de style, qui ont pour tâche de regrouper les informations de mise en page des documents qui s'y réfèrent.

• Ainsi, plusieurs documents HTML peuvent appeler la même feuille de style, et la modification d'un attribut ne se fera que dans cette feuille de style.

44

Que modifier dans les fichiers HTML?

•

Il suffit dans le fichier HTML de spécifier la location et le nom de la feuille de style: Nous avions vu que la seule balise figurant dans l'en-tête était la balise <title>...</title>.

• En réalité, d'autres balises peuvent figurer dans l'en-tête,

et par exemple la balise <LINK>, qui permet de spécifier le nom de la feuille de style (extension ".css", pour "Cascading Style Sheet").

• Exemple: <HEAD> <TITLE>Ma page Web</TITLE> <LINK rel="stylesheet" HREF="maFeuilledeStyle.css" TYPE="text/css"> </HEAD>

45

Que modifier dans les fichiers HTML?

46

Comment écrire une feuille de style?

• Une feuille de style est un simple fichier texte, enregistré avec l'extension ".css". Ce fichier est constituée d'une série de lignes, chaque ligne correspondant à la définition des attributs d'une balise. La syntaxe est la suivante:

BALISE { ATTRIBUT1:valeur1; ATTRIBUT2:valeur2...}

• Exemple: •

BODY {background-color:blue} H1 {font-style:italic; font-family:sans-serif} EM {font-style:italic} EM EM {font-style:roman}

47

Comment écrire une feuille de style?

• La balise SPAN permet de créer la propre mise en forme d'un mot ou

d'un ensemble de mots. La définition de la balise se fera dans la feuille de style, sous la forme: ·· SPAN.classe1 { ATTRIBUT1:valeur1; ATTRIBUT2:valeur2...} SPAN.classe2 { ATTRIBUT1:valeur3...}

• et son utilisation dans le fichier HTML: Voici un exemple d'utilisation de la

• <SPAN class="classe1">première</SPAN> classe de SPAN et de la

<SPAN class="classe2">deuxième</SPAN> classe.

• La balise DIV permet de créer la propre mise en forme d'un

paragraphe. Elle s'utilise comme SPAN.

48

Notions de Classe & ID en CSS

49

Notions de Classe & ID en CSS

50

Notions de Classe & ID en CSS

51

Tableau de quelques propriétés

52

Tableau de quelques propriétés

53

Tableau de quelques propriétés

54

Bordures et marges en CSS

55

Bordures et marges en CSS

56

Bordures et marges en CSS

57

Bordures et marges en CSS

58

Bordures et marges en CSS

59

Bordures et marges en CSS

60

Bordures et marges en CSS

61

Bordures et marges en CSS

62

Chapitre 3 : Le langage JavaScript

Année universitaire 2016-2017

Plan

Partie II:

 Déclarations des fonctions

 Méthodes Utilisé

 L’ Accès aux éléments

Partie I :

 Pourquoi JavaScript?

 Ecriture du JavaScript

 Variables

 Types

 Boites de dialogue

 Opérateurs Javascript

 Structures conditionnelle

 Itérations

 Notion d’objet en JavaScript

 Fonctions Prédéfinis

64

Partie I

65

Pourquoi JavaScript?

 interprétable par le navigateur du côté Client

 Permet une interactivité au Web

* Contrôle des valeurs saisies dans un formulaire

 Les scripts populaires sont: JavaScript, VBScript,

JScript, etc.

66

Ecriture du JavaScript (1/2)

Deux possibilité :

Interne : le code de Java Script sera placé dans l’entête du

document XHTML

67

Ecriture du JavaScript(2/2)

Deux possibilité :

Externe: Regrouper les instructions de JavaScript dans un fichier

(.js) externe au fichier HTML .

68

Variables

 JavaScript est un

langage pauvrement typé, il n’est pas indispensable de déclarer préalablement le type de variable.

 Utiliser var pour déclarer les variables  Utiliser « ; » en fin d’instruction

Exemple: var saluer=“Bonjour”; var nom =“Ali”;

69

Types

 String, Number, Boolean, NaN, Null, etc.

NaN est le sigle de "Not a Number", c’est à dire "Ce n'est pas un nombre !" C'est en fait le résultat d'une opération mathématique sans sens (la division de 0 par 0, la racine carrée d'un nombre négatif, etc.)

NULL sert à spécifier une variable sans

valeur

70

Boites de dialogue (1/2)

PROMPT : prompt(‘MSG’,’Valeur ’);

Ex: var x = prompt(‘ veuillez mettre un message‘,’valeur’)

 X prend la valeur entrée ou Null si aucune

valeur n’est entrée

71

Exercice 1

Ecrire un script qui vous permet de réaliser les boites de dialogue

suivantes:

72

Commentaires

• Commentaires en JavaScript

Utiliser // pour les commentaires sur

une ligne.

Utiliser au début /* et à la fin */ pour les

commentaires sur plusieurs lignes.

73

Opérateurs JavaScript

Arithmétiques : + - / * ++ --

Comparaison:

< <= == != >= >

Concaténation des chaînes :

+

Assignation :

=

Spéciales: == et != convertissent les opérandes de même type

avant la comparaison

74

Structure Conditionnelle

 If (condition) instruction;

 If (condition) instruction else instruction;

Exemple:

REMARQUE: Mettre des { …} pour plusieurs instructions dans un block

75

conditionnel

Itérations

 While (condition) instruction;

 Do instruction While (condition);

 For (initialisation; condition; incrémentation) instructions;

Exemple:

 REMARQUE: Mettre des { …} pour plusieurs instructions dans un block itératif.

76

Notion d’objet en JavaScript

 JavaScript n’est pas un langage orienté objet mais un

langage basé sur les objets.

Un objet est une entité prédéfinie propre à Javascript.

La page Web est considérée comme un ENSEMBLE D’OBJETS

77

Exemple d’objet

Objet Fenêtre

Objet document

Objet Formulaire

Objet Texte

Objet Radio

Objet Bouton

78

Objet Array

Création de l’objet :

var mycars=new Array() ; mycars[0]="Saab" ; mycars[1]="Volvo" ; mycars[2]="BMW" ;

Ou bien :

var mycars=new Array("Saab“ ,"Volvo“ ,"BMW") ;

Pour contrôler la grandeur du tableau :

var myArray=new Array(3) ;

79

Publicité

Fonctions Prédéfinies

• Parsefloat ()

• Parseint ()

• String ()

• Number ()

• Length()

80

Fonction Parsefloat

 parsefloat(une_chaine);  Convertit une chaîne en nombre à virgule flottante

si la chaîne commence par un caractère numérique.

Exemple:

81

Fonction parseint

parseInt(chaine_de_caractère);  Convertit l'argument en un nombre entier  Renvoie NaN si la conversion est impossible

Exemple:

82

Fonction String

 String (une_chose);

Convertit l'argument en une chaîne

Exemple:

Resultat :

83

Fonction number

Number(une_valeur); Convertit l'argument en un nombre Renvoie NaN si la convertion est impossible

Exemple:

84

Exercice 2

85

Exercice 3

Développer en JavaScript un script qui permet de :

1/ Collecter auprès des utilisateurs les valeurs de x et y. Considérer les règles suivantes:  Si x>5 alors déduire 5 de x sinon ajouter 5 à x.  Si y>10 alors déduire 10 de y sinon ajouter 10 à y.

2/ Afficher le résultat x+y

86

Exercice 4

Développer en JavaScript un script qui

permet d’afficher

tous

les entiers

compris entre 1 et 1000 qui sont

divisibles par 23.

87

Partie II

88

Fonctions

Définies dans la parte <head> et appelé dans la partie <body>.

89

Méthodes utilisé

Instruction

Description

length

charAt()

indexOf()

lastIndexOf()

substring(x,y)

toLowerCase() toUpperCase()

C'est un entier qui indique la longueur de la chaîne de caractères. Méthode qui permet d'accéder à un caractère isolé d'une chaîne. Méthode qui renvoie la position d'une chaîne partielle à partir d'une position déterminée. (en commençant au début de la chaîne pricipale soit en position 0). Méthode qui renvoie la position d'une chaîne partielle à partir d'une position déterminée. (en commençant à la fin soit en position length moins 1). Méthode qui renvoie un string partiel situé entre l position x et la position y-1. Transforme toutes les lettres en minuscules. Transforme toutes les lettres en Majuscules.

90

La Propriété length

 La propriété length retourne un entier qui indique le nombre d'éléments dans une chaîne de caractères. Si la chaîne est vide (" "), le nombre est zéro.

La syntaxe est simple :

x=variable.length; x=("chaîne de caractères").length;

 La propriété length ne sert pas que pour les Strings, mais aussi pour connaître la longueur ou le nombre d'éléments :  Formulaires: Combien a-t-il de formulaires différents ?  Boutons radio: Combien a-t-il de boutons radio dans un groupe ?  Cases à cocher: Combien a-t-il de cases à cocher dans un groupe ?  Options: Combien a-t-il d'options dans un Select ?

91

La méthode CharAt() (1/2)

 Il faut d'abord bien noter que les caractères sont comptés de gauche à droite et

que la position du premier caractère est 0. La position du dernier caractère est donc la

longueur (length) de la chaîne de caractère moins 1.

chaîne : Javascript (longueur = 10)

||||||||||

position : 0123456789 (longueur - 1)

 Si la position que vous indiquer est inférieure à zéro ou plus grande que la

longueur moins 1, Javascript retourne une chaîne vide.

92

La méthode CharAt() (2/2)

La syntaxe de charAt() est :

chaîne_réponse = chaîme_départ.charAt(x);

NB : où x est un entier compris entre 0 et la longueur de la chaîne à analyser moins 1

Notez l’exemple suivant :

var str="Javascript";

var chr=str.charAt(0);

var chr="Javascript".charAt(0);

ou var chr=charAt(str,0);

ou var chr=charAt("Javascript",0);

 La réponse est "J".

93

La méthode indexOf (1/3)

Cette méthode renvoie la position, soit x, d'un string partiel

(lettre unique, groupe de lettres ou mot) dans une chaîne de caractères

en commençant à la position indiquée par y. Cela vous permet, par

exemple, de voir si une lettre, un groupe de lettres ou un mot existe

dans une phrase.

variable="chaîne_de_caractères";

var="string_partiel";

x=variable.indexOf(var,y);

94

La méthode indexOf (2/3)

 Où y est la position à partir de laquelle la recherche (de gauche

vers la droite) doit commencer. Cela peut être tout entier compris entre

0 et la longueur - 1 de la chaîne de caractères à analyser.

Si y n'est pas spécifié, la recherche commencera par défaut à la

position 0.

 Si le string partiel n'est pas trouvé dans la chaîne de caractères à

analyser, la valeur retournée sera égale à -1.

95

La méthode indexOf (3/3)

Exemple:

variable="Javascript" var="script" x=variable.indexOf(var,0);

 x vaut 4

variable="VanlanckerLuc&ccim.be"

var="@" x=variable.indexOf(var);

 x vaut -1

96

La méthode substring()

La méthode substring() sera particulièrement utile, par exemple, pour

prendre différentes données dans une longue chaîne de caractères.

variable = "chaîne de caractères"

resultat=variable.substring(x,y)

 Résultat est un sous ensemble de la chaîne de caractère (ou de la

variable).

Les x et y sont des entiers compris entre 0 et la longueur moins 1 de la

chaîne de caractères.

NB : Si x est égal à y, substring() retourne une chaîne vide.

97

La méthode substring() Javascript |||||||||| 0123456789

Exemple : str="Javascript"; str1=str.substring(0,4);

str2="Javascript".substring(0,4); str3=str.substring(6,9);

Les résultats sont : str1="Java"; soit les positions 0,1,2 et 3. str2="Java"; soit les positions 0,1,2 et 3. str3="rip"; soit les positions 6,7 et 8

98

Accès aux objets du formulaire

Window.document.forms[n].name_d’objet

1

2

3

1

2

3

forms[n] (c’est le tableau des formulaires) peut être remplacé par le nom de la balise form ou par getElementById(id de la balise form).

Puisque Window occupe la première place dans l’hiérarchie, il devient facultatif.

L’accès aux éléments de type input (1/3)

Les zones de texte:

La principale action en javascript sur une zone de texte est de

manipuler son contenu.

Il faut bien penser à ajouter la propriété .value pour accéder au contenu.

100

Exercice 5

1.Ecrire une fonction qui permet de vérifier les champs nom et CIN ne sont pas vide.

2. Ecrire une fonction qui permet de vérifier que le champs CIN est numérique et possède une longueur égale à 8 caractères.

101

Exercice 6

Développer en JavaScript un script qui permet d’afficher le choix

sélectionner.

1/ Si CSS sélectionner :

2/ Si JavaScript Sélectionner :

3/ Si Les Deux :

102

Exercice 7 (1/3)

Il vous a été demandé de compléter le script du jeu en

développant la fonction JavaScript CalculScore() qui permet de :

Afficher une alerte si le joueur coche moins ou plus de trois cases.

Calculer le score du jeu et afficher une alerte , « Vous êtes déjà un

joueur expert » si le score est plus grand que 15, sinon afficher une

alerte « Vous êtes encore un joueur débutant ».

103

Exercice 7 (2/3)

104

Exercice 7 (3/3)

105

L’accès aux éléments de type input (3/3)

Les radio boutons: Pour détecter qu'une case est cochée, il faut utiliser sa propriété checked

106

Exercice 8

Développer en JavaScript un script

qui permet d’afficher le choix de la case

radio choisie.

107

L’accès aux éléments de type Select

Résultat

108

Exercice 9

Développer en JavaScript un script qui permet d’accepter une adresse email respectant les règles suivantes:

– Exactement 1 seul caractère @ – Min 1 point celui-ci ne doit pas se situer tout juste avant ou après @ – Min 2 caractères après le dernier point – L’adresse email ne commence et ne finit ni par @ ni par un point

109

Des questions ?

110

Chapitre 4 : Le langage PHP

Année universitaire 2016-2017

Introduction

Publicité

 PHP est un

langage de script qui est principalement utilisé pour être exécuté par un serveur Web.

 L'objectif de ce langage est de permettre aux développeurs web d'écrire des pages dynamiques rapidement.

 Une page dynamique est une page qui s’exécute côté serveur (contrairement aux pages statiques HTML qui s’exécutent côté client

112

Introduction

 PHP n'est pas un langage compilé, c'est

un langage interprété par le serveur.

 Une plateforme minimale de base pour l’exécution d’un site web développé en PHP comprend :

-Interpréteur PHP -Un serveur web (Apache, IIS, …)

113

Exemple

<html> <head> <title>Exemple</title> </head> <body> <?php echo "Bonjour, je suis un script PHP!" ; ?> </body> </html>

114

Mise en oeuvre et déploiement

115

Fonctionnement du PHP

116

Les fonctionnalités du langage

 insertion de code PHP à l'aide des balises:

• <?php .............. ?>

• <? .............. ?>

• <?PHP .............. ?>

117

Les fonctionnalités du langage

des variables les variables sont représentées par une chaîne de caractères, ayant toujours comme premier caractère, le caractère dollar ($).

 Exemple 1: $x, $ch, $nomvariable

 Exemple 2: $x=«Bonjour »;

118

Les fonctionnalités du langage

ficher le contenu des variables

<?php $nom = " Bonjour ! "; echo $nom; ?>

 Ce qui affichera à l'écran : Bonjour !

119

Les fonctionnalités du langage

Concaténation de deux chaînes : <?php $ch1=«J'apprend »; $ch2=«le PHP»; $ch=$ch1.$ch2; echo $ch; ?>  Ce qui affichera à l'écran :

J'apprend le PHP

120

Les fonctionnalités du langage

Les Commentaires en PHP:

<?php // commentaire sur une ligne

/* commentaire sur plusieurs lignes */

commentaire de fin de ligne ?>

121

Les fonctionnalités du langage

Les opérateurs de contrôle :

== strictement égal != différent > supérieur à < inférieur à >= supérieur ou égale <= inférieur ou égale

122

Les fonctionnalités du langage

Les opérateurs de contrôle:

&& et || ou AND et OR ou TRUE 1 ou oui FALSE 0 ou non

123

Les fonctionnalités du langage

Les structures de contrôles :

Conditions if

<?php

if($var == ’condition’) { // ’condition vérifiée’ } else { //’condition non vérifiée’ } ?> ;

124

Les fonctionnalités du langage

Conditions elseif

<?php

If ($var == ’condition1’) { // ’condition1 vérifiée’; } elseif ($var == ’condition2’) { // ’condition2 vérifiée’; } elseif ($var == ’conditionN) { // ’conditionN vérifiée’; } else { echo ’Aucune condition n’est vérifiée’; } ?>

125

Les fonctionnalités du langage

Conditions SWITCH

<? php switch ($variable) { case condition1: //Traitement de la condition 1 ; break; case condition2: //Traitement de la condition 2 ; break; case conditionN: //Traitement de la condition N break; default: //Traitement par défaut } ?>

126

Les fonctionnalités du langage

Itération avec WHILE

<?php While ($condition) { //Traitements } ?>

127

Les fonctionnalités du langage

Itération avec FOR

<?php for($i=0; $i != condtion ; $i++) { //Traitements réalisés } ?>

128

Les tableaux

Tableau indexé

Tableau associatif

0

Renault

1

Clio

2

120TU5100

marque

Renault

modele

Clio

matricule

120TU5100

$tableau[0] = "Renault "; $tableau[1]= "Clio"; $tableau[2]= "120TU5100" ;

$tableau[‘marque’] = "Renault "; $tableau[‘modele’]= "Clio"; $tableau[‘matricule’]= "120TU5100" ;

Oubien

Oubien

$tableau = array("Renault" , "Clio", "120TU5100") ;

$tableau = array( "marque" => "Renault" , "modele" => "Clio", "matricule" => "120TU5100" ) ;

129

Passage et transmission de variables

Les données d’un formulaire sont envoyées à travers une des fonction du protocole HTTP : GET ou POST.

Syntaxe :

Code HTML

Code PHP

<form method="post" action="cible.php" /> <input type="text" name="nom" /> <input type="submit" value="OK" /> </form>

<?php

$nomRecupere=$_POST[‘nom’]; echo $nomRecupere; ?>

130

Passage et transmission de variables

Récupération du contenu des variables Selon que la méthode d’envoi a été du GET ou du POST la récupération du contenu des variables est faite selon une syntaxe différente :

Syntaxe : <?php

//Dans le cas d’un envoi des paramètres en POST $variable1=$_POST['nom_du_champ'] ; //Dans le cas d’un envoi des paramètres en GET $variable1=$_GET['nom_du_champ'] ; ?>

131

Passage et transmission de variables

Passage et transmission de variables

par hyperliens :

Des paramètres ou variables peuvent passer d’une page source vers une page transiter par un destination formulaire pour leur envoi. Les hyperliens peuvent être des vecteurs de passage de paramètres.

sans

132

Passage et transmission de variables

Syntaxe : <a href = 'supprimer.php?variable1=valeur1&variable2=valeur2’>

Envoyer </a>

 La récupération des paramètres dans la

page destination se fait par le tableau

 $_GET : $variable1=$_GET['variable1'] ; $variable2=$_GET['variable2'] ;

133

Le Langage PHP 5

• Classe (Attribut, Méthode) /Objet • constructeur • Encapsulation • Héritage

134

Motivation

• PHP5, introduit de véritables concepts OO :

-le constructeur

-le destructeur

- l’encapsulation

- L’héritage

- Les classes abstraites.

- Les interfaces

135

Notion de class/objet

• Une classe est une représentation abstraite

d'un objet.

• Une classe peut généralement être rendu

concrète au moyen d'une instance de classe,

que l'on appelle objet.

• Une classe s'écrit au moyen du mot "class" suivi

du nom de la classe et d'accolades.

136

Exemple

• Class Point { public $x=10; public $y=5; }

$x et $y sont deux attributs de la classe

Point.

137

Les constructeurs

• Le constructeur est la fonction qui est appelée

automatiquement par la classe lorsque vous

créez une nouvelle instance d'une classe a

l'aide de l'opérateur new.

Déclaration:

public function __construct() { }

138

Le mot clé « This »

• la variable $this utilisée à l'intérieur d'une

classe, vaut toujours une référence vers l'objet

lui-même (objet courant ).

Exemple:

echo $this->x; // affiche la valeur de la variable x;

139

Exemple

• Class Personne { public $nom; public $age;

public function __construct() { $this->nom= ‘’mohsen’’; $this->age= 20; }

}

140

Les droits d'accès (public)

• Les propriétés ou méthodes "public" sont

visibles et manipulables par tous les objets,

même s'ils sont d'autres classes.

Exemple :

public $nom;

141

Les droits d'accès (protected)

• Les propriétés ou méthodes "protected"

concernent les objets de la même classe ainsi

que ses dérivées, mais pas ceux des classes

étrangères.

Exemple:

protected $nom;

142