Aller au contenu

Travaux pratiques, devoirs et corrigés - (BTS SIO SLAM)

Pour tous les travaux de cette page :

Important : Vous devez travailler sur vos fichier html, css, javascript et php dans le répertoire de votre projet qui se trouve sur le serveur Apache et non sur vos fichiers dans votre bureau windows ou autre.

Comment voulez-vous que votre serveur interprète votre code en PHP si les fichiers ne sont pas dans un répertoire du serveur Xampp ou Wamp ?

Liste des exercices :

Tâche n°1 : Tableau Associatif avec Php

Tableau Associatif avec PHP

Tâche n°2 : Formulaire HTML et récupération des données depuis un fichier Php

Formulaire HTML

Récupération des données du formulaire avec PHP

Tâche n°3 : Saisie des notes dans un tableau HTML5 et calcul des moyennes dans un fichier Php

Saisie des notes dans un tableau HTML5

Affichage du calcul des Moyennes

Tâche n°3.2 : : Tableau HTML5 et calculs des moyennes avec Php

Affichage d’un Tableau HTML5 avec des notes aléatoires (en JS ou PHP selon votre préférence) et calculs des moyennes dans un tableau html généré depuis php.

Affichage du tableau

Affichage du calcul des Moyennes

Tâche n°4 : Démo pour comprendre les Failles XSS

Démonstration avec un formulaire HTML5 pour montrer des failles XSS (Cross-Site-Scripting). L’affichage des résultats en fonction de votre saisie vous montre ce qui se passe réellement.

Formulaire et démo failles XSS

Tâche n°5 : Formulaire HTML5 et connexion à une BD sous le SGBD MySQL

Reprenez le Devoir 4 (votre formulaire HTML5) et récupérer l’identifiant et le mot de passe. Vous devez avoir une table Utilisateur dans votre base de données devoir5 pour réaliser cet exercice.

Important : pas de Hashage pour le mot de passe pour cet exercice. Vous sauvegarder le mot de passe en clair.

Étape :

Formulaire à afficher

Pour vous aider, voici le script SQL :

CREATE DATABASE devoir5;

USE devoir5;

CREATE TABLE `utilisateur`
(
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `identifiant` varchar(25)  UNIQUE DEFAULT NULL,
    `mdp`         varchar(255) UNIQUE DEFAULT NULL,
    PRIMARY KEY (`id`)
) ENGINE = InnoDB
  AUTO_INCREMENT = 6
  DEFAULT CHARSET = utf8;

INSERT INTO `utilisateur` (`id`, `identifiant`, `mdp`)
VALUES (1, 'user1','user1'),
       (2, 'user2', 'user2'),
       (3, 'user3', 'user3'),
       (4, 'user4', 'user4'),
       (5, 'user5', 'user5');

Tâche n°6 : Création des utilisateurs et des privilèges sous le SGBD MySQL (E6)

L’idéal est de réaliser cet exercice en ligne de commande SQL même si vous n’êtes pas à l’aise. Il est certes plus facile d’utiliser l’interface graphique de PhpMyAdmin mais du coup, c’est plus difficile de mémoriser les commandes. Il se peut que vous ayez des difficultés pour vous connecter à votre SGBD MySQL avec un user que vous venez de créer tout simplement parce que lorsque vous arrivez sur votre gestion Admin de Xampp, il se connecte par défaut avec votre mot de passe administrateur que vous avez déjà défini.

Faites-le quand même des 2 manières pour savoir utiliser l’IHM de PhpMyAdmin et les commandes SQL pour la gestion des Users et des Droits accordés (avec GRANT).

Attention de ne pas confondre les droits des utilisateurs qui se connectent à l’une des bases de données avec les utilisateurs de votre table dans votre application Web ou autres. Ce n’est pas la même chose !

Formulaire à afficher

Il y en aura d’autres à venir…