Feuille Travaux Dirigés n°1

publicité
Université de Versailles et Saint-Quentin-En-Yvelines
Travaux dirigés 2005/2006
Initiation aux Bases de Données
TP : HTML, PHP et MySQL
Présentation du problème :
Nous souhaitons réaliser un site web permettant de faire un système de vote électronique
simplifié. Pour ce faire, nous allons réaliser un site web avec des formulaires HTML et des
traitements PHP de requêtes SQL. Les données seront stockées sur une base de donnée
MySQL, située sur un serveur distant (pas un serveur de l’Université).
Mise en route :
Certaines informations supplémentaires sont nécessaires pour réaliser ce travail.



Connexion sur le serveur distant pour télécharger les données
o Nous utiliserons le protocole de transfert de fichiers sur Internet (FTP) pour
nous connecter sur le site, et pour télécharger les données. La méthode pour se
connecter est la suivante :
 Ouvrir un X-Term
 Se placer dans le répertoire où sont les fichiers à télécharger
 Lancer la commande ftp
 Au prompt ftp> taper :
 ftp> passive
 ftp> open ftp.akengro.t1hosting.co.uk
 login : [email protected]
 password : inma
 Lors de votre première connexion, créez un répertoire ayant
votre login, par ex : ftp> mkdir bnguyen
 Placez-vous dans ce répertoire : ftp> cd bnguyen
 Là, vous pouvez y placer les fichiers depuis votre répertoire
courant, par exemple on peut télécharger le fichier toto.html en
tapant : ftp> put toto.html
 Lorsque vous avez fini de placer vos fichiers, fermez la
connexion : ftp> close
 C’est très important de fermer la connexion, car il n’y a que 50
connexions possibles en même temps… Si vous voulez mettre
un autre fichier, alors reprenez à partir de ‘open …’
Vous pouvez ensuite visualiser le fichier que vous venez de placer, au travers d’un
navigateur web, en accédant l’URL (remplacez bnguyen/toto.html par votre login et
nom de fichier, bien sûr) :
http://www.akengro.t1hosting.co.uk/inma/bnguyen/toto.html
Les informations de connexion, pour les scripts PHP sont les suivantes :
o Serveur : localhost
o Login : akengro_inma
o Password : inma
o Base : akengro_inma
<html><head><title>Test Connexion</title></head>
Initiation aux Bases de Données
L2 - IN111
Université de Versailles et Saint-Quentin-En-Yvelines
Travaux dirigés 2005/2006
Exemple de script connexion :
<body>
<?php
$dbh=mysql_connect ("localhost", "akengro_inma", "inma") or die ('Impossible de se
connecter, erreur : ' . mysql_error());
mysql_select_db ("akengro_inma");
echo "connexion ok !";
?>
</body>
</html>
Questions :
1- Réaliser un script PHP permettant de créer les tables suivantes : Candidats (Int
CandidatId, Char [20] Nom, Char [20] Prenom), Votants (Int VotantId, Char[20]
Nom, Char[20] Prenom, Char [10] Password), Vote (Int VotantId, Int CandidatId).
2- Réaliser deux scriptes permettant d’insérer un Candidat, et d’insérer un Votant dans
les tables.
3- Réaliser un script qui vide la table Vote.
4- Réaliser un script de vote qui affiche les noms des Candidats possibles avec un bouton
radio, et qui permet à un votant de voter pour l’un d’entre eux. On refuse le vote nul. Il
faut vérifier que le votant donne bien son VotantId et son mot de passe correct.
Attention aux personnes voulant voter plusieurs fois !
5- Réaliser un script qui afficher les résultats de l’élection, avec les % de votes pour
chaque personne.
6- Réaliser la page de présentation de votre site, donnant accès aux diverses
fonctionnalités.
Initiation aux Bases de Données
L2 - IN111
Téléchargement