Le téléchargement de fichiers est une tâche courante pour les applications Web. Différents types de fichiers sont nécessaires pour télécharger en fonction de l'application. Fichiers image, fichiers texte, fichiers PDF, fichiers XML, etc. peut être téléchargé en utilisant le script php. Un ou plusieurs fichiers peuvent être téléchargés par PHP. Il y a certaines directives PHP dans le php.ini Fichiers de configuration et fonctions intégrées PHP liées au téléchargement de fichiers qui est discutée dans ce tutoriel. HTML a un attribut particulier dans la balise de formulaire pour les tâches de téléchargement de fichiers, c'est-à-dire cntype.
Directives PHP pour le téléchargement de fichiers
Directive PHP | But |
---|---|
file_uploads | La valeur de cette directive doit être Sur Pour télécharger le fichier à l'aide du script PHP. La valeur par défaut de cette directive est Sur. |
upload_tmp_dir | Il est utilisé pour définir le répertoire temporaire où le fichier sera téléchargé. |
upload_max_filesize | Il est utilisé pour définir la taille maximale du fichier qui peut être téléchargé. |
max_file_uploads | Il est utilisé pour définir le nombre de fichiers qui peuvent être téléchargés. |
post_max_size | Il est utilisé pour définir la taille maximale des données de poste et la valeur de cette directive doit être supérieure à la valeur de la directive upload_max_filesize car le fichier est téléchargé par la demande de poste. |
max_input_time | Il est utilisé pour définir la durée maximale pour lire les données du fichier de téléchargement. |
max_execution_time | Il est utilisé pour définir la durée maximale en quelques secondes pour exécuter le script pour télécharger le fichier. |
Memory_limit | Il est utilisé pour définir la taille de mémoire maximale requise pour exécuter un script PHP pour télécharger le fichier. |
Fonctions PHP pour le téléchargement de fichiers
Deux fonctions intégrées sont principalement utilisées dans PHP pour télécharger le fichier qui est mentionné ci-dessous.
UN. is_uploaded_file ()
Il est utilisé pour vérifier si le fichier est téléchargé via le post HTTP qui aide à empêcher une attaque de l'utilisateur malveillant.
B. move_uploaded_file ()
Il est utilisé pour déplacer le fichier téléchargé dans l'emplacement du serveur Web. Cette fonction reviendra vrai si le fichier est téléchargé et déplacé avec succès.
Variable de téléchargement de fichiers PHP
La variable Array $ _Files stocke toutes les informations liées au téléchargement d'un fichier dans le serveur. Il s'agit d'une variable superglobale du PHP qui est accessible dans le script. Il contient cinq types d'informations: nom de fichier, type, taille, nom de fichier temporaire et erreurs liées au téléchargement du fichier. Le but de chaque valeur du tableau $ _file a été mentionné ci-dessous. Supposons que le nom du nom de champ de téléchargement soit 'télécharger' ici.
UN. $ _Files ['upload'] ['name']
Il est utilisé pour obtenir le nom de fichier d'origine qui a été téléchargé par l'ordinateur du client.
B. $ _Files ['upload'] ['tmp_name']
Il est utilisé pour obtenir temporairement le nom de fichier temporaire qui a été stocké dans le serveur.
C. $ _Files ['upload'] ['type']
Il est utilisé pour obtenir le type MIME du fichier téléchargé.
D. $ _Files ['upload'] ['Size']
Il est utilisé pour obtenir la taille du fichier téléchargé en octets.
E. $ _Files ['upload'] ['error']
Il est utilisé pour obtenir le code d'erreur lié à la tâche de téléchargement. La variable peut contenir l'un des 7 types de valeurs mentionnés ci-dessous.
Code d'erreur | Description |
---|---|
1- upload_err_ok | Il génère lorsque le fichier télécharge avec succès. |
2- upload_err_ini_size | Il génère si la taille du fichier dépasse la valeur du upload_max_filesize directive définie dans le php.fichier ini. |
3- upload_err_partial | Il génère si la taille du fichier dépasse la valeur de la directive max_file_size définie dans le formulaire HTML. |
4- upload_err_no_file | Il génère si aucun fichier n'est téléchargé. |
5- upload_err_no_tmp_dir | Il génère si aucun répertoire temporaire n'est manquant. |
6- upload_err_cant_write | Il génère s'il n'y a pas d'autorisation d'écriture dans l'emplacement du serveur. |
7- upload_err_extension | Il génère si l'extension PHP arrête la tâche de téléchargement. |
Fichier de téléchargement à l'aide de PHP
Différents exemples de téléchargement du fichier à l'aide du script PHP ont été affichés dans cette partie du tutoriel.
Exemple 1: Téléchargez tout type de fichier
Vous pouvez télécharger le fichier dans l'emplacement actuel à partir de l'endroit où le script PHP s'exécute ou dans un dossier particulier. Vous devez créer le dossier à l'emplacement du serveur pour télécharger un fichier dans un dossier particulier avant d'exécuter le script PHP. J'ai créé un dossier nommé 'téléchargements ' À l'intérieur du dossier de travail. Créez un fichier PHP avec le script suivant qui téléchargera un fichier de tout type à l'intérieur du 'téléchargements ' dossier. Un formulaire HTML avec un champ de type de fichier et un bouton de soumission ont été utilisés dans le script pour sélectionner le fichier dans l'ordinateur du client pour télécharger. Si 1 est généré comme un code d'erreur après le téléchargement du fichier, le fichier est téléchargé avec succès. Ensuite, le move_upload_file () La fonction a été utilisée pour déplacer le fichier téléchargé vers l'emplacement du serveur. Le message de réussite sera imprimé si le fichier est téléchargé dans l'emplacement du serveur avec succès; Sinon, un message d'erreur sera affiché.
// Vérifiez que tout fichier est sélectionné ou nonLe fichier est téléchargé avec succès.
';;Erreur Téléchargement du fichier.
'. $ _Files ['uploadfile'] ['error']. '
Erreur Téléchargement du fichier.
'. $ _Files ['uploadfile'] ['error']. '
Fichier de téléchargement à l'aide de PHP
Sortir
La sortie suivante apparaîtra si le script est exécuté à partir du serveur Web.
Clique sur le Parcourir bouton pour sélectionner le fichier pour le téléchargement et appuyez sur le bouton Télécharger pour télécharger le fichier dans le serveur.
Le message suivant apparaîtra si le fichier est téléchargé avec succès.
Exemple 2: Téléchargez un fichier du type et de la taille spécifiques
La manière de télécharger le fichier à l'aide d'un fichier HTML et d'un fichier PHP séparés a été affiché dans cet exemple. Créez un fichier HTML avec le script suivant pour afficher le formulaire de téléchargement du fichier.
formulaire de téléchargement.html
Téléchargement du fichier JPEG à l'aide de PHP
Créez un script PHP avec le script suivant qui téléchargera le fichier JPEG uniquement et la taille sera inférieure à 300000 octets. Le type de fichier et la taille ont été lus en utilisant $ _files ['uploadfile'] ['type'] et $ _files ['uploadfile'] ['Size'] Variables. Le message de réussite apparaîtra si le type de fichier et la taille téléchargés correspondent aux critères définis dans la condition «IF»; sinon un message d'erreur sera affiché.
upload2.php
// Vérifiez que tout fichier est sélectionné ou nonLe fichier est téléchargé avec succès.
';;Erreur Téléchargement du fichier.
'. $ _Files ['uploadfile'] ['error']. '
Le type ou la taille du fichier n'est pas pris en charge.
';;Erreur Téléchargement du fichier.
'. $ _Files ['uploadfile'] ['error']. '
Sortir
Dans la sortie suivante, le fleur.PNG Le fichier a été sélectionné qui n'est pas un fichier JPEG:
La sortie suivante apparaîtra après avoir appuyé sur le Télécharger bouton:
Ici, la fleur1.Le fichier JPEG a été sélectionné qui est un fichier jpeg.
Maintenant, la sortie suivante apparaîtra après avoir appuyé sur le Télécharger bouton:
Exemple 3: Vérifiez le fichier avant le téléchargement
Créer un fichier PHP avec le script suivant qui utilise le is_uploaded_file () Fonction Pour vérifier si le fichier est téléchargé via le post HTTP avant de déplacer le fichier vers le serveur. Le script téléchargera le fichier texte uniquement et imprimera le contenu du fichier texte après avoir téléchargé le fichier avec succès.
// Vérifiez si un fichier est sélectionné ou nonFichier de téléchargement à l'aide de PHP
Sortir
Dans la sortie suivante, un fichier texte a été sélectionné pour le téléchargement:
Le contenu du fichier a été affiché dans la sortie après avoir téléchargé le fichier avec succès.
Conclusion
La tâche de téléchargement de fichiers est une exigence commune pour toute application Web. Les utilisations de la variable de téléchargement de fichiers et les fonctions intégrées de PHP ont été présentées dans ce tutoriel en utilisant plusieurs exemples de téléchargement de fichiers. Si vous le souhaitez, vous pouvez télécharger plus d'un fichier à la fois en utilisant le script PHP qui est couvert dans ce tutoriel. Vous pouvez également télécharger un dossier contenant plusieurs fichiers en utilisant le script PHP.