BB-Info-2023-SI-STI - CCC
BB-Info-2023-SI-STI - CCC
BB-Info-2023-SI-STI - CCC
Riadh HARIZI
Section : Sciences de l’Informatique
DEVOIR DE SYNTHÈSE Épreuve : Systèmes & Technologies de l’Informatique
N°3 Date : Mardi 14 mai 2023 Durée : 3h
Important : Pour chaque affirmation, toute réponse comportant plus d’une croix est considérée erronée.
1) En HTML, l’événement "onblur" d’une zone de texte, se déclenche lorsqu’on :
2) En HTML, pour lier le fichier "monstyle.css" situé dans le dossier comportant le document html appelant,
on utilise la balise :
<a href="monstyle.css">
3) En CSS, l’instruction qui permet d’incliner un texte identifié par le nom "Texte1" de 50 degrés est :
4) En PHP, l’instruction qui permet d'inclure le contenu du fichier "Fichier1.php" dans un autre fichier
"Fichier2.php" est :
require ("Fichier2.php") ;
require ("Fichier1.php") ;
define ("Fichier1.php");
Page 1 / 8
EXERCICE N°2 (4 points)
"Rapide_Transport" est une société spécialisée dans le transport des personnes entre les régions du grand Tunis
(Tunis, Ariana et Ben Arous). Elle a développé une plateforme autour d’une base de données permettant à ses
clients de chercher des trajets entre ces trois régions.
Ci-dessous, la représentation textuelle simplifiée de cette base de données.
Ville (CodeVille, NomVille)
Voiture (Immat, NomChauffeur, TelChauffeur)
Trajet (CodeVilleDep#, CodeVilleArr#, Immat#, DateHeureDep, Frais)
Soit la description des noms des colonnes des tables de cette base de données :
Nom Description Nom Description
CodeVille Code d’une ville CodeVilleDep Code d’une ville de départ d’un trajet
NomVille Nom d’une ville CodeVilleArr Code d’une ville d’arrivée d’un trajet
Immat Immatriculation d’une voiture DateHeureDep Date et heure de départ d’un trajet
NomChauffeur Nom et prénom d’un chauffeur Frais Frais d’un trajet
TelChauffeur Téléphone d’un chauffeur
On présente ci-dessous un extrait de la page "Recherche.html" qui permet d’envoyer à la page "affichage.php"
les données du formulaire "F", afin d’afficher la liste des trajets répondant aux valeurs saisies dans les champs
du formulaire.
Page 2 / 8
1) En se référant au code HTML de la page "Recherche.html", compléter le tableau ci-dessous par le code
CSS adéquat à chaque mise en forme.
"#ffffcc". …………………………………………………………………………………...…
…………………………………………………………………………………...…
Les champs de saisie "Ville de départ", "Ville
…………………………………………………………………………………...…
d’arrivée" et "Date et Heure de départ" doivent
…………………………………………………………………………………...…
avoir des bordures solides, de taille 1 pixel, de
…………………………………………………………………………………...…
couleur rouge avec des coins arrondis de 5 pixels. …………………………………………………………………………………...…
2) Afin de contrôler les données saisies dans le formulaire de la page "Recherche.html", on se propose de créer
le fichier "controle.js" qui contient les contrôles nécessaires sur les champs du formulaire.
Pour chacune des propositions ci-dessous, une seule réponse est correcte. Mettre une croix (X) dans la case
correspondante.
Important : Pour chaque affirmation, toute réponse comportant plus d’une croix est considérée erronée.
b) L’instruction qui permet de récupérer la valeur du champ "Dateheure" par le biais de son identifiant est :
F.getElementById('Dateheure').value
document.getElementById('Dateheure').value
Dateheure.value
c) L’instruction qui permet de récupérer l’indice d’une option sélectionnée du champ "VilleDep" est :
document.getElementById('VilleDep'). selectedIndex
document.getElementById('VilleDep').value
document.getElementById('VilleDep').index
Page 3 / 8
3) La page "affichage.php" reçoit les données envoyées par la page "Recherche.html" afin d’afficher les noms
et les numéros de téléphones des chauffeurs qui assurent des trajets de la ville de départ vers la ville d’arrivée
à la date et à l’heure saisies.
a) Valider chacune les propositions ci-dessous en mettant dans la case correspondante la lettre "V" si elle
est correcte ou la lettre "F" dans le cas contraire.
i. La méthode qui permet d’envoyer au serveur les données d’un formulaire "F" de la page
"Recherche.html" est :
ii. En PHP, la requête qui permet de chercher, dans la base de données, la liste des noms et des numéros
de téléphones des chauffeurs répondant aux critères adéquats est :
< ?php
/* Instruction(s) permettant d’exécuter la requête puis d’afficher les noms et les numéros de téléphones
des chauffeurs. */
…………………………………………….…………………………………………………………………………………………….…………..……
…………………………………………….…………………………………………………………………………………………….…………..……
…………………………………………….…………………………………………………………………………………………….…………..……
…………………………………………….…………………………………………………………………………………………….…………..……
…………………………………………….…………………………………………………………………………………………….…………..……
…………………………………………….…………………………………………………………………………………………….…………..……
…………………………………………….…………………………………………………………………………………………….…………..……
…………………………………………….…………………………………………………………………………………………….…………..……
?>
Page 4 / 8
EXERCICE N°3 (9.25 points)
Afin d’encourager les jeunes entrepreneurs, les étudiants et les startupers de créer leurs projets sans frais
d’investissement et de travailler dans un environnement collaboratif, l’association "Jeune Initiative", spécialisée
dans le travail collaboratif (Coworking) a mis à la disposition de ses adhérents des espaces de coworking
contenant plusieurs équipements de différents types (Ordinateurs, Imprimantes, photocopies, etc.). Pour gérer ces
espaces, le responsable du service informatique de l’association a implémenté la base de données simplifiée
intitulée "Gestion_Espaces" décrite par la représentation textuelle suivante :
Ville (CodeVille, NomVille)
Adherent (IdAdh, NomPren, EmailAdh, TelAdh, FraisIns, CodeVille#)
Espace (CodeEsp, NomEsp, Adresse, EmailEsp, NbSalles, CodeVille#)
Type (CodeType, LibType)
Equipement (CodeEq, NomEq, NumSerie, PrixAchat, CodeType#, CodeEsp#)
Travail (CodeEsp#, IdAdh#, DateTrav, NbreHeures, NumSalle)
En se référant à la représentation textuelle et à la description des colonnes des tables données ci-dessus, répondre
aux questions suivantes :
1) Compléter le tableau ci-dessous par la clé primaire et les clés étrangères de la table "Travail".
Clé primaire Clés étrangères
2) Pour chacune des affirmations ci-dessous, mettre une croix (X) dans la case correspondante à la seule
réponse correcte.
a) Pour s’assurer que toutes les adresses Emails des adhérents ne se répètent pas, on utilise la requête SQL :
ALTER TABLE Adherent ADD CONSTRAINT EmailAdh DISTINCT
ALTER TABLE Adherent ADD CONSTRAINT EmailAdh UNIQUE
ALTER TABLE Adherent ADD CONSTRAINT PRIMARY KEY (EmailAdh)
b) Pour garantir la saisie d’une valeur strictement supérieure à 0 dans le champ "NbSalles", on utilise la
requête SQL :
c) d’afficher la liste des adhérents (NomPren, TelAdh) qui ont travaillé dans des espaces de leurs villes.
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
d) d’afficher, pour chaque type d’équipement, son libellé ainsi que le montant total des prix de leur achats.
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
e) d’afficher les noms des adhérents qui n’ont pas travaillé dans les espaces de travail de l’association.
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
…………………………………………….…………………………………………………………………………………………….…………..………………...
Page 6 / 8
EXERCICE N°4 (4.75 points)
"Digital Marketing" est une société spécialisée dans le marketing digital. Elle lance une plateforme afin de
commercialiser ses produits par l’intermédiaire d’une liste d’influenceurs possédant chacun plusieurs comptes
sur les réseaux sociaux.
Afin de gérer les réactions des internautes sur les publications des influenceurs, le gérant de la société utilise la
base de données simplifiée intitulée "Gestion_ influenceurs" décrite par la représentation graphique suivante :
Page 7 / 8
1) En se basant sur la représentation graphique et les règles de gestion ci-dessus, compléter le tableau ci-après
en mettant dans la colonne "Respect" le mot "Oui" si la règle est respectée dans la représentation graphique
ou le mot "Non" dans le cas contraire. Indiquer dans la colonne "Justification" la cause du non-respect de la
règle.
…………………………………………………………………………..…………………………………………………….
R2 ……………………
…………………………………………………………………………..…………………………………………………….
…………………………………………………………………………..…………………………………………………….
R3 ……………………
…………………………………………………………………………..…………………………………………………….
…………………………………………………………………………..…………………………………………………….
R4 ……………………
…………………………………………………………………………..…………………………………………………….
…………………………………………………………………………..…………………………………………………….
R6 ……………………
…………………………………………………………………………..…………………………………………………….
2) Le gérant de la société a remarqué que la publication "P003" a été publiée dans deux comptes différents
"C001" et "C005" d’où le non-respect de la règle "R5" lors de la création de la base de données.
Afin de respecter cette règle, apporter les modifications nécessaires sur la table "Publication" puis donner
sa nouvelle représentation textuelle tout en soulignant la clé primaire et en ajoutant "#" devant les clés
étrangères, sachant que la table "PublicationCompte" sera supprimée.
…………………………………………...…….……………………………………………………………………………………………………………..…………
3) Pour vérifier la validité de l’insertion des données dans la table "Reaction", le gérant de la société veut insérer
l’enregistrement suivant :
CodePub TypeReact DateHeureReact
P001 J’aime 01/05/2023 14:52:20
Lors de cette insertion, le système de gestion de base de données affiche le message d’erreur illustré par la
figure suivante :
b) Afin de respecter la règle "R7", apporter les modifications nécessaires sur la table "Reaction" puis
donner sa nouvelle représentation textuelle tout en soulignant la clé primaire et en ajoutant "#" devant
les clés étrangères.
…………………………………………...…….……………………………………………………………………………………………………………..…….
Barème
Exercice 1 (2 points) 2 (4 points) 3 (9.25 points) 4 (4.75 point)
Questions 1 2 3 4 1 2 3 4 1 2 3
Points 2=0.5*4 0.75 0.75 1.5 1 0.75 1=0.5*2 5.5=1+1+1+1.25+1.25 2=0.5+0.5+1 1.75=1.25+0.5 1 2=1+1
Page 8 / 8