Vous êtes sur la page 1sur 8

Université Frères Mentouri-Constantine1 – M2R&T Technologie Web - Examen -1° fevr 2022 - Durée: 1h30

(noté 4pts)Exo1: javascript (15mn) : Ecrire les programmes html et JavaScript permettant d’afficher la figure
suivante:

Nom de la page : 0,25

Aspect général + formulaire: 0,25 value: 0,25, pgm fermeture : 0,50

Ecriture html: 0,25 value: 0,25, appel pgm : 0,5

pgm date: 1 value: 0,25, pgm écriture ds le champ affichage: 0,5

(noté 4pts : 1 pt/question)Exercice 2 : html+javascript 20mn


1- Donner ce qui est affiché par l’interprétation du programme suivant
2- Après cet affichage, que se passe -t-il si on clique directement sur « valider » ou la touche « entrée » du
clavier (sans entrer de prénom)?
3- Que se passe -t-il quand on entre le prénom «djeha» puis on clique sur le bouton « valider » ?
4- Que se passe -t-il quand on efface le prénom puis on clique sur le bouton « valider » sans entrer de
prénom?
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" >
<title> exo1 M2 R&T rattrapage 2021 </title>
<script type="text/javascript">
function bonjour(pren)
{ if (pren.length==0) { pren = "anonyme" ; } ;
return 'Bonjour ' + pren.toUpperCase() +' de UFMC1 ' +'...'
} // fin de fonction bonjour
</script>
</head>
<body >
<form onsubmit="alert(bonjour(this.prenom.value)); return(false)" action=" ">
Donnez votre prénom :
<input type="text" size="8" name="prenom" value= "toto">
<input type="submit" name="validation" value="VALIDER">
<br >puis appuyez sur la touche <b>Entrée</b> ou cliquez sur le bouton <b>VALIDER</b>
</form>
</body>
</html>
(noté 5pts) Exo3: javascript (15mn) En adoptant pour le body une solution « 100% » javascript, écrire les
programmes pour effectuer ce qui suit :
0,75  Demande de saisir au clavier le nom de l’utilisateur (nom_user)
0,75  Puis appelle un programme exécutable intitulé calcul_m2r&t22.js ,
ce programme (écrit en javascript) est constitué d’une boucle qui :
0,5 - demande d’entrer un nombre (number),
0,5 - calcule sa racine carrée racine_number,
0,5 - puis affiche le texte « le nombre number a pour racine carrée racine_number»,
0,25 - puis affiche le texte « pour sortir de la boucle appuyer sur la touche q ou Q »,
0,25 - à l’appui sur la touche « q » ou « Q», on sort de la boucle.
1  Puis au retour du programme exécutable, le programme html affiche le résultat renvoyé par la fonction
racine( ) sous le format :
« Au revoir nom_user, vous avez exécuté n fois la fonction racine »,
où n est le nombre de fois que la boucle a été exécutée.

1
Université Frères Mentouri-Constantine1 – M2R&T Technologie Web - Examen -1° fevr 2022 - Durée: 1h30

Exo4 : PHP Nom Prénom Section


4.a Noté sur 2,5 points
Donner la suite du programme permettant d’obtenir ce qui est affiché dans la partie de droite.

Code PHP / HTML N°ligne Résultat obtenu à l’écran


<html> 1 Omar est en maternelle
<body> 2 Ali en première
3
<font size="2" face="Arial">Omar est en
4 Leur mère les accompagne
maternelle 5 jusqu’à l’école
</font> 6 il est 07h45mn

Remarques :
-La 1° et la 6°ligne sont affichées par le HTML
-Toutes les autres sont affichées par le PHP
-La 2°ligne commence par une tabulation
-La 4° et 5°ligne sont centrées
-L’heure de la 6°ligne a été donnée par le système PHP

4.b noté sur 2 points (0,5 pt/réponse)


 b.0 : Donner ce qui s’affiche à l’écran avant appui sur le bouton « ENVOI »
 Donnez ce qui s’affiche après appui sur le bouton « ENVOI », dans chacun des 3 cas suivants :
