


Code d'implémentation PHP pour le téléchargement de fichiers et solutions aux caractères tronqués dans les noms de fichiers
Dec 23, 2016 pm 12:44 PMQuelqu'un m'a récemment demandé comment télécharger des fichiers. La méthode PHP est la suivante :
<?php header("Content-Type: application/force-download"); header("Content-Disposition: attachment; filename=ins.jpg"); readfile("imgs/test_Zoom.jpg"); ?>
La première ligne de code consiste à forcer le téléchargement
La deuxième ligne de code consiste à attribuer un ; nom du contenu téléchargé
La troisième ligne de code consiste à lire le contenu téléchargé dans le fichier.
Comment résoudre les caractères tronqués dans les noms de fichiers de téléchargement PHP
En définissant le type de contenu sur application/octet-stream, vous pouvez télécharger du contenu généré dynamiquement sous forme de fichier, je pense que tout le monde le sait. Utilisez ensuite Content-Disposition pour définir le nom du fichier téléchargé. Beaucoup de gens le savent. En gros, le programme de téléchargement s'écrit comme ceci?:
<?php $filename = "document.txt"; header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename=' . $filename); print "Hello!"; ?>
Après l'avoir ouvert avec un navigateur, vous pouvez télécharger le document.txt.
Cependant, si $filename est encodé en UTF-8, certains navigateurs ne peuvent pas le gérer correctement. Par exemple, si vous modifiez légèrement le programme ci-dessus?:
<?php $filename = "中文 文件名.txt"; header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename=' . $filename); print "Hello!"; ?>
Enregistrez le programme en encodage UTF-8 puis accédez-y, le nom du fichier téléchargé par IE6 sera tronqué. Le nom du fichier téléchargé sous FF3 ne comporte que le mot ??chinois??. Tout fonctionne bien sous Opera 9.
L'en-tête de sortie ressemble en fait à ceci?:
Content-Disposition: attachment; filename=Chinese file name.txt En fait, selon la définition de la RFC2231, l'encodage multilingue Content-Disposition devrait être défini comme ceci?:
Content-Disposition: attachment; filename*="utf8''%E4%B8%AD%E6%96%87%20%E6%96%87%E4%BB%B6%E5%90%8D.txt"
C'est-à-dire?:
Le signe égal après le nom de fichier doit être précédé de *
La valeur du nom de fichier est divisée en trois segments entre guillemets simples, qui sont un jeu de caractères (utf8), langue (vide) et nom de fichier codé en urlen.
Il est préférable d'ajouter des guillemets doubles, sinon la partie après les espaces dans le nom du fichier ne sera pas affichée dans Firefox.
Notez que le résultat de urlencode n'est pas le même que le résultat de la fonction urlencode de PHP. remplacera les espaces par, Ceci doit être remplacé par
Après les tests, il a été constaté que la prise en charge de plusieurs navigateurs grand public est la suivante?:
Pièce jointe IE6 = "
Pièce jointe FF3 ; filename="Nom du fichier UTF-8"
Pièce jointe; filename*="utf8''
Pièce jointe O9; filename= "Nom de fichier UTF-8"
Safari3(Win) ne semble pas pris en charge?? Aucune des méthodes ci-dessus ne fonctionnera
Il semble que le programme doive être écrit comme ceci pour prendre en charge tous les navigateurs grand public?:
<?php $ua = $_SERVER["HTTP_USER_AGENT"]; $filename = "中文 文件名.txt"; $encoded_filename = urlencode($filename); $encoded_filename = str_replace("+", "%20", $encoded_filename); header('Content-Type: application/octet-stream'); if (preg_match("/MSIE/", $ua)) { header('Content-Disposition: attachment; filename="' . $encoded_filename . '"'); } else if (preg_match("/Firefox/", $ua)) { header('Content-Disposition: attachment; filename*="utf8\'\'' . $filename . '"'); } else { header('Content-Disposition: attachment; filename="' . $filename . '"'); } print 'ABC'; ?>
Plus d'articles connexes sur le code d'implémentation PHP pour le téléchargement de fichiers et les solutions aux caractères tronqués dans les noms de fichiers Veuillez faire attention au site Web PHP chinois?!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Où sont les fichiers téléchargés par le navigateur vivo ? Les fichiers téléchargés par le navigateur vivo seront stockés dans un emplacement dédié, mais la plupart des amis ne savent pas où se trouvent les fichiers téléchargés par le navigateur vivo. Ensuite, l'éditeur les apportera aux utilisateurs. Tutoriel graphique sur la fa?on d'ouvrir les fichiers téléchargés depuis le navigateur vivo, les utilisateurs intéressés viennent y jeter un ?il ! Didacticiel d'utilisation du téléphone mobile Vivo Où sont les fichiers téléchargés par le navigateur Vivo ? 1. Ouvrez d'abord l'application du navigateur, puis entrez en bas de l'interface principale du navigateur et cliquez sur [Menu] 2. Développez ensuite la barre de fonctions ci-dessous et cliquez sur [Télécharger] ; Enregistrer] ; 3 , puis dans l'interface d'enregistrement de téléchargement, sélectionnez [Téléchargement terminé] 4. Sélectionnez l'emplacement où vous souhaitez afficher le fichier téléchargé et cliquez sur le bouton [Ouvrir] à l'arrière 5 ;

