0% ont trouvé ce document utile (0 vote)
28 vues10 pages

Télécharger des fichiers avec PHP

Transféré par

Gil
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
28 vues10 pages

Télécharger des fichiers avec PHP

Transféré par

Gil
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

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 .

Vous aimerez peut-être aussi