Bonjour,

J'ai un petit soucis au niveau de l'upload avec clone, je fais charger une image, apres le clone se fait automatiquement, pour creer un nouveau ficher d'upload, si jamais je décide de ne pas charger une 2ème image, et je valide le formulaire, normalement je dois recevoir dans la page de traitement des informations, une seule image a uploader, mais je recois 2 images:

Nom : Screen Shot 2018-05-02 at 12.50.21.png
Affichages : 109
Taille : 121,1 Ko

Comme vous voyer, une seule image a été chargée, avec le nom "9Xqsk.jpg", mais je recois la meme image 2 fois.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
[name] => Array
                (
                    [0] =>  // c'est un fichier file vide (n'est pas chargé)
                    [1] => 9Xqsk.jpg // le fichier que j'ai chargé
                    [2] => 9Xqsk.jpg // c'est le champs où le clone s'exécute, et porte les mêmes critères du champs chargé
                )
Code du clone
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
var cloned = $('#' + mediaType + '-Up-Area-' + incInputs).clone().insertAfter('div#' + mediaType + '-Up-Area-' + incInputs + ':last');
                  console.log(cloned);
 
					// get now timestamp, we need to divide by 1000
					var seconds = $.now() / 1000;
					//console.log(seconds);
 
					var timeNow = seconds.toString();
					//console.log(timeNow);
 
					var timestamps = timeNow.split(".");
					//console.log(timestamp[0]);
					var timestamp	= timestamps[0];
 
 
                  var randKey = generateRandomID(20);
 
					// get a new key for next cloned item
                  var setClonedID = randKey + ''+ timestamp;
 
                  console.log('curr ' + incInputs);
                  console.log('next ' + setClonedID);
 
 
                  // find file uploaded ID and replace them with the new file to upload ID
                  cloned.closest('#' + mediaType + '-Up-Area-' + incInputs).attr('id', mediaType + '-Up-Area-' + setClonedID);
 
                  cloned.find('#' + mediaType + '-Up-' + incInputs).attr('id', mediaType + '-Up-' + setClonedID);
                  cloned.find('label').attr('for', mediaType + '-fileInput-' + setClonedID);
                  cloned.find('#' + mediaType + '-File-' + incInputs).attr('id', mediaType + '-File-' + setClonedID);
                  cloned.find('#' + mediaType + '-fileInput-' + incInputs).attr('id', mediaType + '-fileInput-' + setClonedID);
                  cloned.find('#' + mediaType + '-ProgressBarPercent-' + incInputs).attr('id', mediaType + '-ProgressBarPercent-' + setClonedID);
                  cloned.find('#' + mediaType + '-AdActions-' + incInputs).attr('id', mediaType + '-AdActions-' + setClonedID);
                  cloned.find('#' + mediaType + '-Del-' + incInputs).attr('id', mediaType + '-Del-' + setClonedID);
                  cloned.find('#' + mediaType + '-Star-' + incInputs).attr('id', mediaType + '-Star-' + setClonedID);
 
                  // then make changes for new cloned file
/*
Ici je change l'attribut src de l'ancienne image avec une image par défaut
*/
                  cloned.find('#' + mediaType + '-File-' + setClonedID).attr('src', 'Images/'+mediaType+'-upload-area.png');
                  cloned.find('#' + mediaType + '-ProgressBarPercent-' + setClonedID).html('0%');
                  cloned.find('#' + mediaType + '-ProgressBarPercent-' + setClonedID).removeClass('progress-bar-success').addClass('progress-bar-custom');
                  cloned.find('#' + mediaType + '-MsgDisplay-' + setClonedID).html('Choose 1 file');
 
 
 
                  // hide delete button for the cloned file
					$('#' + mediaType + '-AdActions-' + setClonedID).css('display', 'none');
Merci a vous