Bonjour à toutes et à tous,

En utilisant la fonction move_uploaded_file de PHP, je voudrai déplacer une vidéo vers un répertoire.
J'ai (et Apache aussi) les droits pour lire_écrire dans le répertoires. La vidéo n'est pas déplacée
<?php

$uploaddir='videos/';
$uploadfile=$uploaddir.basename($_FILES['video']['name']);
$file_name=$_FILES['video']['name'];

// Vérifier la taille de la vidéo d'upload
$file_size = $_FILES['video']['size'];
if($file_size > 15728640) {
            echo 'La taille du fichier est trop importante ... <br/>';
            exit();
        }
// Vérifier upload de la vidéo
if (is_uploaded_file($_FILES['video']['tmp_name'])) {
    echo "Upload réussi du fichier ". $_FILES['video']['name'] ." \n";      
    move_uploaded_file($_FILES['video']['name'], $uploaddir);
} else {   
   echo "Impossible de télécharger le fichier : '". $_FILES['video']['name'] . "'.";
}

echo '<pre>';
print_r($_FILES);
echo '<pre>';

?>
Merci d'avance.
Sophonie.
Il faut spécifier le nom de fichier dans ta fonction move_uploaded_file
move_uploaded_file($_FILES['video']['name'], $uploaddir.$nom_de_la_video);
donc en gros ça donnerai ça chez toi :
move_uploaded_file($_FILES['video']['name'], $uploaddir.$_FILES['video']['name']);
Il m'affiche que l'upload est réussi certes, mais dans le répertoire la vidéo est absente !
Pardon, je corrige :
move_uploaded_file($_FILES['video']['tmp_name'], $uploaddir.$_FILES['video']['name']);
plutôt ceci :
move_uploaded_file($_FILES['video']['name'], $uploaddir.$file_name);
puisque l'upload du fichier est ok donc c'est $_FILES['video']['name'] au lieu de $_FILES['video']['tmp_name']
sophonie wrote:plutôt ceci :
move_uploaded_file($_FILES['video']['name'], $uploaddir.$file_name);
puisque l'upload du fichier est ok donc c'est $_FILES['video']['name'] au lieu de $_FILES['video']['tmp_name']
Ok et ça fonctionne ou toujours pas ?
[Résolu]
Autant pour moi (mille excuses).
$_FILES['video']['tmp_name'] au lieu de $_FILES['video']['name']
Ok super, tiens je te montre un script dans lequel il y a plein d'autres check (extension, caractères particuliers, etc.)
if($_FILES != null)
            {
                
                $folder = $_POST['chemin_destination'];
                
                if (!file_exists($folder.$_FILES['file_to_import']['name']))
                {
                    $MAX_FILE_SIZE = 6000000;
    
                //declaration des variables type "file"
                    $fname = $_FILES['file_to_import']['name'];
                    $ftype = $_FILES['file_to_import']['type'];
                    $fsize = $_FILES['file_to_import']['size'];
                    $ftmp  = $_FILES['file_to_import']['tmp_name'];
                    
                //verification que l'image est uploadee
                    if (!is_uploaded_file($ftmp))
                    {exit("Le fichier est introuvable dans le dossier temporaire");}
                    
                //definition des extensions valides
                    $extensions_valides = array('png', 'jpg', 'gif', 'jpeg');
                    
                //extraction de l'extension de l'image
                    $extension_upload = substr(  strrchr($fname, '.')  ,1);
                    
                //verification que l'extension de l'image correspond aux extension autorisees
                    if (!in_array($extension_upload,$extensions_valides))
                    {exit("Format de fichier incorrect.");}
                    
                //verification de la taille (poids) de l'image
                    if ($fsize > $MAX_FILE_SIZE)
                    {exit("Fichier trop volumineux.");}
                    
                //caractere a remplacer dans le nom de fichier
                    $eviter = array(" - ", "-", " ", "/", "%", "&", "(", ")");

                //remplacement des caractere a eviter
                    $fname_propre = str_replace($eviter, "_", $fname);

                //enlever les majuscules
                    $fname_ok = strtolower($fname_propre);
                    
                //verification que l'image n'existe pas déja sur le serveur
                    if (file_exists($folder.$fname_ok))
                    {echo '<script>javascript:setTimeout("history.back()",3000)</script>'; exit("Fichier deja existant.");}
                    
                //verification que l'image temp à été déplacée dans le dossier des images
                    if (!move_uploaded_file($ftmp, $folder . $fname_ok))
                    {echo '<script>javascript:setTimeout("history.back()",3000)</script>'; exit("Impossible de copier le fichier dans ".$folder.", verifiez les droits");}
                    
                }
            }
Merci encore, très utile dans une phase de peaufinnement de l'application que je gère .