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 éclairé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    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
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 127
    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");
    		}
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

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

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    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 confirmé Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 988
    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 988
    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!

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

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

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

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

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 127
    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 ?
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

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

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    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