0% ont trouvé ce document utile (0 vote)
224 vues4 pages

Application02 PHP MySQL

Le document décrit la création d'un site web permettant aux utilisateurs de déposer des avis sur des logiciels et de consulter les avis déposés. Il inclut les instructions pour créer la base de données, les pages web et les scripts PHP nécessaires.

Transféré par

Moez Romdhane
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
224 vues4 pages

Application02 PHP MySQL

Le document décrit la création d'un site web permettant aux utilisateurs de déposer des avis sur des logiciels et de consulter les avis déposés. Il inclut les instructions pour créer la base de données, les pages web et les scripts PHP nécessaires.

Transféré par

Moez Romdhane
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 4

Chapitre III : Pages Web Dynamiques – Application 02 4S.I.

Application 02 - Examen du Baccalauréat TIC-19Mai2014-14h-Partie-PHP-MySql


Afin d’évaluer la qualité de ses logiciels, une société de développement désire créer un site web
offrant aux internautes les tâches suivantes :
– Dépôt d’un avis d’un internaute concernant un logiciel
– Consultation des avis déposés
– Affichage de la liste des logiciels évalués
Travail demandé :
A. Création de la base de données
1) Créer une base de données intitulée "BD-App-02" puis créer les trois tables suivantes :
Internaute (Pseudo, Nom, Prenom)
Logiciel (IdLog, Libelle, Description)
Avis (Pseudo#, IdLog#, DateAvis, Note, Commentaire)
Le tableau ci-dessous indique la description des champs des tables :
Champ Type Obsevation
Pseudo Chaîne de 6 caractères L'identifiant de l'internaute
Nom Chaîne de 20 caractères
Prenom Chaîne de 20 caractères
IdLog Chaîne de 4 caractères L'identifiant de l'internaute
Libelle Chaîne de 30 caractères
Description Chaîne de 50 caractères
DateAvis Date et heure La date et l'heure du dépôt de l'avis
Note Entier Une valeur dans [0..10]
Commentaire Chaîne de 50 caractères
2) Dans la table "Internaute", insérer les lignes suivantes :
Pseudo Nom Prenom
P01000 Missaoui Besma
201093 Gargouri Mohamed
40Tu30 Hammouda Houcine
3) Dans la table "Logiciel", insérer les lignes suivantes :
IdLog Libelle Description
P015 Delta Dev Environnement de développement Web
V001 Viral Antivirus
B006 Extra Write Logiciel de traitement de textes
NP23 Notepad++ Editeur de textes
4) Exporter la base au format Sql sous le nom attribué dans la première question.
B. Création des pages Web
1) Dans le dossier "WWW", créer un répertoire de travail nommé "SW<votre numéro
d’inscription>", où seront enregistrés tous les fichiers demandés.
Remarques :
• Dans chaque formulaire à créer, le clic sur le bouton "Annuler" permettra d’initialiser ses
champs.
• Dans chacune des pages du site, créer un lien de retour vers la page d’accueil.

Lycée Attarine Ariana 2019-2020 Page 1/4 [email protected]


Chapitre III : Pages Web Dynamiques – Application 02 4S.I.
• Avec le logiciel Flash, créer puis publier sous le nom "Index.html" un document comportant
trois boutons, comme illustré ci-dessous.

Sachant que le clic sur le bouton :


• "Avis" fait appel à la page "Ajouter.html".
• "Consultation" fait appel à la page "Consulter.html".
• "Liste" fait appel à la page "Lister.php".

2) Créer la page "Ajouter.html" contenant le formulaire suivant :

Sachant que le clic sur le bouton "Envoyer" fait appel à un script Php, développé dans le fichier
"Ajouter.php", permettant :
1. D’afficher le message "Pseudo erroné" dans le cas où la valeur saisie du pseudo
n’existe pas dans la base.
Ou bien,
2. D’insérer les données nécessaires dans la table appropriée et afficher un message
de réussite de l’opération.
N.B. : Le champ DateAvis contiendra la date et l’heure du système.
3) Créer la page "Consulter.html" contenant le formulaire suivant :

Le clic sur le bouton "Consulter" fait appel à un script Php,


