Hello à tous,
Nouvellement inscrit ici, car jusque la les tutos et les réponses sur ce forum m'ont largement suffi
.
J'en profite donc pour remercier toute l'équipe de alsacréations!
Alors voilà ma question: j'ai un script d'upload de fichiers via un formulaire html (type input=file) et je souhaiterai pouvoir informer l'utilisateur au fur et à mesure qu'un fichier est chargé que ce dernier a été uploadé.
Mon but serait de pouvoir récupérer les information contenue dans le dossier temporaire de chargement des fichiers "upload_tmp_dir". Ou si vous avez une autre méthode...
Voici le code, je l'ai commenté, il n'est pas très propre car je ne suis pas un expert et j'ai regroupé plusieurs scripts que j'ai adapté à ma sauce
D'avance je vous remercie pour votre aide.
++ §hu
Nouvellement inscrit ici, car jusque la les tutos et les réponses sur ce forum m'ont largement suffi

J'en profite donc pour remercier toute l'équipe de alsacréations!
Alors voilà ma question: j'ai un script d'upload de fichiers via un formulaire html (type input=file) et je souhaiterai pouvoir informer l'utilisateur au fur et à mesure qu'un fichier est chargé que ce dernier a été uploadé.
Mon but serait de pouvoir récupérer les information contenue dans le dossier temporaire de chargement des fichiers "upload_tmp_dir". Ou si vous avez une autre méthode...
Voici le code, je l'ai commenté, il n'est pas très propre car je ne suis pas un expert et j'ai regroupé plusieurs scripts que j'ai adapté à ma sauce

<?php
$i = 0;
foreach($_FILES['picture']['name'] as $n => $name) //définit un boucle pour que chaque fichier sélectionné soit traité
{
$i++;
$name = rand(100000000, 999999999) . " " . $name; //assigne une valeur aléatoire avant le nom pour les upload depuis les iPhone
$last_key = end(array_keys($_FILES['picture']['name'])); //permet de définir le dernier fichier traité par foreach
$extension = strtolower(pathinfo($name, PATHINFO_EXTENSION)); //récupère l'extension du fichier et la met en minuscule
$autorise = array('gif','png' ,'jpg' ,'jpeg' ,'avi' ,'mov' ,'zip' ,'rar' ,'mp3' ,'m4a'); //définit dans un tableau les extensions autorisées
if(!in_array($extension,$autorise)) //check l'extension des fichiers sélectionnés
{
$name = substr($name,10);
$erreur = '<div class="erreur">Le fichier suivant n\'est pas autorisé:<br></div><br><b> ' . $name . '</b><br><br>Tu peux uploader uniquement les fichiers:<br>images, vidéos et musiques';
goto erreur;
}
elseif($_FILES['picture']['error'] === UPLOAD_ERR_OK) //check si il n'y a aucune autre erreur
{
$erreur = '<div>Une erreur lors du transfert de fichier s\'est produite<br><br>Ré-essaie!</div>';
goto erreur;
}
if(!isset($erreur)) //Si $erreur ne renvoie aucun résultat, on va plus loin
{
$rand = chr(rand(97, 122)). chr(rand(97, 122)). chr(rand(97, 122)); mkdir('./tmp/' . $_POST['folder']); //création du rép avec autorisation
$dossier = './tmp/' . $_POST['folder'] . '/'; //chemin du dossier de destination
$name = strtr($name,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); //on formate le nom du fichier
$name = preg_replace('/([^.a-z0-9]+)/i', '-', $name);
if(move_uploaded_file($_FILES['picture']['tmp_name'][$n], $dossier . $name)) //on déplace le fichier dans le dossier créé précédemment
{
$name = substr($name,10); //on supprime les 10 caractères (valeurs aléatoires) pour l'affichage
echo '<div>' . $name . '</div>';
if($n === $last_key) //on vérifier si c'est le dernier fichier qui est traité
{
echo '<br><br><div class="ok">' . $i . ' fichier(s) uploadé(s) avec succès</div>';
echo '<p><input type="button" class="button_back" value="RETOUR ↺" onClick="window.parent.location.reload()"></p>';
}
}
else //Sinon (la fonction renvoie FALSE).
{
$erreur = '<div class="erreur">Echec de l\'upload, ré-essaie ou contact-moi</div>';
goto erreur;
}
}
else
{
erreur:
echo $erreur;
echo '<p><input type="button" class="button_back" value="RETOUR ↺" onClick="window.parent.location.reload()"></p>';
break;
}
}
?>
D'avance je vous remercie pour votre aide.
++ §hu