USTHB.
Faculté d'informatique 2024/2025
Dept.SIQ, ING3: Securité Janvier 2025
EMD: Programmation Avancée (Programmation Web)
(Durée: 1h30)
Nom : Prénom : Mat :
Pour chaque question, cocher la bonne réponse (bonne réponse=+0,5 /mauvaise réponse= -0,5)
Section 1
□ Bill Gates.
1. Qui est l’inventeur du Web ? □ J.C.R Licklider, Robert Taylor et Larry Roberts
□ Tim Berners-Lee
□ HTTP Markup Language
2. Que veut dire HTML ? □ Hypertext Markup Language
□ Hypertext Model Language
□ Pour qu’un titre soit plus grand qu’un autre
3. Laquelle des ces déclarations est correcte ?
Pour faire des titres, si nous utilisons H1 et H2, □ Pour signifier qu’un titre est plus important qu’un autre
c’est :
□ Pour Ordonner les titres
□ Cascading Style Sheets
4. Que veut dire CSS ? □ Colored Style Sheets
□ Cascading Style Shape
□ <script >…code…</script>
5. Pour ajouter un script JavaScript interne dans
□ <script Language="javascript">code</script>
document HTML, on utilise la syntaxe:
□ <javascript> …code…</javascript>
□ Hypermedia Transfer Protocol
6. Que veut dire HTTP ? □ Hypertext Transfer Protocol
□ Hypertext Transfer Processsor
□ PHP est un langage de programmation statique
7. Laquelle de ces déclarations est vraie ? □ PHP est un langage de programmation dynamique
□ PHP est un langage de fortement typé
□ Stuctured Query Langage
8. Lequel de ces langage permet d’interroger une
□ System Query Langage
base de données ?
□ Software Query Langage
□ Numéro de Port
9. Lequel de ces concepts correspond à l'adressage □ Adresse Web
unique des machines sur un réseau ? □ Adresse IP
□ autre réponse.
□ L'interactivité côté client
10. Le HTML est langage de présentation Web,
□ L'interactivité côté serveur
permettant:
□ Autre réponse
1/4
Faculté F.I, Dept.SIQ, ING3 Sécurité Programmation Web
□ Dans le head, dans une balise CSS
11. Laquelle de ces déclarations est fausses ? □ Dans le head, dans une balise Style
Pour déclarer le code CSS, nous pouvons le faire : □ Dans le head, dans une balise Link
□ Autre
□ JavaScript est un langage de programmation compilé
12. Laquelle de ces déclarations est vraie ? □ JavaScript n’est pas un langage de programmation
□ JavaScript est un langage de programmation multi-paradigmes
□ Établir une connexion entre le client et le serveur
□ Transmettre des données entre le client et le serveur
13. Quel est l'objectif du HTTP ?
□ Surveiller la connexion entre le client et le serveur
□ Contrôler les données transmises entre le client et le serveur
□ Pour associer un identifiant temporaire à la session
14. En PHP, quand on met en place un mécanisme de
□ Pour stocker les données de la session
Session, un cookie est automatiquement créé:
□ Toutes les propositions sont fausses
Section 2
□ de créer des pages Web Dynamiques
1. Laquelle de ces déclarations est vrai ? □ de remplir le contenu des pages Web
Le SQL permet... □ la communication entre le navigateur et un SBGD
□ toutes les propositions sont fausses
□ d'envoyer des page Web sur Internet
□ d'envoyer des données numériques sur une ligne téléphonique
2. Le modem est un équipement capable
□ d'envoyer des données analogiques sur une ligne téléphonique
□ autre réponse.
□ La balise <em> est de type block.
3. Laquelle de ces déclarations est fausse ?
□ La balise <em> est de type inline.
□ Top et Left sont modifiables
4. Laquelle de ces déclarations est correcte ?
□ Right et Bottom sont modifiables
En CSS, quand position=relative
□ Top, Right,Left et Bottom ne sont pas modifiables
□ Javascript est un langage dynamique et faiblement typé
□ Javascript est un langage dynamique et fortement typé
5. Laquelle de ces déclarations est vraie ?
□ Javascript est un langage static et fortement typé
□ Autre réponse
□ Doit être toujours démarré
6. Parmi ces propositions, laquelle ne fait pas partie □ Doit être toujours à l’écoute des requêtes
des spécifications de base que doit remplir un
serveur Web: □ Doit répondre aux requêtes
□ Doit assurer la persistence des données
□ print_r($person["name"])
7. Comment afficher à la valeur associée à la clé □ print_r($person("name"))
"name" dans le tableau suivant ?
□ echo $person["name"]
$person = array("name"=> "John Doe", "age"=> 32,
"city"=> "New York"); □ echo $person("name")
□ Le code contient une erreur
2/4
Faculté F.I, Dept.SIQ, ING3 Sécurité Programmation Web
□ Grâce au protocol HTTP
8. Laquelle de ces déclarations est vraie ? □ Grâce au protocol SQL
Les requêtes SQL sont envoyées du serveur au
SGBD…. □ Grâce au protocol SGBD
□ Les 3 propositions sont fausses
□ Numéro unique pour chaque programme
9. A quoi correspond le port dans le système □ Numéro unique pour chaque page Web
d'exploitation ? □ Adresse IP pour chaque serveur Web
□ autre réponse.
□ Browser Object Modem
10. Qu'est-ce que le BOM ? □ Une représentation modulaire de la page web
□ Modèle d'objet de navigateur
□ document.getElementsByTagName
□ document.getElementsByClassName
11. Laquelle de ces méthodes Javascript ne permet
□ document.getElementByName
pas de sélectionner un élément HTML ?
□ document.querySelectorAll
□ Les 4 le permettent
□ La requête HTTP
12. Laquelle de ces propositions doit contenir
□ La réponse HTTP
l’attribut "Content-Type" :
□ Les deux
□ $stmt = $pdo->prepare("nom"=>$nom)
13. Laquelle de ces propositions pourrait permettre de □ $stmt->execute(["nom"=>$nom])
passer un paramètre à une requête PHP préparée
? □ $stmt->query(["nom"=>$nom])
□ Toutes les propositions sont fausses
Section 3
1. Quelle est la sortie de ce code PHP ?
<?php
$numbers = [2, 3, 4, 5, 6];
$total = 0; □ 6
foreach ($numbers as $x){ □ 10
if($x % 2 == 0 && $x % 3 == 0){
$total = $total + $x; □ 9
} □ Le code contient une erreur
}
echo $total;
?>
3/4
Faculté F.I, Dept.SIQ, ING3 Sécurité Programmation Web
2. Soit le code html suivant :
1 <div>
2 <h2 class="c1" style="color:orange"> X
</h2>
3 <div class="c1">
4 <h1 style="color:red" id="id1">Y</h1>
5 </div> □ (2) Red , (4) Red, (6) Green
6 <h1 class="c2"> Z </h1> □ (2) Orange , (4) Red, (6) Yellow
7 </div>
□ (2) Green , (4) Red, (6) Green
Soit le code CSS suivant défini dans un fichier style.css : □ (2) Orange , (4) Black, (6) Green
.c1 {color : green ;} □ (2) Red , (4) Black, (6) Blue
div .c2 { color : blue }
.c2 {color : red ;} □ (2) Green , (4) Black, (6) ) Blue
h1 {color : green ;} □ (2) Orange , (4) Red, (6) Blue
h2, #id1 {color :blue;}
#id1 {color :black;}
div .c2 { text-color : Yellow }
Question :
Quelle est la couleur des éléments définis à la ligne 2, 4
et 6 ?
3. Dans le code HTML et CSS précédent, laquelle de □ div, h1 ,h2 { display : inline; }
ces déclarations CSS permettra d’aligner X, Y et Z
sur la même ligne : □ div h1 h2 { display : inline; }
□ div h1, div h2 { display : inline; }
□ Autre réponse
□ Exécute la requête SQL
4. Que fait cette instruction ? □ Récupère une ligne de résultat sous forme de tableau associatif
$stmt->fetch(PDO::FETCH_ASSOC); □ Prépare une requête SQL pour l'exécution
□ Toutes les propositions sont fausses
□ Créé une nouvelle base de données
5. Que fait cette instruction ?
□ Établit une connexion avec une base de données
$pdo = new PDO($dsn, $user, $password);
□ Prépare une requête SQL en utilisant l’instance $pdo
□ Navigator
6. Lequel des ces objets n’est pas un enfant du BOM □ Screen
□ Media
□ @media mobile and (min-width: 600px)
7. Quelle est la condition correcte pour cibler les □ @media screen and (min-width: 600px)
appareils mobiles dans une Media Query ? □ @media screen and (max-width: 300px)
□ @media screen and (device-type: mobile)
Section 4
4/4
Faculté F.I, Dept.SIQ, ING3 Sécurité Programmation Web
1. Soit le tableau d’objets suivants : □ Une erreur
const e =[(id :1, p : 1),(id :2, p :1),(id :3, p :3)];
function f1(o){o.p = o.p+2 ;} f1(e[0]); □ 1
Console.log(e[1].p+1) ; □ 2
Question :Lequel de ces résultat sera affiché dans la □ 3
console ? □ 4
□ La requête HTTP
2. Laquelle de ces propositions doit contenir
□ La réponse HTTP
l’attribut "Accept" :
□ Les deux
3. Quelle est la sortie de ce code PHP ?
<?php
function f(&$x){ □ 2
$x=$x+2 ;
} □ 3
$numbers = [2, 3, 4, 5, 6]; □ 4
f($numbers[1]) ; □ 5
echo($numbers[1]) ;
?> □ Le code contient une erreur
□ $_GET
4. Quelle variable Superglobale permet d'accéder aux
données envoyées à partir d'une requête HTTP, □ $_REQUEST
qu'elle soit transmises via la méthode GET ou □ $_POST
POST ?
□ $_SERVER
5. Nous avons sélectionné un élément HTML de type
Checkbox avec l’instruction suivante : □ if ( chbk.checked )
chbk = table.querySelectorAll(".col_chkbox input")[0];
□ if ( chbk[0].checked )
Question : Laquelle de instruction permettra de
□ if ( chbk["checked"]==true)
vérifier si la checkbox est cochée ?
□ 2xx
6. Parmi ces propositions, laquelle n’est pas un code □ 4xx
statu http valide: □ 6xx
□ Toutes les propsitions sont fausses.
5/4