الرئيسية › الامتحانات › باكالوريا علوم الإعلامية
Devoir pratique STI n°11 : les prix de la boutique, vérifier le formulaire en JavaScript, modifier et supprimer des produits en PHP et MySQL
اكتب البرامج متاعك بـ Python ولا بالـ algorithme وثبّت فيهم في بلاصتهم، وبعد حلّ الإصلاح تمرين بتمرين.
Le travail se fait sur ordinateur, avec un serveur local (XAMPP) : chaque fichier est enregistré sous le nom donné, dans le même dossier. Les deux exercices construisent la gestion des prix de la boutique : la page prix.html vérifie la référence et le prix avec le fichier controle.js de l'exercice 1, puis les envoie à la page modifier.php de l'exercice 2 ; ses liens ouvrent supprimer.php. Barème sur 20 points.
الموضوع مكتوب بالفرنسي، كيما في القسم.
Exercice 1 : vérifier le formulaire des prix (8 pts)
La page prix.html de la boutique (donnée à l'exercice 2) envoie une référence de produit et un nouveau prix à modifier.php. Avant l'envoi, sa fonction verifier() (onsubmit, donnée dans la page) vérifie les deux champs avec deux fonctions JavaScript, à écrire dans le fichier controle.js sans expression régulière :
- 1) la fonction refValide(r) qui renvoie true si r a exactement 3 caractères : une lettre majuscule (de A à Z) puis deux chiffres, comme P01 ; sinon false (4 pts) ;
- 2) la fonction prixValide(t) qui reçoit le texte saisi et renvoie true s'il n'est pas vide, n'a que des chiffres et que sa valeur est strictement positive ; sinon false (4 pts).
Exemples : refValide("P01") donne true, refValide("p01") donne false, prixValide("25") donne true et prixValide("12.5") donne false.
Exercice 2 : modifier et supprimer des produits (12 pts)
La boutique garde ses produits dans la base MySQL boutique, créée par le fichier base.sql (prix en dinars). La connexion à la base est dans connexion.php, que chaque page inclut avec require. La page prix.html, reliée à controle.js (exercice 1), envoie une référence et un nouveau prix à modifier.php avec la méthode POST ; ses liens ouvrent supprimer.php avec une référence.
CREATE DATABASE boutique;
USE boutique;
CREATE TABLE produit (
ref VARCHAR(5) PRIMARY KEY,
nom VARCHAR(40) NOT NULL,
prix INT NOT NULL,
stock INT NOT NULL
);
INSERT INTO produit VALUES
('P01', 'Clé USB 32 Go', 25, 14),
('P02', 'Souris sans fil', 35, 0),
('P03', 'Casque audio', 60, 3),
('P04', 'Tapis de souris', 8, 0);
<?php
$cnx = mysqli_connect("localhost", "root", "", "boutique");
?>
<form action="modifier.php" method="post" onsubmit="return verifier()">
<input type="text" name="ref" id="ref">
<input type="text" name="prix" id="prix">
<input type="submit" value="Modifier le prix">
</form>
<p>Supprimer : <a href="supprimer.php?ref=P02">P02</a> <a href="supprimer.php?ref=P04">P04</a></p>
<script>
function verifier() {
if (!refValide(document.getElementById("ref").value)) {
alert("Référence invalide");
return false;
}
if (!prixValide(document.getElementById("prix").value)) {
alert("Prix invalide");
return false;
}
return true;
}
</script>
<script src="controle.js"></script>
- 1) Écrire la page modifier.php : si le prix reçu n'est pas un entier strictement positif, elle affiche « Prix invalide » ; sinon elle change le prix du produit et affiche « Prix modifié », ou « Produit introuvable » si aucun produit n'a cette référence (6 pts).
- 2) Écrire la page supprimer.php qui reçoit une référence par la méthode GET (paramètre ref) : si aucun produit n'a cette référence, elle affiche « Produit introuvable » ; si le produit a encore du stock, elle affiche « Impossible : le produit est en stock » ; sinon elle le supprime et affiche « Produit supprimé » (6 pts).
الإصلاح المفصّل
الإصلاح متاع الامتحان هذا للمشتركين. فيه التحليل، والـ algorithme بالنوطاسيون التونسية، والبرنامج Python المجرّب، والغلطات اللي ترجع برشا في كل تمرين. بحساب بلاش، تنجم تحلّ 3 إصلاحات تختارهم إنت.
ادخل لحسابك قبل: اعمل حساب ولا ادخل.
مازال عندك 0 إصلاح بلاش.
باش تحلّ الإصلاحات الأخرين لازمك اشتراك. شوف الأسعار ولا اطلب code على WhatsApp ولا Instagram ولا Facebook.
الإصلاحات اللي بلاش متاع الجهاز هذا تستعملو، بالحساب هذا ولا بحساب آخر: كل جهاز عندو 3 إصلاحات بلاش، مهما كان عدد الحسابات. للإصلاحات الأخرين لازمك اشتراك. شوف الأسعار ولا ابعثلنا على WhatsApp.
الموقع توّا في فترة test: يتحلّ بـ code. اطلب الـ code متاعك على WhatsApp ولا Instagram ولا TikTok، وبعد اكتبو في missioncarthage.tn.
الإصلاح هذا مازال ما تنشرش. ارجع قريب.
ما نجمناش نحمّلو الإصلاح. ثبّت في الكونكسيون وعاود جرّب.
كل الإصلاحات حتى الفرض التأليفي3 أشهر بـ 20 د، العرض حتى 30 نوفمبر 2026 ابعثها لبابا ولّا ماما يخلّصوموضوع أصلي كتبناه لـ Mission Carthage، على نفس الشكل متاع امتحانات القسم. الأستاذ متاعك يبقى هو المرجع.
البرنامج الكل: باكالوريا علوم الإعلامية · عاود اقرا الكور · الامتحانات الكل