• Aucun résultat trouvé

Cours Système Web PHP TP5  Gestion de chiers en PHP

N/A
N/A
Protected

Academic year: 2022

Partager "Cours Système Web PHP TP5  Gestion de chiers en PHP"

Copied!
1
0
0

Texte intégral

(1)

Cours Système Web PHP TP5 Gestion de chiers en PHP

28 novembre 2005

An d'éviter des confusions, on utilisera ici les termes franglais de downloader et uploader au lieu de l'ambigu télé- charger.

Le but est de réaliser une application PHP permettant de :

Uploader des chiers sur le serveur, chaque chier étant identié par un titre.

Acher la liste des chiers ayant été uploadé, avec leur titre, leur taille, et un lien pour les downloader.

Supprimer des chiers du serveur.

1. On aura besoin des scripts PHP et page HTML suivants :

form_upload.html, un formulaire permettant d'uploader un chier upload.php, un script stockant un chier sur le serveur

affiche_liste.php, un script achant la liste des chiers ayant été uploadés, permettant de choisir un chier à downloader ou à supprimer

supprime.php, un script supprimant un chier du serveur download.php, un script permettant de downloader un chier Décrire le schéma des interactions entre ces diérents scripts et page.

2. Écrire form_upload.html. Chaque chier uploadé doit être accompagné d'un titre, qui sert d'identiant au chier.

3. Écrire upload.php. On fera attention aux points suivants :

Les chiers doivent être copiés dans un répertoire approprié, par exemple un sous-répertoire fichiers de votre répertoire principal.

Dans un premier temps, le nom attribué aux chiers sur le serveur sera identique au titre du chier. Cela signie qu'il ne faudra pas avoir des caractères spéciaux (`/' par exemple) dans le titre. On verra plus loin comment résoudre ce problème.

Au cas où deux chiers de même titre sont soumis, le dernier écrase le précédent.

Une fois l'opération d'upload eectué, on fera une redirection vers affiche_liste.php.

4. Écrire affiche_liste.php, dans un premier temps en achant uniquement la liste des chiers et leur tailles. On pourra utiliser les fonctions opendir/readdir/closedir pour parcourir les diérents chiers d'un répertoire (utiliser la documentation de PHP sur http://fr.php.net/manual/fr).

5. Ajouter à affiche_liste.php des liens vers download.php avec un paramètre HTTP GET donnant le titre du chier à downloader.

6. Ajouter à affiche_liste.php des mini-formulaires contenant juste un bouton et un paramètre caché, appelant supprime.php pour supprimer un chier du serveur.

7. Écrire download.php. Comme le type MIME du chier n'a pas été conservé, on indiquera application/octet-stream comme type MIME du chier downloadé, grâce à header("Content-Type: application/octet-stream").

8. Écrire supprime.php. Une fois la suppression eectuée, on fera une redirection vers affiche_liste.php.

9. On va maintenant changer la manière dont les chiers sont stockés sur le serveur. Au lieu de donner comme noms de chiers les titres, on va générer un identiant (qui sera juste un nombre entier, croissant à partir de 0) pour chaque chier nouvellement ajouté, et on va stocker dans un chier catalogue.txt l'association identiant →nom de chier. Cela aura les conséquences suivantes :

On pourra avoir plusieurs chiers avec le même titre.

On pourra stocker d'autres informations que le titre du chier dans le catalogue, en particulier le type MIME.

L'achage de la liste des chiers se fera en consultant le catalogue, non en regardant le contenu du répertoire.

La suppression du chier devra non seulement enlever le chier du disque, mais aussi enlever l'entrée correspondante du catalogue.

Le paramètre passé à download.php ou supprimer.php sera l'identiant du chier et non le titre.

On pourra indiquer le vrai type MIME lors du download du chier.

Faire tous les changements nécessaires !

1

Références

Documents relatifs

La création d’un nouveau fichier se fait dans le répertoire courant. Suppression d’un fichier

• Dans les exemples, quand on fait du DML, vérifier le résultat avec un script MySQL, soit dans phpMyAdmin, soit dans un client MySQL.. • Une page pour l’affichage des

Pour installer le serveur PWS il faut aller dans le répertoire Add-on \ pws du CD-Rom de Windows 98 ou sur le CD-Rom Option Pack de NT. PWS transforme tout ordinateur exécutant

Pour réaliser cette manipulation nous aurons besoin d'utiliser : le langage PHP, une base de données MySQL, phpMyAdmin (pour travailler dans la base de données) mais aussi un

Le tableau $_POST contient tous les couples variable / valeur transmis en POST, c'est à dire les informations qui ne proviennent ni de l'url, ni des cookies et ni des sessions.

À l'intérieur de guillemets simples, aucune interpolation de variable

Cela a vous a peut être parut un peu lourd, mais si vous n'avez fait que survolez cette partie, vous verrez que vous y reviendrais car c'est vraiment des bases très importants à

Cliquez ici pour telecharger le