Comment télécharger des fichiers depuis Thunder ed2k ? En tant que fichier partagé commun, de nombreux utilisateurs rencontreront des situations dans lesquelles ed2k ne prend pas en charge le téléchargement lors du téléchargement. Alors, comment puis-je le télécharger via Thunder ? Laissez ce site présenter aux utilisateurs le tutoriel sur la fa?on d'utiliser Thunder ed2k. Tutoriel d'utilisation de Thunder ed2k 1. Copiez le lien ed2k. 2. Ouvrez ? Thunder ? et cliquez sur ? + ? dans le coin supérieur gauche. 3. Copiez le lien et cliquez sur ? Télécharger maintenant ?.

Les utilisateurs peuvent utiliser Xiaohongche Creative Workshop pour télécharger divers fonds d'écran. De nombreux utilisateurs ne savent pas où se trouvent les fichiers téléchargés par Xiaohongche Creative Workshop. Les utilisateurs peuvent trouver un dossier avec un numéro sous Contenu. Où se trouvent les fichiers téléchargés depuis Little Red Car Creative Workshop ? Réponse : Dans le dossier local-steamapps-workshop-content. 1. Ouvrez Steam et recherchez WallpaperEngine?: moteur de papier peint. 2. Cliquez avec le bouton droit sur Gérer, puis cliquez sur Parcourir les fichiers locaux. 3. Ouvrez le dossier et cliquez sur steamapps. 4. Cliquez sur atelier. 5. Cliquez sur le contenu. 6. Recherchez le dossier portant le numéro. 7. Tous les fonds d'écran téléchargés sont là

QQ est un logiciel de messagerie instantanée populaire et presque tout le monde possède un numéro QQ. Lorsque vous utilisez un téléphone Apple, vous pouvez rencontrer des difficultés pour stocker et récupérer des fichiers. Généralement, ces fichiers sont stockés dans le dossier Documents du répertoire d'application correspondant. Où sont les fichiers téléchargés depuis QQ sur iPhone ? 1. Ouvrez d'abord l'application QQ sur iPhone et cliquez sur l'avatar personnel pour accéder à la page personnelle. 2. Dans le menu en bas de la page personnelle, sélectionnez [Mes fichiers] et cliquez sur Ouvrir. 3. Entrez ensuite [Fichiers locaux] pour afficher les fichiers enregistrés par QQ sur le téléphone mobile. 4. Dans le fichier local, cliquez sur le bouton Afficher pour afficher les informations sur le fichier téléchargé.

Pour les utilisateurs qui sont nouveaux sur le système Windows 11, le chemin de téléchargement des fichiers suivra généralement les paramètres par défaut du système, et les fichiers sont souvent enregistrés sur le disque système. à long terme, cela peut affecter les performances globales de l'ordinateur en les occupant. trop d'espace disque système. Afin de gérer et d'allouer l'espace de stockage de manière plus rationnelle, il est important d'apprendre à personnaliser le disque de sauvegarde pour les fichiers téléchargés dans le système Windows 11. Cet article expliquera en détail comment définir de manière flexible le disque cible pour les fichiers téléchargés dans Windows 11 afin de répondre aux besoins de stockage personnalisés des utilisateurs. Si c'est ce dont vous avez besoin, vous souhaiterez peut-être continuer à lire et nous vous présenterons les étapes détaillées de cette fonction pratique. Méthode de fonctionnement 1. Double-cliquez pour ouvrir ??Ce PC?? sur le bureau. 2. Recherchez ensuite la nouvelle interface dans la colonne de gauche

Utiliser Ajax pour télécharger des fichiers est considéré comme une mauvaise idée. Utilisez plut?t window.location= ou document.location. 'window.location' présente les caractéristiques suivantes - Nécessite l'activation de JavaScript Aucun PHP n'est requis. Cela permet d'afficher le contenu du site Web et de rediriger l'utilisateur après quelques secondes. Les redirections peuvent dépendre de n'importe quelle condition, par exemple - $success=1if($success){ window.location.;} nommé

Utilisez le module pathlib pour résoudre le problème de perte de chemin après le téléchargement de fichiers en Python : créez un objet Path de pathlib et spécifiez le chemin du fichier à télécharger. Utilisez la bibliothèque de requêtes pour télécharger le fichier et enregistrez-le dans le chemin spécifié. Utilisez la méthode Path.resolve() pour obtenir le chemin absolu du fichier. Utilisez des chemins absolus pour accéder ou traiter les fichiers téléchargés.

Que dois-je faire si Firefox ne parvient pas à télécharger des fichiers ? Avez-vous déjà rencontré un échec de téléchargement de fichiers lorsque vous utilisez le navigateur Firefox pour télécharger des fichiers?? Il existe de nombreuses raisons à ce problème. Des paramètres système incorrects, un contenu de fichier incorrect, des rapports de virus sur les liens de téléchargement, etc. peuvent être à l'origine de ce problème. Cependant, la plupart du temps, ce sont des paramètres système incorrects qui entra?nent l'échec du téléchargement. tu le restaures ? Qu'est-ce qui est normal ? Ci-dessous, l'éditeur vous apportera la solution à l'échec du navigateur Firefox à télécharger des fichiers. Solution à l'échec du téléchargement des fichiers du navigateur Firefox 1. Ouvrez le navigateur Firefox sur votre ordinateur et accédez à la page d'accueil, 2. Cliquez sur la position de la flèche pour accéder au menu déroulant et cliquez sur Options, 3. Sur le c?té gauche de la page d'options, nous trouvez le menu, 4. Cliquez sur Confidentialité et sécurité, 5.
