Maison >interface Web >js tutoriel >Comment puis-je accéder au chemin complet d'un fichier sélectionné via un élément d'entrée HTML ?

Comment puis-je accéder au chemin complet d'un fichier sélectionné via un élément d'entrée HTML ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-30 18:26:10608parcourir

How Can I Access the Full File Path of a File Selected via an HTML Input Element?

Récupération du chemin complet du fichier à partir de la sélection du fichier d'entrée

Lors de la sélection d'un fichier à l'aide d'un élément d'entrée HTML (), le nom du fichier est généralement accessible via la propriété value de l'entrée. Cependant, pour des raisons de sécurité, les navigateurs limitent l'accès direct au chemin complet du fichier.

En JavaScript, l'API HTML5 File permet d'accéder aux informations sur les fichiers sélectionnés, mais ces API ne permettent pas d'accéder au chemin complet du fichier. Par exemple, la propriété files[0] de l'élément input renvoie uniquement le nom du fichier.

Une exception est Firefox, qui donne accès à la propriété mozFullPath sur l'objet File. Cependant, tenter de récupérer cette propriété renvoie une chaîne vide.

Alternatives pour lire le contenu du fichier

Bien que les navigateurs ne donnent pas accès au chemin complet du fichier, il existe des alternatives approches pour lire le contenu du fichier :

  • API FileReader :Cette API permet de lire à partir du fichier sélectionné sans nécessiter le chemin complet. Un objet FileReader peut être créé, puis utilisé pour lire le fichier sous forme de texte, de données binaires ou d'URL de données.
  • Téléchargement AJAX : Cette technique implique l'utilisation de JavaScript et d'AJAX pour télécharger le fichier directement vers un point de terminaison côté serveur sans nécessiter le chemin complet. Le serveur peut alors effectuer toutes les opérations nécessaires sur le fichier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn