TRANSMETTRE DES FICHIERS AVEC LE FORMULAIRE EN PHP
Dernière mise à jour : 9 avr. 2021
l'envoie du fichier
le visiteur arrive sur votre formulaire et le remplit (en indiquant le fichier a envoyer)
php réceptionne les données du formulaire et , s'il ya des fichier dedans , il les enregistre dans un des dossiers du serveur
le formulaire de l'envoie
<form action ="cible_ envoie.php" method="post"
ecnctype="multipart/form-data">
<p>
formulaire d'envoie de fichier :<br/>
<input type="file" name="monfichier" /></br>
<input type="submit" value="Envoyer le fichier"/>
</p>
</form>
une variable $_FILES['monfichier'] est créée:
$_FILES['monfichier']['name']: contient le nom du fichier envoyé par le visiteur
$_FILES['monfichier']['type']: indique le type du fichier envoyé si c'est une image gif par exemple le type sera image/gif
$_FILES['monfichier']['size']: indique la taille du fichier envoyé la taille est on octet
$_FILES['monfichier']['tmp-name']: juste après l'envoie le fichier est placé dans un répertoire temporaire sur le serveur en attendant que votre scripte php décide si oui ou non il accepte de le stocker pour le bon cette variable contient l'emplacement temporaire du fichier (c'est php qui gère ca )
$_FILES['monfichier']['error']: Contient un code d'erreur permettant de savoir si l'envoie s'est bien effectué ou s'il ya a eu un problème et si oui , lequel la variable vaut 0 s'il n'ya pas eu d'erreur
le traitement de l'envoie en php
vérifier tout d'abord si le visiteur a bien envoyé un fichier est s'il n'ya pas eu d'erreur d'envoie
vérifié si la taille du fichier ne dépasse pas 1 MO par exemple (environ 1000 000 d'octet)
vérifié si l'extension du fichier est autorisée
Tester si le fichier a bien été envoyé
<?php
// Testons si le fichier a bien été envoyé et s'il n'ya pas d'erreur
if(isset($_FILES['monfichier']) AND $_FILES['monfichier']['error']==0)
{
instruction a faire
}
?>
Vérifier la taille du fichier
<?php
//teston si le fichier a bien été envoyer et s'il n'ya pas d'erreur
if(isset($_FILES['monfichier']) AND $_FILES['monfichier']['erreur']==0{
//teston si le fichier n'est pas trop gros
if( $_FILES['monfichier']['size'] <=1000000){
{
}
?>
vérifier l'extension du fichier
<?php
$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension _upload= $infosfichier['extension'];
$extension_autorises=array('jpg', 'jpeg', 'gif' , 'png');
if(in_array($extension _upload, $extension_autorises))
{
}
?>