développé dans le fichier "Consulter.php",
permettant d’afficher le libellé et la description du logiciel
sélectionné suivis par la liste des avis déposés par les
internautes et ordonnée selon la note attribuée comme
indiquée ci-dessous :
<Libelle> <Description>
<DateAvis> <Pseudo> <Etoiles>
N.B. : <Etoiles> : est une chaîne comportant autant
d’étoiles que la note attribuée.
Exemple : La note 4 sera représentée comme suit : 
4) Créer la page "Lister.php" permettant d’afficher, pour chaque logiciel évalué, son libellé et
la moyenne arithmétique des notes qui lui sont attribuées.

Lycée Attarine Ariana 2019-2020 Page 2/4 [email protected]


Chapitre III : Pages Web Dynamiques – Application 02 4S.I.

Ajouter.html

T1 T2

D1 S1

<select name="D1" required>


<option>Choisir un logiciel</option>
<option value="P015">Delta Dev</option>
<option value="V001">Viral</option>
<option value="B006">Extra Write</option>
<option value="NP23">Notepad++</option>
</select>

Ajouter.php

<meta charset="utf-8">
<?php
//Connexion à MySql & Sélection de la BD
mysql_connect("localhost","root");
mysql_select_db("BD-APP-02") or die('E1: '. mysql_error());

//Récup des données envoyées par le formulaire de la page Ajouter.html:


$Pseu = $_POST["T1"];
$Note = $_POST["T2"];
$IdLo = $_POST["D1"];
$Comm = $_POST["S1"];

//Vérifier l'existence de l'internaute


$Q = "SELECT * FROM Internaute WHERE Pseudo='$Pseu'";
$R = mysql_query($Q) or die('E2: '. mysql_error());

// Si la ressource $R est vide ==> Pseudo erroné


if (mysql_num_rows($R) == 0) exit ("Pseudo erroné!");

//Date et heure du système à l'instant de la déposition de l'avis


$Date=Date('Y-m-d H:i:s');

// Insertion de l'avis
$Q ="INSERT INTO Avis VALUES ('$Pseu', '$IdLo', '$Date', $Note, '$Comm')";
mysql_query($Q) or die('E3: '. mysql_error());

echo "Merci pour votre participation";


?>

Lycée Attarine Ariana 2019-2020 Page 3/4 [email protected]


Chapitre III : Pages Web Dynamiques – Application 02 4S.I.
Consulter.php
<?php
//Connexion à MySql & Sélection de la BD
mysql_connect("localhost", "root");
mysql_select_db("BD-APP-02") or die('E1: ' . mysql_error());
$IdLog = $_POST["D1"];
//Chercher et Afficher le Libellé et la Description du logiciel
$Q = "SELECT Libelle, Description FROM Logiciel WHERE IdLog='$IdLog'";
$R = mysql_query($Q) or die('E2: ' . mysql_error());
$T = mysql_fetch_array($R);
echo "$T[0] | $T[1] <hr>";

//Sélection et affichage des avis ordonnés selon la note:


$Q = "SELECT DateAvis, Pseudo, Note FROM Avis WHERE IdLog='$IdLog' ORDER BY Note";
$R = mysql_query($Q) or die('E3: ' . mysql_error());

while ($T = mysql_fetch_array($R)) {


$Note = Etoile($T["Note"]);
echo "$T[0] | $T[1] | $Note <hr>";
}
//Fonction <<Etoile>>
function Etoile($n){
$ch = "";
for ($i = 0; $i < $n; $i++) $ch .= "*";
return $ch;
}
?>

Lister.php
<?php
//Connexion à MySql & Sélection de la BD
mysql_connect("localhost", "root");
mysql_select_db("BD-APP-02") or die('E1: ' . mysql_error());

$Q = "SELECT L.Libelle, AVG(A.Note)


FROM Logiciel L, Avis A
WHERE L.IdLog=A.IdLog
GROUP BY A.IdLog";
$R = mysql_query($Q) or die('E2: ' . mysql_error());
?>
<table border="1">
<tr>
<th>Libellé</th>
<th>Note Moyenne</th>
</tr>
<?php
while ($T = mysql_fetch_array($R)) {
echo "<tr>";
echo "<td>$T[0]</td>";
echo "<td>$T[1]</td>";
echo "<tr>";
}
?>
</table>

Lycée Attarine Ariana 2019-2020 Page 4/4 [email protected]

Vous aimerez peut-être aussi