b.1 : on entre dans le champ « email » le texte « hhamdi@serveur.dz »
b.2 : on entre dans le champ « email » le texte « hocine.hamdi at hebergeur.dz »
b.3 : on entre dans le champ « email » le texte « hocine.hamdi@umc.edu.dz »
Le code HTML du formulaire Donne comme résultat à l'écran
<html><body> b.0
<form method="post" action="verif_mail.php">
<center>Votre email : <input type="text"
name="email" size="25"
value="prenom.nom@provider">
<b><input type="submit"
value="ENVOI"></center></b>
</form></body></html>
Donne comme résultat à l'écran après clic sur le
Le code PHP de verif_mail.php
bouton "ENVOI"
<?php
$email = $_POST['email'];
CAS b.1 :
$point = strpos($email,".");
$aroba = strpos($email,"@");
if($point=='')
{ echo "Votre email doit comporter un <b>point !</b>";
CAS b.2 :
}
elseif($aroba=='')
{ echo "Votre email doit comporter un <b>'@' !</b>"; }
else
CAS b.3 :
{ echo "Votre email est: '<a href=\"mailto:
$email\"><b>$email</b></a>'";
}
?>
2
Université Frères Mentouri-Constantine1 – M2R&T Technologie Web - Examen -1° fevr 2022 - Durée: 1h30

4.c exercice bonus noté sur 2,5 points


Dans le cas de l’architecture client-serveur, l’utilisateur tape dans la barre de recherche de son
navigateur FireFox l’adresse url suivante : https://www.telum.umc.edu.dz/course/normes&certif.html.
Sur son écran s’affichent alors : le nom de l’université, le nom du département, le nom de l’auteur, ainsi
que l’adresse url du cours (extraite de la base de données du serveur) sous forme de lien cliquable :
https://telum.umc.edu.dz/course/view.php?id=3211.

0,25pt

0,25pt

0,25pt
0,5pt
0,25pt 0,25pt

0,25pt
0,25pt

0,25pt

Sachant que le fichier html "normes&certif.html" comprend l’appel au fichier php "verif_mail.php",
donner la séquence des opérations effectuées par chacun des éléments suivants : Firefox, Apache, Php, MySql
(en précisant notamment ce qu’il envoie et ce qu’il reçoit).

3
Université Frères Mentouri-Constantine1 – M2R&T Technologie Web - Examen -1° fevr 2022 - Durée: 1h30

Solution exo1 : Fichier html « m2r&t_ctrl2022_exo1v4.html »


<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<title>m2r&t_ctrl2022_exo1v4</title>
<script>
function recupere_date()
{
jours = new Array ("dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi");
mois = new Array ("janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre",
"novembre","décembre");
date_du_jour = new Date();
jour_dans_semaine=jours[date_du_jour.getDay()];
if (date_du_jour.getDate()<10) {jour_dans_mois="0"+date_du_jour.getDate()}
else {jour_dans_mois=date_du_jour.getDate()};
mois_dans_annee=mois[date_du_jour.getMonth()];
an=date_du_jour.getFullYear();
date_aujourdhui="Nous sommes le "+jour_dans_semaine+" : "+jour_dans_mois+" "+mois_dans_annee+" "+an;
document.formul_affichage.champ_date.value =date_aujourdhui;
return ;
}
</script>
</head>
<body>
<br>
<form name="formul_affichage" action=""> <font color="#000080" size="5">
<b>
<center> <input value="Cliquez pour fermer la fenêtre principale"
onclick="window.close();" type="button"> </center>
</b></font>
<b> <font color="#0000ff" size="5"> <br><br>
<center>On va chercher la date
<input value="Cliquez pour afficher la date" onclick="recupere_date()" type="button">
</center>
</font></b> <br><br>
<center><input name="champ_date" size="80" type="text" value ="Champ d'affichage de la date du jour ">
</center> <br>
<hr><br><br>
</form></body></html>

4
Université Frères Mentouri-Constantine1 – M2R&T Technologie Web - Examen -1° fevr 2022 - Durée: 1h30

Solution exercice 2 : copies d’écrans partielles


1.Affichage à l’exécution du programme

2.Affichage après clic directement sur « valider » ou la touche « entrée » du clavier (sans entrer de prénom)

Remarque : en réalité la fenêtre affichée par « alert » est au milieu de la page et non pas dans le coin du bas.
C’est juste la copie d’une partie de l’écran.
3.Affichage après entrée du prénom « djeha » et clic sur « valider »

4.Affichage près effacement du prénom puis clic sur « VALIDER » ou appui sur «Entrée» sans donner de prénom

5
Université Frères Mentouri-Constantine1 – M2R&T Technologie Web - Examen -1° fevr 2022 - Durée: 1h30

