HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP COMMENT W3.
CSS C C++ C# AMORCER RÉAGIR MYSQL
JQuery EXCELLER XML DJANGO NUMP PANDAS NodeJS R MANUSCRIT ANGULAIRE GIT PostgreSQL
MongoDB ASPIC IA ALLER KOTLIN TOUPET VUE DSA IA GÉNÉRALE SCIPY AWS LA CYBER-SÉCURITÉ
SCIENCE DES DONNÉES
Téléchargement de fichiers PHP
Avec PHP, il est facile de télécharger des fichiers sur le serveur.
Cependant, la facilité s'accompagne de dangers, alors soyez toujours prudent lorsque vous autorisez le
téléchargement de fichiers !
Configurer le fichier « php.ini »
Tout d’abord, assurez-vous que PHP est configuré pour autoriser les téléchargements de fichiers.
Dans votre fichier « php.ini », recherchez la file_uploadsdirective et définissez-la sur On :
file_uploads = On
Créer le formulaire HTML
Ensuite, créez un formulaire HTML qui permet aux utilisateurs de choisir le fichier image qu’ils
souhaitent télécharger :
<!DOCTYPE html>
<html>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
Select image to upload:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload Image" name="submit">
</form>
</body>
</html>
Quelques règles à suivre pour le formulaire HTML ci-dessus :
Assurez-vous que le formulaire utilise la méthode="post"
Le formulaire a également besoin de l'attribut suivant : enctype="multipart/form-data". Il spécifie le
type de contenu à utiliser lors de la soumission du formulaire
Sans les exigences ci-dessus, le téléchargement du fichier ne fonctionnera pas.
Autres choses à noter :
L'attribut type="file" de la balise <input> affiche le champ de saisie comme un contrôle de sélection de
fichier, avec un bouton « Parcourir » à côté du contrôle de saisie
Le formulaire ci-dessus envoie des données à un fichier appelé « upload.php », que nous allons créer
ensuite.
ADVERTISEMENT
Créer le script PHP de téléchargement de fichiers
Le fichier « upload.php » contient le code permettant de télécharger un fichier :
<?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
?>
Script PHP expliqué :
$target_dir = "uploads/" - spécifie le répertoire où le fichier va être placé
$target_file spécifie le chemin du fichier à télécharger
$uploadOk=1 n'est pas encore utilisé (sera utilisé plus tard)
$imageFileType contient l'extension de fichier du fichier (en minuscules)
Ensuite, vérifiez si le fichier image est une image réelle ou une fausse image
Remarque : vous devrez créer un nouveau répertoire appelé « uploads » dans le répertoire où se trouve
le fichier « upload.php ». Les fichiers téléchargés y seront enregistrés.
Vérifiez si le fichier existe déjà
Nous pouvons maintenant ajouter quelques restrictions.
Tout d'abord, nous allons vérifier si le fichier existe déjà dans le dossier "uploads". Si c'est le cas, un
message d'erreur s'affiche et $uploadOk est défini sur 0 :
// Check if file already exists
if (file_exists($target_file)) {
echo "Sorry, file already exists.";
$uploadOk = 0;
Limiter la taille du fichier
Le champ de saisie de fichier dans notre formulaire HTML ci-dessus est nommé « fileToUpload ».
Maintenant, nous voulons vérifier la taille du fichier. Si le fichier est supérieur à 500 Ko, un message
d'erreur s'affiche et $uploadOk est défini sur 0 :
// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, your file is too large.";
$uploadOk = 0;
Limiter le type de fichier
Le code ci-dessous permet uniquement aux utilisateurs de télécharger des fichiers JPG, JPEG, PNG et
GIF. Tous les autres types de fichiers génèrent un message d'erreur avant de définir $uploadOk sur 0 :
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
$uploadOk = 0;
Script PHP de téléchargement de fichier complet
Le fichier « upload.php » complet ressemble désormais à ceci :
<?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
// Check if file already exists
if (file_exists($target_file)) {
echo "Sorry, file already exists.";
$uploadOk = 0;
// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, your file is too large.";
$uploadOk = 0;
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
$uploadOk = 0;
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
echo "The file ". htmlspecialchars( basename( $_FILES["fileToUpload"]["name"])). " has been
uploaded.";
} else {
echo "Sorry, there was an error uploading your file.";
?>
Référence complète du système de fichiers PHP
Pour une référence complète des fonctions du système de fichiers, consultez notre référence complète
du système de fichiers PHP .
Guide de l'école W3
Suivez vos progrès - c'est gratuit !
ADVERTISEMENT
Obtenir une certification
PIPETTE À COULEURS
pipette à couleurs
ADVERTISEMENT
LES ESPACES
MISE À NIVEAU
SANS PUBLICITÉ
BULLETIN
OBTENIR UNE CERTIFICATION
CONTACTEZ-NOUS
Meilleurs tutoriels
Tutoriel HTML Tutoriel
CSS Tutoriel
JavaScript Tutoriel
pratique Tutoriel
SQL Tutoriel
Python Tutoriel
W3.CSS Tutoriel
Bootstrap Tutoriel
PHP Tutoriel
Java Tutoriel
C++ Tutoriel
jQuery
Références principales
Référence HTML
Référence CSS Référence
JavaScript Référence
SQL Référence
Python Référence
W3.CSS Référence
Bootstrap Référence
PHP
Couleurs HTML
Référence Java Référence
Angular Référence
jQuery
Meilleurs exemples
Exemples HTML Exemples
CSS Exemples
JavaScript Exemples
pratiques Exemples
SQL Exemples
Python Exemples
W3.CSS Exemples
Bootstrap Exemples
PHP Exemples
Java Exemples
XML Exemples
jQuery
Obtenir une certification
Certificat HTML Certificat
CSS Certificat
JavaScript Certificat
Front End Certificat
SQL Certificat
Python Certificat
PHP Certificat
jQuery Certificat
Java Certificat
C++ Certificat
C# Certificat
XML
FORUM SUR LA SALLE DE CLASSE
W3Schools est optimisé pour l'apprentissage et la formation. Les exemples peuvent être simplifiés pour
améliorer la lecture et l'apprentissage. Les tutoriels, références et exemples sont constamment révisés
pour éviter les erreurs, mais nous ne pouvons pas garantir l'exactitude totale de tout le contenu. En
utilisant W3Schools, vous acceptez d'avoir lu et accepté nos conditions d'utilisation , notre politique de
cookies et notre politique de confidentialité .
Copyright 1999-2024 par Refsnes Data. Tous droits réservés. W3Schools est propulsé par W3.CSS .