SELFHTML

Champs pour fichier à transmettre

Page d'information: vue d'ensemble

vers le bas Définir des champs pour fichier à transmettre
vers le bas Autres informations

 vers le bas 

HTML 3.2XHTML 1.0MSIE 3.0Netscape 2.0 Définir des champs pour fichier à transmettre

Cette sorte d'élément de formulaire permet à l'utilisateur de transmettre avec le formulaire un fichier de son ordinateur local. Quand un Script CGI exploite les données du formulaire qui arrivent sur l'ordinateur serveur il est ainsi possible pour l'utilisateur de transmettre des fichiers sur l'ordinateur serveur.

Exemple:

Démonstration - nouvelle fenêtre Exemple d'affichage: aperçu

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
       "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Texte du titre</title>
</head>
<body>

<h1>Envoyez nous quelque chose de pas mal!</h1>

<form action="input_file.htm" enctype="multipart/form-data">
<p>
Choisissez un fichier texte (txt, html etc.) de votre ordinateur:<br>
<input name="fichier" type="file" size="50" maxlength="100000" accept="text/*">
</p>
</form>

</body>
</html>

Explication:

Avec <input type="file"> vous définissez un élément pour transmettre un fichier (input = entrée, file = fichier) . Le navigateur WWW doit ensuite afficher un champ de saisie qui permet la saisie d'un nom de fichier (le plus souvent avec le nom de chemin). À droite, le navigateur doit afficher un bouton qui, lorsqu'il est actionné, fait apparaître à l'écran un dialogue pour le choix du fichier. Vous pouvez déterminer la taille du champ de saisie (nombre de caractères) avec size= (size = taille).

Si vous mentionnez l'attribut maxlength= le navigateur Web devrait interpréter le chiffre noté à la suite comme la taille maximale permise en octets pour le fichier (maxlength = maximal length = longueur maximale ). Dans l'exemple ci-dessus, le nombre d'octets a été limité de cette façon à 100000. Si vous ne mentionnez pas maxlength=, l'utilisateur peut envoyer des fichiers aussi grands qu'il le veut. Veillez toutefois à user de cette mention avec prudence. Dans la version HTML 3.2 il en a été décidé ainsi, dans la version 4.0 cette fonctionnalité pour l'attribut maxlength n'était par contre plus mentionnée. Ne vous fiez dons pas trop à cette mention. Il est plus sûr lors du traitement par un script CGI de lui faire rechercher la taille du fichier et de lui laisser décider si le fichier est accepté ou refusé.

Si vous ne voulez accepter que certains types de fichiers, vous pouvez grâce à la mention accept= limiter les types de fichiers permis (accept = accepter). Derrière le signe égal, vous pouvez mentionner un Autre page d'information type Mime. Pour cela les jokers (*) sont aussi permis. Dans l'exemple ci-dessus tous les fichiers texte sont acceptés grâce à text/*. En font partie de purs fichiers texte(*.txt) , mais aussi les fichiers HTML (*.html,*.htm). Ne vous fiez pas trop non plus à cette mention pour que le navigateur vérifie réellement le type avant l'envoi du fichier.

Attention:

Il est important que vous notiez dans le repère d'ouverture <form> la mention enctype="multipart/form-data", quand le formulaire contient un bouton-fichier.

Dans l'offre en ligne de SELFHTML actuel vous pouvez trouver un article spécialisé qui décrit de quoi le traitement de tels transferts de fichier peut avoir l'air:
Page d'information: connexion exigée transmission de fichier avec Perl/CGI
Pour comprendre le script qui y est décrit, vous avez toutefois besoin de connaissances en Chapitre: vue d'ensemble CGI/Perl.

Grâce à l'attribut value= en relation avec <input type="file"> vous pouvez très bien attribuer une valeur par défaut au champ par exemple value="C:\autoexec.bat".

 vers le hautvers le bas 

Autres informations

Dans le Chapitre: vue d'ensemble sommaire de référence vous trouverez des données précisant où l'élément décrit ici peut être mis, quels attributs il peut avoir et ce à quoi il faut veiller pour les différents attributs:
Autre page d'information référence pour les éléments pour l'élément de formulaire input (<input>)
Autre page d'information référence pour les attributs pour l'élément de formulaire input (<input>)

 vers le haut
page suivante Autre page d'information Éléments cachés dans les formulaires
page précédente Autre page d'information Boutons pouvant être cliqués
 

© 2001 Stefan Münz / © 2003 Traduction Adresse électronique Serge François, 13405@free.fr
Adresse électronique selfhtml@fr.selfhtml.org