Solution exo3_v3 100% javascript c’est « une » solution simple parmi d’autres et non pas « la » solution !
Fichier html « m2r&t2022_ctrl_exo3v3.html »
<html>
<head>
<title> m2r&t2022_ctrl_exo3v3</title>
<script type="text/javascript" src=" m2r&t2022_ctrl_exo3v3.js"> </script>
</head>
<body>
<script type="text/javascript">
var name_user = prompt("Entrez votre nom:");
var n= racine();
alert("Au revoir " + name_user + ", vous avez exécuté " + n + " fois la fonction racine") ;
</script>
</body></html>
/* m2r&t2022_ctrl_exo3v3.js : fichier js pour le fichier m2r&t2022_ctrl_exo3v3.html */
function racine()
{ var compteur = 0, caractere = "";
do
{var number=prompt("Entrez un nombre pour obtenir sa racine carrée:");
number=parseInt(number,10);
var racine_number=Math.sqrt(number);
alert ("la racine carrée de " + number + " est : " + racine_number);
caractere = prompt ("taper sur une touche du clavier (q/Q pour sortir de la boucle)");
caractere = caractere.toUpperCase();
compteur++;
}
while (caractere != "Q") ;
return compteur; //return(compteur) est également correcte
}

Exo4 Langage PHP


Solution Exo 4.a
<html> 1 Omar est en maternelle
<body> 2 Ali en première
<font size="2" face="Arial">Omar est en 3
maternelle 4 Leur mère les accompagne
</font> 5 jusqu’à l’école
<?php 6 il est 07h45mn
// le code PHP ---------
$heure = date("H\hi\m\n");
print("<font size=\"2\" face=\"Arial\"> <br>
\tAli en première\n\n<center> Leur mère les Remarques :
accompagne\n") ; -La 1° et la 6°ligne sont affichées par le HTML
-Toutes les autres sont affichées par le PHP
print (" jusqu\’à l\’école</center></font>"); -La 2°ligne commence par une tabulation
?> -La 4° et 5°ligne sont centrées
<!-- retour au code HTML --> -L’heure de la 6°ligne a été donnée par le système PHP
<br><font size="2" face="Arial">il est
<?phpecho$heure; ?>.</font>
</body>
</html>

6
Université Frères Mentouri-Constantine1 – M2R&T Technologie Web - Examen -1° fevr 2022 - Durée: 1h30

Solution Exo 4.b


 b.0 : affichage à l’écran avant appui sur le bouton « ENVOI »
 Appui sur le bouton « ENVOI » après :
b.1 : écriture dans la case du texte « hhamdi@serveur.dz »
b.2 : écriture dans la case du texte « hocine.hamdi at hebergeur.dz »
b.3 : écriture dans la case du texte « hocine.hamdi@umc.edu.dz »
Le code HTML du formulaire Donne comme résultat à l'écran
<html><body>
<form method="post" action="verif_mail.php"> b.0
<center>Votre email : <input type="text"
name="email" size="25"
value="prenom.nom@provider">
<b><input type="submit"
value="ENVOI"></center></b>
</form></body></html>
Donne comme résultat à l'écran après clic sur
Le code PHP de verif_mail.php
"ENVOI"
<?php
CAS b.1 : Votre email doit comporter un point !
$email = $_POST['email'];
$point = strpos($email,".");
$aroba = strpos($email,"@");

if($point=='')
{
echo "Votre email doit comporter un
CAS b.2 : Votre email doit comporter un '@' !
<b>point !</b>";
}
elseif($aroba=='')
{
echo "Votre email doit comporter un
<b>'@' !</b>";
CAS b.3 : Votre email est : hocine.hamdi@umc.edu.dz
}
else
{
echo "Votre email est: '<a href=\"mailto:
$email\"><b>$email</b></a>'";
}
?>

7
UFMC – Faculté des ST – Technologie Web – Chapitre 6 : introduction à PHP – Solutions des exercices
Solution Exo 4.c
FireFox Apache Php MySql
Envoi vers Apache de l’adresse url :
https://www.telum.umc.edu.dz/course/normes&certif.html
-Réception de l’adresse
url envoyée par le client
-lecture du fichier html
« normes&certif.html »
-extraction de ce fichier
html de la partie php
-Envoi vers Php du
fichier « verif_mail.php »
-exécution du code
php
-envoi vers Mysql de
la requête
d’extraction
d’adresse
-extraction de la BDD de l’adresse url
-envoi vers Php de l’adresse url :
https://telum.umc.edu.dz/course/view.php?id=3211
Renvoi vers Apache
du résultat de
l’exécution du code
php (l’adresse url)
Renvoi vers le client :
-de la partie html du
fichier
« normes&certif.html »
-du résultat de
l’exécution du code php
(l’adresse url du cours)
- interprétation du code html renvoyé par le serveur
(contenu html du fichier « normes&certif.html »), donc :
- AFFICHAGE SUR ECRAN-UTILISATEUR :
nom de l’université, nom du département, nom de l’auteur
- AFFICHAGE SUR ECRAN-UTILISATEUR de l’adresse url
renvoyée par le serveur Apache :
https://telum.umc.edu.dz/course/view.php?id=3211

Vous aimerez peut-être aussi