Maison  >  Article  >  développement back-end  >  Télécharger un fichier en PHP

Télécharger un fichier en PHP

WBOY
WBOYoriginal
2024-08-29 13:07:39844parcourir

En PHP, les utilisateurs peuvent télécharger des fichiers à l'aide de la fonction de téléchargement de fichiers, ainsi que le fichier qui doit être soumis via le formulaire et qui est facilement joint et téléchargé. L'utilisateur peut télécharger de nombreux types de fichiers, qu'il s'agisse d'un formulaire de document, d'un formulaire d'image, d'un formulaire PDF, etc. Ces types de fichiers sont livrés avec une extension, c'est-à-dire .docx, .jpeg, .pdf, etc. Ce type de fichier est validé par le formulaire et la taille du fichier est définie de manière à ce que le téléchargement ne dépasse pas cette taille. Il s'agit d'une fonctionnalité avancée pour l'utilisateur qui saisissait les données manuellement et qui opte désormais pour cette option.

Comment créer et télécharger un fichier en PHP ?

Avec PHP, il est très simple de télécharger des fichiers sur le serveur à l'aide d'un formulaire et les données sont également sécurisées par rapport aux autres. Le fichier de configuration « php.ini » contient une variable qui doit être définie pour les fichiers à télécharger et elle est appelée « file_uploads » qui doit être définie sur ON pour activer la fonction de téléchargement. Nous devons suivre quelques étapes pour télécharger un fichier sur le serveur.

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Il y a peu de vérifications avant qu'un fichier ne soit téléchargé sur le serveur à l'aide d'un formulaire. Ces contrôles sont appelés validation du fichier téléchargé.

Voici quelques points importants que le développeur code pour valider le formulaire :

Télécharger un fichier en PHP

1. File_uploads

La valeur de cette variable doit être ON pour que les fichiers soient téléchargés. S'il n'est pas activé, le fichier ne peut pas être téléchargé sur le serveur. Donc, il devrait toujours être allumé.

2. Télécharger la taille maximale

Cette directive permet de configurer la taille maximale du fichier pouvant être téléchargé sur le serveur à l'aide d'un formulaire. Il s'agit d'une sorte de vérification effectuée pour voir la taille du fichier téléchargé par l'utilisateur. La taille par défaut du fichier est définie sur 2 Mo (deux mégaoctets), et nous pouvons écraser ce type de paramètre à l'aide du fichier .htaccess où le développeur peut augmenter la taille du fichier. Deux mégaoctets, ce n’est pas grand-chose dans les normes actuelles, nous devrons donc peut-être l’augmenter. Si vous obtenez une erreur indiquant que la taille du fichier dépasse upload_max_filesize lorsque vous essayez de télécharger un fichier, vous devez augmenter la valeur. Si vous le faites, assurez-vous également d'augmenter post_max_size.

3. Upload_tmp_dir

Il définit un répertoire temporaire qui sera utilisé pour stocker les fichiers téléchargés par l'utilisateur. Dans la plupart des cas, mais nous n’avons pas à nous soucier de ce paramètre. Si nous ne le définissons pas, la valeur par défaut du système définira automatiquement le répertoire temporaire pouvant être utilisé.

4. Post_max_size

La directive post_max_size nous permet de définir la taille maximale des données téléchargées par la méthode POST. Étant donné que les fichiers sont téléchargés par des requêtes POST, la valeur doit être supérieure à celle que nous avons définie pour upload_max_filesize. Par exemple, si upload_max_filesize est de 20 Mo (20 mégaoctets), nous devrons peut-être définir post_max_size sur 24 Mo.

5. Max_file_uploads

Il vous permet de définir le nombre maximum de fichiers pouvant être téléchargés par l'utilisateur en une seule fois. Le nombre par défaut est de 20 pour l'utilisateur à la fois.

6. Max_input_time

C'est le nombre de secondes pendant lesquelles un script est autorisé à analyser les données saisies par l'utilisateur. Nous devrions le définir sur une valeur raisonnable si nous avons affaire à une grande taille de téléchargements de fichiers. 60 (60 secondes) et constitue une bonne valeur pour la plupart des applications.

7. Limite_mémoire

La directive de limite de mémoire indique la quantité maximale de mémoire qu'un script peut consommer sur le serveur. Si nous rencontrons des problèmes lors du téléchargement de fichiers volumineux, nous devons définir la valeur de la directive supérieure à celle que nous avons définie pour la directive post_max_size. Par défaut, la valeur est définie sur 128 Mo (128 mégaoctets), donc à moins que nous ayons un post_max_size et un upload_max_filesize très volumineux, nous n'avons pas à nous en soucier.

8. Max_execution_time

Cette directive est utilisée pendant un nombre maximum de secondes pendant lesquelles un script est autorisé à s'exécuter sur le serveur. Si nous rencontrons des problèmes lors du téléchargement de fichiers volumineux, nous pouvons envisager d'augmenter la valeur à plus de secondes, par exemple 60 (1 minute), et cela devrait bien fonctionner pour la plupart des applications.

Exemples pour télécharger un fichier en PHP

Vous trouverez ci-dessous les exemples mentionnés ::

Exemple n°1

Code :

<!DOCTYPE html>
<html>
<body>
<form action="uploadimage.php" method="POST" enctype="multipart/form-data">
Select any image to upload:
<input type="File" name="FileUpload" id="FileUpload">
<input type="submit" value="Upload" name="SUBMIT">
</form>
</body>
</html>

Sortie :

Télécharger un fichier en PHP

Exemple n°2

Code :

<!DOCTYPE html>
<html lang="en">
<head>
<title>Photo Upload Form</title>
</head>
<body>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<h1>Upload File</h1>
<label for="fileSelect">Filename:</label>
<input type="file" name="photo" id="FileSelect">
<input type="submit" name="SUBMIT" value="Upload Photo">
<p><strong>Note:</strong> Only .jpg, .jpeg, .gif, .png formats allowed to a max size of 2 MB larger than that cannot not be uploaded.</p>
</form>
</body>
</html>

Sortie :

Télécharger un fichier en PHP

Exemple #3

Code :

<!DOCTYPE html>
<html>
<body>
<form action="upload.php" method="POST" enctype="multipart/form-data">
Select a file to upload:
<input type="file" name="FileToUpload"/>
<input type="submit" value="Upload" name="submit"/>
</form>
</body>
</html>

Sortie :

Télécharger un fichier en PHP

Exemple n°4

Code :

<?php
$target_path = "c:/";
$target_path = $target_path.basename( $_FILES['fileToUpload']['name']);
if(move_uploaded_file($_FILES['fileToUpload']['tmp_name'], $target_path)) {
echo "File has been uploaded successfully!";
}
else
{
echo "Sorry, file not uploaded, please check and try again!";
}
?>

Output:

Télécharger un fichier en PHP

In the above examples, the user can see the screen that is present in the snapshots. Users will attach the document by clicking the “choose file” option. The file will get attached once the user selects the file from his local machine and clicks on the Upload button to submit the documents to the server. The user will then be prompted a message stating that the file has been uploaded successfully.

Conclusion

In this article, we discussed how a user can upload a file to the server using the form and how an uploaded file can be validated in various forms, and the server restrictions for uploading a file. The user might not understand the process of the backend but the developer has to code in such a way that the document uploaded by the user should be correct and the data is secured.

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
Article précédent:Fichier ouvert PHPArticle suivant:Fichier ouvert PHP