IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Test fin de boucle for


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Points : 86
    Points
    86
    Par défaut Test fin de boucle for
    Bonjour, j'ai une boucle for et j'aimerais tester quand c'est la dernière fois que ca passe dans la boucle mais je ne sais pas le if qu'il faudrait, voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     for (var i = 0; i < x.files.length; i++) {
            txt += "<br><strong>" + (i+1) + ". fichier</strong><br>";
            var file = x.files[i];
            if ('name' in file) {
              txt += 'nom: <a href="https://trouvezvotrebonheur.com/nouveausite/images/5euros.docx"style="color:#FF0000;"><strong>'+ file.name + '</strong></a><br>';
            }
            if ('size' in file) {
              txt += "taille: " + file.size + " bytes <br>";
            }
            //if (i =?)
    }{

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Salut

    Ta boucle for se termine tant que i < x.files.length;, donc la boucle ce termine après que i égal à x.files.length-1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
           if (i == (x.files.length-1))
    		{
    		console.log("la boucle For est fini");
    		}
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Points : 86
    Points
    86
    Par défaut
    merci, j'ai essayé mais ca ne m'achiche que 1 fichier.
    en fait j'ai mis ce code plus bas pour enregistrer dans une base de donnée et afficher dans une div mais si je sélectionne par exemple 3 fichiers, il m'affiche le premier fichier et ensuite le premier et le deuxième et enfin le premier le deuxième et le troisième. c'est normal du fait que l'on est dans une boucle mais est ce qu'il y a une possibilité d'afficher que le premier, le deuxième et le troisième et c'est tout sans afficher 1 fois le premier et une fois le premier et le deuxième?
    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
    for (var i = 0; i < x.files.length; i++) {
            txt += "<br><strong>" + (i+1) + ". fichier</strong><br>";
            var file = x.files[i];
            if ('name' in file) {
              txt += 'nom: <a href="images"style="color:#FF0000;"><strong>'+ file.name + '</strong></a><br>';
            }
            if ('size' in file) {
              txt += "taille: " + file.size + " bytes <br>";
            }
     
            document.getElementById("message").innerHTML += '<br><div style="width:290px; height:auto;background :#ced4e1;border-radius:30px 15px ;margin-auto;word-wrap:break-word;float: left;clear: left;margin: 10px;padding:10px;  "><span style="color:black"> envoyé par:</span>&nbsp;<span style="color:black"><strong>'+pseudo+'</strong></span><span style="color:black">'+txt+'</span><font size="2"><span style="color:black">'+n+'</span>&nbsp;&nbsp;&nbsp;<span style="color:black">' +n1+'</span></font></div><br>';
      element = document.getElementById('message');
      element.scrollTop = element.scrollHeight;
     
      $.ajax({
          type: 'POST',
          data: 'message4='+txt+'&date4='+n+'&heure4='+n1+'&nfile='+file.name+'&tfile='+file.size+'&nbrfile='+i,
          });
     
         <?php
        //$bdd = bdd();
        $req = $bdd -> query("SELECT * FROM personne ");
        $donnees = $req -> fetch();
         
        $idann=$id;
        $pc=$pseudo;
        $poste=$pseudo;
        $pv=$donnees['per_pseudo'];
        //$message=$_POST['message4']; 
        $date=$_POST['date4'];
        $heure=$_POST['heure4'];   
        $nfile=$_POST['nfile'];  
        $tfile=$_POST['tfile'];  
        $nbrfile=$_POST['nbrfile'];
     
        
          
        //$bdd = bdd();
        $bdd->query("INSERT INTO messages VALUES ('','$idann','$pc','$pv','','','','','','','','','','','','','','','$poste','$nbrfile','$nfile','$tfile','$date','$heure')");
        $bdd->query("DELETE FROM messages WHERE mess_v_date='' and mess_v_datef='' and mess_c_date='' and mess_c_datef=''");
        ?> 
          }

  4. #4
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 858
    Points : 6 556
    Points
    6 556
    Par défaut
    merci, j'ai essayé mais ca ne m'achiche que 1 fichier.
    Je crois qu'on a tous compris l'origine du problème!
    Brachygobius xanthozonus
    Ctenobrycon Gymnocorymbus

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Points : 86
    Points
    86
    Par défaut
    merci mais vous pensez qu'il y a une solution?

  6. #6
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 172
    Points
    17 172
    Par défaut
    Re

    essais de faire un console.log("valeur de x ", x) avant de commencer la boucle For, en développant tu devrait trouver la propriété .files.length pour voire si tu as plus d'un fichier.
    Une chose que je ne comprend pas dans ton code if ('name' in file), il vient d’où ce name ?
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Points : 86
    Points
    86
    Par défaut
    merci, je vais essayer le 'name' est je pense le nom des fichiers

Discussions similaires

  1. Sortir d'une boucle for avant la fin
    Par sandball22 dans le forum C
    Réponses: 4
    Dernier message: 17/05/2011, 14h00
  2. Réponses: 7
    Dernier message: 07/07/2010, 12h17
  3. test avant d'entrer dans une boucle For each cell in selection
    Par totoro02 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 13/01/2009, 09h27
  4. Structure while avec une boucle for en test
    Par le_voisin dans le forum C++
    Réponses: 9
    Dernier message: 09/09/2006, 19h16
  5. [BATCH] Aide sur boucle for et test
    Par t_om84 dans le forum Windows
    Réponses: 3
    Dernier message: 07/06/2006, 10h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo