Vérifier si $_FILES est vide

Par -Alexx-, il y a 12 ans


Bonjour,

J'ai créé un outil d'administration permettant notamment d'uploader des fichiers. Ce champ n'est pas obligatoire et je souhaite qu'à la modification d'une réalisation, si l'input file (multiple) est vide, il ne fasse rien, s'il n'est pas vide, qu'il uploade les nouvelles photos et les insère en base de données.
J'ai tout essayé :

if(!empty($_FILES'file]']){

if(!empty($_FILES'file']){

J'ai également testé avec l'erreur 4, les champs size, tmp_name, name...
Dans tous les cas, il m'affiche le même résultat si le champ est vide ou rempli.

Ça me semble tellement évident, et pourtant je bloque.

Merci d'avance pour vos réponses :)

4 réponses

Arnaud Mcho Scott, il y a 12 ans

Si je ne me trompe pas du dois avoir quelque part la taille du fichier

Glaived, il y a 12 ans
<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="utf-8">
    <title>Titre</title>
</head>
<body>
    <?php
    var_dump( $_FILES ); //
    echo isset($_FILES'error']) && $_FILES'error'] === 0 ? 'Good' : 'Problem';
    ?>
    <hr />
    <form action="" method="POST" enctype="multipart/form-data">
        <input type="file" name="file" />
        <input type="submit" />
    </form>
</body>
</html>

le

enctype="multipart/form-data"

est requis

-Alexx-, il y a 12 ans

Merci de vos réponses.

J'ai bien renseigné l'enctype.
Je n'ai en fait aucun souci pour uploader les fichiers via mon input file multiple. Le souci que j'ai concerne l'action en fonction de si l'utilisateur a chargé des fichiers ou non.
Je fais les conditions (admettons, je reprends la condition de Glaived) :

if($_FILES'error']) && $_FILES'error'] === 0){
    echo "Pas vide";
}else{
    echo "vide";
}

Il me met la même réponse, que le formulaire soit validé avec le champ "file" vide ou rempli.
Donc c'est au niveau de la condition que je bloque...

Glaived, il y a 12 ans

Pour vérifier qu'il n'y a aucun fichier sélectionner, et donc aucun téléchargement effectué [code]if(isset($_FILES['error']) && $_FILES['error'] === 4) echo 'Aucuns fichier select';[/code] [url= http://adf.ly/pjdFt]Explication sur les messages d'erreurs de chargement de fichiers[/url]