



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
an exam of HTML CSS JS PHP EXAM
Typology: Exams
1 / 7
This page cannot be seen from the preview
Don't miss anything!




Matière : Programmation Web et Multimédia Date : 30-06- Niveau : II1 Durée : 1H Nombre de pages : 3 pages + Annexe Documents : Non autorisés
Ecrire le code HTML/CSS permettant de reproduire fidèlement le formulaire d’inscription illustré par la Figure 1, sachant que : La police utilisée est « Calibri » La taille de la police utilisée pour le texte est 16px, pour les titres des fieldsets 18px Image du fond de la page : « Fond_page.jpg » La couleur du fond des différents fieldsets est : #00FFFF
Figure 1 Exercice 2 : (Javascript) (6pts) (1,5 par question) 1- Ecrire une fonction Javascript nommée "validation_radio () " permettant de vérifier que l’utilisateur a bien sélectionné un des deux choix proposés pour le champ "Genre". En cas d’erreur, la fonction doit afficher un message d’erreur.
4- Indiquer l’emplacement exact de l’appel de la fonction "validation_formulaire ()" dans le code HTML/CSS de l’exercice 1 permettant de déclencher la vérification de la validité des données entrées avant leur soumission au serveur.
N.B : on peut utiliser soit le nom (name) du champ (tel est le cas ici) soit l’id du champ en question et dans ce cas on utilise cette formulation : document.getElementById(Id_champ) ) Exercice 3 : (PHP) (6pts) (1.5 par question) Une fois les différents champs du formulaire d’inscription (illustré par la Figure 1) sont remplis correctement par le l’utilisateur, les données saisies sont soumises au serveur web d’adresse 197.80.10.3 et sauvegardées dans une table nommée « ABONNE » d’une base de données nommée « SITE ». La table « ABONNE » est définie comme suit : ABONNE Mail Logi n MotDePa sse No m Preno m DateNaissa nce Genr e Gouverno rat Professi on
- Le couple (Login, MotDePasse) constitue la clé composée utilisée pour identifier de façon unique chacun des abonnés du site. - Les différents champs de la table doivent avoir une valeur non nulle. 1- Ecrire une fonction PHP nommée « connexion » permettant de se connecter à la base de données « SITE » en utilisant l’outil PDO et en considérant les paramètres d’accès suivants : Login : " login_admin " Mot de passe : " motDePasse_admin " php function connexion (login_admin, motDePasse_admin)
try{ // connexion à la base de données SITE $db = new PDO('mysql:host=197.80.10.3; dbname=SITE;charset=utf8', 'login_admin', 'motDePasse_admin', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)); return ($db); } catch(Exception $e){ // En cas d'erreur : affichage message erreur die('Erreur : '.$e->getMessage()); } } ?> 2- Ecrire une fonction PHP nommée « enregistrement » permettant l’enregistrement, dans la table « ABONNE », des données relatives à l’ajout d’un nouvel abonné récupérées à partir du formulaire d’inscription de la Figure 1. prepare('INSERT INTO ABONNE (Mail, Login, MotDePasse, Nom, Prenom, DateNaissance, Genre, Gouvernorat, Profession) VALUES (:Mail, :Login, :MotDePasse, :Nom, :Prenom, :DateNaissance, :Genre, :Gouvernorat, :Profession)');
$requete->closeCursor(); } ?> 4- Ecrire une fonction PHP nommée « changer_profession » permettant à un abonné de mettre à jour sa profession dans la base de données du site. La fonction prend comme paramètres le login et le mot de passe de l’abonné en question ainsi que la nouvelle valeur à affecter au champ " Profession ". En cas d’échec, la fonction doit afficher un message d’erreur. Dans le cas contraire, un mail est envoyé à l’abonné lui informant du succès de la mise à jour de sa profession. prepare($sql) $requete->execute(array('Profession'=>$Profession, 'Login'=>$login, 'MotDePasse'=>$mot_passe)); $reponse = $db->query("SELECT Mail,Nom,Prenom FROM ABONNE where Login = $Login and MotDePasse = $MotDePasse"); $ligne = $requete->fetch(); $texte="Bonjour".$ligne["Nom"]." ".$ligne["Prenom"].",la mise à jour de votre profession a été effectuée avec succès." ; mail ($ligne["Mail"], 'Mise à jour profession', $texte); } catch(Exception $e){ die('Erreur Update Abonne:'.$e->getMessage()); } } ?>