move uploaded file

Ce sujet est résolu
Default
,

Bonjour,

Voila j'ai un ce code en php permettant de faire un upload de fichier le code fontionne très bien, sauf que je souhaiterai afficher encore si le fichier existe, il m'affiche un message que le fichier existe. Merci de l'aide

if(!empty($_FILES)){
        //file_name=nom du fichier
        $file_name = $_FILES['fichier']['name'];
        $file_extension = strrchr($file_name, ".");

        $file_tmp_name = $_FILES['fichier']['tmp_name'];
        $file_dest = '../../../dev/intraweb3_enDev/quotidien/fmm/'.$file_name;

        $extension_autorisees = array('.pdf', '.PDF');

        if(in_array($file_extension, $extension_autorisees))
        {
            if(move_uploaded_file($file_tmp_name, $file_dest)){
                $req = $bdd->prepare('INSERT INTO fmm(name, file_url) VALUES(?,?)');
                $req->execute(array($file_name, $file_dest));
                $msg1 = "Fichier envoyé avec succès";
            }else{
                $msg = "Une erreur s'est produite lors de l'envoi de fichier";
            }
            if($file_tmp_name == $file_dest and $file_name){
                $msg2 = "Ce fichier existe déjà";
            }
        }
        else{
            $msg = "Seuls les fichier PDF sont autorisés";
        }
    }

Moi j'ai fais cela mais ca ne fonctionne pas, mais est-ce-que cela ressemble a sa ce qu'il faut faire ?

if($file_tmp_name == $file_name){
                $msg2 = "Ce fichier existe déjà";

1 Réponse

Default
,

Bonjour,
il faut plutôt regarder du côté de la fonction file_exists https://www.php.net/manual/fr/function.file-exists.php
et que tu vois si $file_dest existe déjà en local je pense.
comme tu fais un insert en bdd, tu peux aussi faire le select qui va bien pour vérifier si l'entrée existe déjà en base.