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 :

incrémenter une date


Sujet :

JavaScript

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut incrémenter une date
    Bonjour à toutes et à tous,

    je rencontre un léger soucis avec une fonction que j'ai fais,

    en fait c'est pour décaler des dates.

    J'ai donc fais la fonction sous-jacente.

    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
    <script type="text/javascript">
        function addday() {
            var items = new Array();
            var itemCount = document.getElementsByClassName("date");
     
            for (var i = 0; i < itemCount.length; i++) {
                items[i] = document.getElementById("date" + (i + 1)).value;
            }
     
     
     
            for (var i = 0; i < itemCount.length; i++) {
                items[i] = document.getElementById("date" + (i + 1)).value;
                var itemDtParts = items[i].split("-");
                var itemDt = new Date(itemDtParts[2], itemDtParts[1] - 1, itemDtParts[0]);
                    nb=document.getElementById('nb').value;
     
                    itemCount[i].value = (itemDt.getDate() < 9 ? "0" : "")+ (itemDt.getDate()+nb)+ "-" + (itemDt.getMonth() < 9 ? "0" : "") + (itemDt.getMonth() + 1) + "-" + itemDt.getFullYear();
     
     
     
     
     
            }
               return items;
               }
    </script>
    Donc le soucis est que concernant cette fonction si par exemple j'ai une date du 15/08/2012 et que je demande plus 5 au lieu de m'écrire 15/08/2012
    Et bien il m'écrit 105/08/2012 ce qui n'est pas possible.

    Savez vous m'indiquer comment je puis résoudre le soucis?

    Par avance merci.


    SP.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    setDate ..
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById("date" + (i + 1)).value.setDate(document.getElementById("date" + (i + 1)).value.getDate() + nb) ;
    et il me répond dans la console:
    2Uncaught TypeError: Object 27-08-2012 has no method 'getDate'

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    un value est un string ...
    getDate est une methode de l'objet Date ...

    => converti ton value en date
    =>fais un setDate dessus pour l'incrementer
    =>fais un getDate pour afficher la date obtenue
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    c'est déjà une date dans la base de donnée c'est au format YYYY-mm-dd, je fais un
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo date('d-m-t', strtotime($row['date'])) ; ?>
    pour le format européen c'est tout.

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById("date" + (i + 1)).value.getDate()
    là ce n'est pas une date ....
    c'est un string !
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    et comment fais t'on l'équivalent de date('d-m-Y', strtotime($row['date'])) en javascript? par avance merci.

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    stringdate= "29-08-2012"
    tabdate=stringdate.split('-').reverse()
    madate= new Date(+tabdate[0],+tabdate[1]-1, t+abdate[2])
    alert(madate.toLocaleString())
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    et avec incrément
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    stringdate= "29-08-2012"
    tabdate=stringdate.split('-').reverse()
    madate= new Date(+tabdate[0],+tabdate[1] -1, +tabdate[2])
    alert(madate.toLocaleString())
    lendemain= new Date(+tabdate[0],+tabdate[1] -1, +tabdate[2]+1)
    alert(lendemain.toLocaleString())
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    j'ai donc fais comme cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    stringdate= document.getElementById("date" + (i + 1)).value
    			tabdate=stringdate.split('-').reverse()
    			madate= new Date(tabdate[0],tabdate[1]-1, tabdate[2])
     
                    itemCount[i].value = document.getElementById("date" + (i + 1)).value.setDate(madate + nb) ;
    mais cette fois la page se fige et rien ne change de plus je n'ai pas de messages d'erreur dans la console.

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    itemCount[i].value = document.getElementById("date" + (i + 1)).value.setDate(madate + nb) ;
    rine n'a changé là ...
    tu essaye toujours de faire un setDate sur un value ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  12. #12
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    j'ai essayé comme cela: itemCount[i].value = setDate(madate + nb) ;

    mais ile me dit Uncaught ReferenceError: setDate is not defined

  13. #13
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    a priopri tu n'as pas lu mon code précédent ...
    setDate est une methode de l'objet Date ...

    Dans le code précédent l'incrément se faisait dans el new Date dans le param date du jour (3eme)


    Voici un code pour modifier une date au moyen de getDate et setDate
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    stringdate= "29-08-2012"
    tabdate=stringdate.split('-').reverse()
    madate= new Date(+tabdate[0],+tabdate[1] -1, +tabdate[2])
    madate.setDate(madate.getDate()+1)
    alert(madate.toLocaleString())
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  14. #14
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    Bonjour grâce à votre aide j'ai pu faire cela:


    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
    <script type="text/javascript">
        function addday() {
            var items = new Array();
            var itemCount = document.getElementsByClassName("date");
     
            for (var i = 0; i < itemCount.length; i++) {
                items[i] = document.getElementById("date" + (i + 1)).value;
            }
     
     
     
            for (var i = 0; i < itemCount.length; i++) {
                items[i] = document.getElementById("date" + (i + 1)).value;
                var itemDtParts = items[i].split("-");
                var itemDt = new Date(itemDtParts[2], itemDtParts[1] - 1, itemDtParts[0]);
                nb=document.getElementById('nb').value;
     
        var newDate = itemDt.getDate() + nb;
            itemDt.setDate(newDate ) ;
                    itemCount[i].value = itemDt;
     
            }
     
     
           return items;
               }
     
    </script>
    Le soucis c'est qu'il me renvoi cela:

    Wed Jan 01 2020 00:00:00 GMT+0100 (Paris, Madrid)

    j'ai essayé de formater comme cela:
    itemCount[i].value = itemDt.format("dd-mm-yyyy") ;


    mais il me dit: Uncaught TypeError: Object 1577833200000 has no method 'format'

  15. #15
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    formatdate=itemD.getDate()+"-"+itemD.getMonth()+1+"-"+itemD.getFullYear()
     itemCount[i].value = formatdate;
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  16. #16
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    Bonjour, j'ai donc procédé de la sorte:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
            for (var i = 0; i < itemCount.length; i++) {
                items[i] = document.getElementById("date" + (i + 1)).value;
                var itemDtParts = items[i].split("-");
                 var itemDt = new Date(itemDtParts[2] + "-" + itemDtParts[1] + "-" + itemDtParts[0]);
                nb=document.getElementById('nb').value;
     
     
             var newDate = itemDt.getDate() + nb;
            itemDt.setDate(newDate ) ;
                    itemCount[i].value =  itemDt.getDate()+"-"+itemDt.getMonth()+"-"+itemDt.getFullYear()
    		}
    Le soucis que j'ai désormais c'est que lorsque j'ajoute 1 jour les dates ne correspondent pas en fait par exemple lorsque je fais 27-08-2012 +1 ça me retourne : 28-3-2013

  17. #17
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var itemDt = new Date(itemDtParts[2] + "-" + itemDtParts[1] + "-" + itemDtParts[0]);
    ils sont ou les 3 paramètres ???

    Sinon il y a plusieurs choses à prendre en considération :
    1) les mois en js commencent à 0 => janvier =0
    il faut donc le corriger en entrée avec -1 et en sortie avec +1

    2) en js (comme dans d'autres langages) le string 08 est interprété comme un octal et retournera 10
    il faut donc le parser en décimal parseInt("08",10) =>retourne 8

    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
    <html>
    <head>
    <title>Nouvelle page 1</title>
    <script type="text/javascript">
    function lz(x){
    return x.toString().replace(/^(\d)$/,'0$1')
    }
     
    function ajoute(){
    indate = document.getElementById("entree").value;
                var itemDtParts = indate.split("-");
           	  nb=document.getElementById('jours').value;
                var itemDt = new Date(parseInt(itemDtParts[2],10), parseInt(itemDtParts[1],10)-1, parseInt(itemDtParts[0],10)+ +nb);
                alert(itemDt.toLocaleString())
                document.getElementById("res").value =  lz(itemDt.getDate())+"-"+lz(itemDt.getMonth()+1)+"-"+itemDt.getFullYear()
                 }
    </script>
     
    </head>
    <body>
    date de départ :<input type="text" id="entree" value="27-08-2012" readonly /><br/>
    nbre de jours: <input type="text" id="jours" value=""  /><br/>
    <input type="button" onclick="ajoute()" value="calcul" /><br/>
    <input type="text" id="res" value=""  /><br/>
    </body>
    </html>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  18. #18
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    ce script est vraiment parfait, mais j'ai du mal à l'adapter à ma boucle.

    en fait j'ai donc mis cela:

    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
    <script type="text/javascript">
    function lz(x){
    return x.toString().replace(/^(\d)$/,'0$1')
    }
     
        function addday() {
            var items = new Array();
            var itemCount = document.getElementsByClassName("date");
     
            for (var i = 0; i < itemCount.length; i++) {
                items[i] = document.getElementById("date" + (i + 1)).value;
            }
     
     
     
            for (var i = 0; i < itemCount.length; i++) {
                items[i] = document.getElementById("date" + (i + 1)).value;
                var itemDtParts = items[i].split("-");
                 var itemDt  = new Date(parseInt(itemDtParts[2],10), parseInt(itemDtParts[1],10)-1, parseInt(itemDtParts[0],10)+ +nb);
                nb=document.getElementById('nb').value;
     
                    itemCount[i].value = lz(itemDt.getDate())+"-"+lz(itemDt.getMonth()+1)+"-"+itemDt.getFullYear()
    		}
     
     
           return items;
               }
     
    </script>
    et pour la première date qui est le 27/08/12 il me renvoit cela:

    NaN-NaN-NaN pour les autres ça a l'air de fonctionner.

  19. #19
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    pourquoi deux boucles pour renseigner items ?

    a quoi ressemble le html associé ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  20. #20
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 197
    Points : 54
    Points
    54
    Par défaut
    voici le html associé
    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
    51
    52
    53
    54
    55
    56
    57
    58
    <?php
     $jours = date('Y-m-d');
    $sql = "SELECT * FROM agenda WHERE n_doss='".mysql_real_escape_string($_GET['n_doss'])."' AND qualite='".mysql_real_escape_string($_GET['qualite'])."' AND liasse='".$_GET['liasse']."'";
    $qry = mysql_query($sql) or die(__LINE__.mysql_error().$sql);
     
    $i = -1; // index des enregistrements
    ?>
     
     
     <form action="<?php echo (isset($_POST['go'])) ? 'go2.php' : '#'; ?>" method="post">
     
          <input type="hidden" name="liasse" value="<?php echo $_GET['liasse']; ?>"/>
          <input type="hidden" name="n_doss" value="<?php echo $_GET['n_doss']; ?>"/>  
    <table id="box-table-a">
        <tr>
             <th scope="col"><input name="data[<?php echo ++$i; ?>][code_s]" type="text" value="CODE S" size="10"></th>
             <th scope="col"><input name="data[<?php echo $i; ?>][libelle]" type="text" value="LIBELLE" size="30"></th>
              <th scope="col"><input name="data[<?php echo $i; ?>][action]" type="text" value="ACTION" size="15"></th>
             <th scope="col"><input name="data[<?php echo $i; ?>][libelle]" type="text" value="DESCRIPTION" size="40"></th>
              <th scope="col"><input type="text" name="data[<?php echo $i; ?>][date]" value="DATE D'ACTION" size="12"></th>   <th scope="col"><input type="text" name="data[<?php echo $i; ?>][date]" value="VALIDATION" size="12"></th>
              <th scope="col"><strong>ETAT</strong></th></tr>
     
          <?php while($row = mysql_fetch_assoc($qry)): ?>
     
    <tr>
             <td><input name="data[<?php echo ++$i; ?>][code_s]" type="text" value="<?php echo $row['code_s'];?>" size="10"></td>
             <td><input name="data[<?php echo $i; ?>][libelle]" type="text" value="<?php echo $row['libelle']; ?>" size="30"></td>
             <td><input name="data[<?php echo $i; ?>][action]" type="text" value="<?php echo $row['action']; ?>" size="15"></td>
             <td><input name="data[<?php echo $i; ?>][libelle]" type="text" value="<?php echo $row['description']; ?>" size="40"></td>
             <td> 	<input type="text" name="data[<?php echo $i; ?>][date]" class="date" id="date<?php echo $i; ?>" value="<?php 
     
     
    echo date('d-m-Y',strtotime($row['date_action'])) ;
     
     ?>" size="12"></td>
     <td nowrap><input type="text" name="data[<?php echo $i; ?>][date_validation]" id="data[<?php echo $i; ?>][date_validation]" value="<?php if($row['date_validation']=='0000-00-00') {echo 'Non trait&eacute;' ; }
     else {
    echo (date('d-m-Y',strtotime($row['date_validation']))); }
     ?>" size="12"></td>
             <td nowrap><?php if($row['date_validation']=='0000-00-00' AND strtotime($row['date_action'])>strtotime(date('Y-m-d')))  {?><a href="edit-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>&qualite=<?php echo $_GET['qualite'] ?>"><img src="images/gtk-edit.png" width="24" height="24"></a> <a href="validate-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>&qualite=<?php echo $_GET['qualite'] ?>"><img src="images/go.gif" width="24" height="24"></a> <a href="delete-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>" onClick="return confirm('voulez vous vraiment supprimer cette action ?')"><img src="images/trash-paper.png" width="24" height="24"></a><?php } elseif($row['date_validation']=='0000-00-00' AND strtotime($row['date_action'])<=strtotime(date('Y-m-d'))) {?><a href="#" onClick="return confirm('Vous ne pouvez pas &eacute;diter ou changer la date d\'une action appartenant à votre passif !')"><img src="images/gtk-edit.png" width="24" height="24"></a> <a href="validate-action.php?id=<?php echo $row['id'] ; ?>&n_doss=<?php echo $row['n_doss'] ; ?>&liasse=<?php echo $_GET['liasse'] ?>&qualite=<?php echo $_GET['qualite'] ?>"><img src="images/go.gif" width="24" height="24"></a> <a href="#" onClick="return confirm('Vous ne pouvez pas supprimer une action appartenant à votre passif !')"><img src="images/trash-paper.png" width="24" height="24"></a><?php } else { ?><img src="images/tick_48.png" width="24" height="24"><?php } ?></td>
          </tr>
      <?php endwhile; ?></td></tr></table>     
     
     
     
     
     
    <p align="center"><input type="submit" name="go" value="Enregistrer les modifications !" width="28" height="28"></p></form>
    <table width="50%"><tr><td><div class="info"> <strong>Décalage des date </strong>
             <table width="150" border="0" cellspacing="0" cellpadding="0">
                <tr>
                   <td align="center" bgcolor="#FFFF99">
                      <input type="image" src="images/minus_remove_green.png" width="22" height="22" name="submit"  value="moins" onClick="subday()" />
                      <input name="jours" type="text" value="" size="5" id="nb" />
                      <input type="image" src="images/plus_add_green.png" width="22" height="22" onClick="addday()"  />
                   </td>
                </tr>
             </table>

Discussions similaires

  1. incrémenter une date par une période de temps
    Par bilouk dans le forum VBA Access
    Réponses: 22
    Dernier message: 16/06/2023, 10h43
  2. Comment incrémenter une date d'un an ?
    Par imedg dans le forum SQL
    Réponses: 13
    Dernier message: 22/01/2021, 17h12
  3. JSpinner, probleme pour incrémenter une Date.
    Par jeanlouis_lecodeur dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 03/12/2010, 14h28
  4. BATCH : Incrémenter une date
    Par BATCHOS CON TEQUILA dans le forum Windows
    Réponses: 4
    Dernier message: 02/07/2007, 15h15
  5. Comment incrémenter une date
    Par hamadi_insat dans le forum Langage
    Réponses: 2
    Dernier message: 09/09/2006, 22h53

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