Examen de Développement d’Applications Web 01
Examen de Développement d’Applications Web 01
-
Consignes
- Les documents (polycopiés, livres, …) sont autorisés. Vous pouvez faire les questions dans l’ordre que vous souhaitez.
-
Questions de cours (5 points)
- Les scripts PHP contenus dans les pages web sont ils exécutés par le navigateur?
- Quels sont les 4 tableaux super globaux PHP vus en cours ?
- Quel est le principe de fonctionnent de l’architecture client/serveur ?
- Quelle est l’utilité des sessions dans les applications web.
- Écrivez un tableau multidimensionnel associatif dont les clés sont des noms de personne et les valeurs des tableaux indicés contenant le prénom, la date de naissance et le lieu de naissance de la personne.
- Utilisez une boucle foreach pour lire le tableau de la question 5.
-
Problème (15 points)
- Nous considérons ici une entreprise appelée apcpedagogie qui vend des produits informatiques en ligne et qui souhaite développer son site web de vente.
- On suppose constituée une base de données MySQL appelée DB_apcpedagogie comprenant trois tables :
-
produits, clients et commandes.
- La table produits a quatre champs :
- un numéro entier d’identification, id_produit,
- Un nom du produit exemple clavier, libelle_produit,
- Un entier prix, qui représente le prix du produit (exemple : 150 Dinard), prix_produit,
- Un entier quantité qui donne pour chaque produit la taille du stock (exemple : 6 s’il reste 6 claviers en stock),qtite_produit.
- La table clients a quatre champs :
- Le numéro d’identification du client, id_client.
- Le prénom du client, prenom_client.
- Le nom du client, nom_client.
- La date de naissance du client, dteNaissance_client.
- La table commandes a quatre champs :
- un numéro d’identification id_commande,
- un numéro d’identification de l’objet commandé id_produit,
- un numéro d’identification du client qui passe la commande id_client,
- Le nombre d’objets commandés qtte_commande.
- Utiliser phpMyAdmin pour remplir la table clients avec les données suivantes :
- INSERT INTO ‘clients’ VALUES (‘06262626’, ‘Mounir’, ‘RACHDI’, ’12/02/2000′);
- INSERT INTO ‘clients’ VALUES (‘06272727’, ‘Samira’, ‘HACHED’, ’13/05/1999′);
- INSERT INTO ‘clients’ VALUES (‘06326598’, ‘Lamia’, ‘SAMMOUD’, ’02/08/2001′);
- INSERT INTO ‘clients’ VALUES (‘06124578’, ‘Slah’, ‘KMAR’, ’03/04/2000′);
- INSERT INTO ‘clients’ VALUES (‘08124578’, ‘Takwa’, ‘NAFFETI’, ’08/03/1999′);
- INSERT INTO ‘clients’ VALUES (‘05784512’, ‘Jesser’, ‘HAJJEJ’, ’07/12/1999′);
- INSERT INTO ‘clients’ VALUES (‘07785645’, ‘Samar’, ‘RKAYA’, ’24/11/2000′);
- INSERT INTO ‘clients’ VALUES (‘08549878’, ‘Sorento’, ‘DELERGUI’, ’22/01/1998′);
- Faites une fonction db_connexion chargée de se connecter à la base de données (hôte : localhost, login : root, mot de passe : examenPHP) et de sélectionner la base de données DB_apcpedagogie
- Créer un script permettant d’afficher le contenu de la table clients dans un tableau HTML dans une page nommée afficheClients.php. Les résultats doivent être triés par dteNaissance.
- Créer une page afficheProduits.php contenant un script permettant d’afficher, sous forme de tableau HTML (utiliser Bootstrap 5), la liste des produits.
- Créer un formulaire permettant l’insertion de nouvelles données dans la table produits et enregistrer là dans une nouvelle page ajoutProduit.php.
- Créer un formulaire de recherche dans une page rechercheCommandes.php permettant de retrouver tous les commandes passées par une personne donnée.