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 :

Script mangeur de ressources


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut Script mangeur de ressources
    Bonjour!

    J'ai développé un script qui permet de calculer en temps réel des économies réalisées en passant d'un produit A à un produit B.
    C'est donc un compteur qui tourne rapidement et qui donne une valeur en temps réel.

    Je suis loin d'être bon en développement JS et j'ai donc codé comme j'ai pu (oui, avec les pieds si vous voulez ). Et du coup je me rends compte que mon script est très gourmand en ressources CPU... Il atteint les 50% d'utilisation du CPU...

    Ca serait super sympa de regarder mon code pour essayer de voir ce qui se passe et voir s'il y a une solution assez simple... sans repasser par une réécriture complète du code!
    Je vois plein de compteurs de ce genre sur le net, qui ne consomment presque rien en ressources... mais peut être qu'il n'y a pas autant de paramètres dans leur code...

    Bref, voici le code. Je peux vous en donner plus d'infos mais, si c'est possible, il serait bien de se focaliser sur la consommation CPU, plus que sur la compréhension du code en lui même

    Si vous avez besoin de plus d'infos, je suis dispo

    Merci d'avance pour votre aide!

    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    336
    337
    338
    339
    340
    341
    342
    343
    344
    345
    346
    347
    348
    349
    350
    351
    352
    353
    354
    355
    356
    357
    358
    359
    360
    361
    362
    363
    364
    365
    366
    367
    368
    369
    370
    371
     
    <?php
     
            
     
    $requeteCount = mysql_query("SELECT COUNT(zoneTarif_id) as totalZones FROM zonetarif;");
     
    $donneesCount = mysql_fetch_array($requeteCount);
     
    $totalZones = $donneesCount['totalZones'];
     
     
    if(isset($_SESSION['timestampArret'])){
    $timestampArret = $_SESSION['timestampArret'];
     
    $nombreJour = $_SESSION['utilisateur_nbreJour'];
    }
     
     
    $requete = mysql_query("SELECT * FROM zonetarif ; ");
     
    $cptr = 0;
     
    $i = 0; 
     
    $suivant = 0; // Va permettre d'effectuer la partie 2 uniquement quand la zone d'arret aura été trouvée. On le met à 1 quand on a trouvé la zone d'arret, et on le met à deux à la fin de cette même boucle. Comme ça,une fois à 2, il accedera à la boucle du dessous.
     
    ?>
     
    <script language="javascript">
     
    var economieMaxiZone = [];
     
    var cptrJS = 0;
     
    var j = 0;
     
    var compteurZonesTraversees = 0;
     
    var economieMaxiZoneActuelle = 0;
     
    var cptrBouclesWhile = 1;
     
    var totalEconomiseZoneArret = 0;
     
    var compteurZonesTraversees = 0;
     
    var totalEconomiseDerniereZone = 0;
     
       
     
    </script><?php
     
    while ($donnees = mysql_fetch_array($requete)){
     
     
     
    $debutZone= $donnees['zoneTarif_debutZone'];
     
    $finZone= $donnees['zoneTarif_finZone'];
     
     
     
    ////////////////////////1.Calcul de la somme économisée dans la zone d'arrêt//////////////////
     
    if(isset($_SESSION['timestampArret'])){
    if ((($timestampArret >= $debutZone) && ($timestampArret <= $finZone )) && ($finZone != 8888888888 )){
     
            $zoneArret = $i;
     
            $dureeZoneArret = $finZone - $debutZone;
     
            $prixpack = $donnees['zoneTarif_prix'];
     
    //Prix par seconde dans la zone d'arrêt:
     
            $prix = $prixpack/20;
     
            $prixSeconde = ($prix*$nombreJour)/24/60/60;
     
    ?>
     
            <input type="hidden" id="zoneTarif_finZone" value="<?php echo $finZone ; ?>" />
     
            <input type="hidden" id="timestampArret" value="<?php echo $timestampArret ; ?>" />
     
            <input type="hidden" id="prixSeconde" value="<?php echo $prixSeconde ; ?>" />
     
            <script language="javascript">
     
            
     
            var zoneTarif_finZone = document.getElementById("zoneTarif_finZone").value ;
     
            var timestampArret = document.getElementById("timestampArret").value ;
     
            var prixSeconde = document.getElementById("prixSeconde").value;
     
            var tempsDansZoneArret = zoneTarif_finZone - timestampArret;
     
            var totalEconomiseZoneArret = tempsDansZoneArret * prixSeconde;
     
            
     
            
     
            </script>
     
            <?php
     
            $suivant = 1; //Explication: cf déclaration en haut
     
    }
     
    }
     
    ////////////////////////2.Calcul de la somme économisée dans les zones d'arrêt suivantes//////////////////
     
    if (($suivant == 2) && ($finZone != 8888888888 )){  
     
            ?>
     
    	<input type="hidden" id="zoneTarif_finZone<?php echo $cptr; ?>" value="<?php echo $donnees['zoneTarif_finZone'] ; ?>" />
     
    	<input type="hidden" id="zoneTarif_debutZone<?php echo $cptr; ?>" value="<?php echo $donnees['zoneTarif_debutZone']; ; ?>" />
     
    	<input type="hidden" id="zoneTarif_prix<?php echo $cptr; ?>" value="<?php echo $donnees['zoneTarif_prix']; ?>" />
     
    	<input type="hidden" id="nombreJour" value="<?php echo $_SESSION['utilisateur_nbreJour'] ; ?>" />
     
     
     
    	<script language="javascript">
     
     
     
    	var zoneTarif_finZone = document.getElementById("zoneTarif_finZone"+cptrJS).value;	
     
    	var zoneTarif_debutZone = document.getElementById("zoneTarif_debutZone"+cptrJS).value;
     
    	var zoneTarif_prix = document.getElementById("zoneTarif_prix"+cptrJS).value;
     
    	var nombreJour = document.getElementById("nombreJour").value;
     
     
     
     
     
    	economieMaxiZone.push((zoneTarif_finZone - zoneTarif_debutZone) * (zoneTarif_prix/20/24/60/60) * nombreJour);
     
    	cptrJS++;
     
    	economieMaxiZoneActuelle =economieMaxiZone[j];
     
    	j++;
     
    	compteurZonesTraversees = parseFloat(compteurZonesTraversees) + parseFloat(economieMaxiZoneActuelle);
     
     
     
    	</script>
     
     
     
    <?php 
     
    $cptr++;
     
    }
     
    $i++;
     
    if ($suivant == 1){
     
    	$suivant = 2;
     
    }
     
     
     
    ////////////////////////3.Calcul de la somme économisée dans la dernière zone//////////////////
     
     
     
    if ($finZone == 8888888888 ){
     
     
     
    	$prixpack = $donnees['zoneTarif_prix'];
     
     
     
    //Prix par seconde dans la zone d'arrêt:
     
    	$prix = $prixpack/20;
    	if(isset($_SESSION['timestampArret'])){
     
    		$prixSeconde = ($prix*$nombreJour)/24/60/60;
    	}
     
     
     
    ?>
     
    	<input type="hidden" id="timestampArret" value="<?php echo $timestampArret ; ?>" />
     
    	<input type="hidden" id="totalZones" value="<?php echo $totalZones ; ?>" />
     
    	<input type="hidden" id="prixSecondeDerniereZone" value="<?php echo $prixSeconde ; ?>" />
     
    	<input type="hidden" id="zoneTarif_debutDerniereZone" value="<?php echo $donnees['zoneTarif_debutZone']; ; ?>" />
     
     
     
    	<script language="javascript">
     
    	var prixSecondeDerniereZone = document.getElementById("prixSecondeDerniereZone").value ;
     
    	var totalZones = document.getElementById("totalZones").value ;
     
    	var timestampArret = document.getElementById("timestampArret").value ;
     
     
     
    	//La condition ci dessous permet de gérer le fait que l'arret se passe pendant la derniere zone (else) ou si il faut ajouter la valeur totale de la dernière valeur (succès du if).
     
    	if ((compteurZonesTraversees != 0) || (cptrBouclesWhile == totalZones-1) ){ 
     
    		var zoneTarif_debutDerniereZone = document.getElementById("zoneTarif_debutDerniereZone").value ;
     
    	}
     
    	else { //Sinon, le début de la zone est définit par le timestamp d'arret
     
    		var zoneTarif_debutDerniereZone = document.getElementById("timestampArret").value ;
     
    	}
     
    	</script>
     
    	<?php
     
            $suivant = 1; //Explication: cf déclaration
     
    }
     
            ?>
     
    <script language="javascript">
     
    cptrBouclesWhile++;
     
    </script>
     
     
     
    <?php
     
     
     
    } //Fermeture du while
     
     
     
    ?>
     
     
     
     
     
      <script language="javascript">
     
    function economies()
     
    {
     
    	var time = new Date();
     
    	var zoneTarif_finZone = (time.getTime()/1000);
     
     
     
     
     
    	var prixSecondeDerniereZone = document.getElementById("prixSecondeDerniereZone").value;
     
    	var tempsDansDerniereZone = zoneTarif_finZone - zoneTarif_debutDerniereZone;
     
    	var totalEconomiseDerniereZone = tempsDansDerniereZone * prixSecondeDerniereZone;		
     
     
     
    	var compteur = parseFloat(totalEconomiseZoneArret) + parseFloat(compteurZonesTraversees) + parseFloat(totalEconomiseDerniereZone);
     
     
     
    	//Le 1000000 est pour arrondir avec un certain nombre de décimales, égales au nombre de zéros
     
    	document.getElementById('div_economies').value=Math.round(compteur*1000000) / 1000000;
     
    	setTimeout("economies()", 1000); // temps en milliseconde pour rafraichir la fonction
     
    	nombre();
     
    }
     
     
     
    </script>
     
     
     
     
     
    <?php $secondesJournee=3600*24; ?>
     
    <input id="econde" type="hidden" value="<?php echo $_SESSION['utilisateur_nbreJour']/$secondesJournee; ?>" />
     
     <script language="javascript">
     
    function nombre()
     
    {
     
    		var time = new Date();
     
    		var facteur = document.getElementById("econde").value;
     
    		var compteur = time.getTime()/1000 - timestampArret;
     
    		document.getElementById("Totale").value = Math.round(compteur * facteur*1000000) / 1000000;
     
    		setTimeout("nombre()", 1000);
     
    }
     
    </script>
     
     
     
     
     
    <body onload="economies()">
     
    <p class="nonCentre">
     
     
     
    Economies réalisées:
     
     
     
     
     
    <input style="background-color:rgb(123,164,46);"id="div_economies" size="10" value=""/> €
     
    <br />
     
     non utilisés:
     
     
     
    			<input style="background-color:rgb(123,164,46);"id="Totale" size="10" value=""/> 
     
    			<?php
     
     
     
    ?>
     
    </li></ul>

  2. #2
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    bonjour,

    pour anticiper les messages des javascripteurs : peux-tu poster le code html / javascript généré par PHP ?


    Sinon (même si j'avoue que je ne connais rien à PHP ) je constate que tu fais beaucoup de requêtes vers le serveur. Ceci explique cela ?

    De plus avec des requêtes SQL du genre
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM uneTable
    il faut s'attendre à ce que ça mouline, surtout si ta base et conséquente.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    Yep ok je poste ça

    Pour la requête, je veux bien te croire, elle n'est pas optimisée, mais je suppose que ça ferait ramer le script au départ uniquement, pas en permanence?

    Merci d'avoir pris le temps de me répondre


    Edit: voici le code.... le problème est détecté Il faut voir la duplication de lignes au début du code html!! Donc je suppose que la solution sera de supprimer cette duplication

    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
     
    <div id="sidebar">
    					<ul><li><ul><li><h2>Vos économies</h2></li></ul><script language="javascript">
    var economieMaxiZone = [];
    var cptrJS = 0;
    var j = 0;
    var compteurZonesTraversees = 0;
    var economieMaxiZoneActuelle = 0;
    var cptrBouclesWhile = 1;
    var totalEconomiseZoneArret = 0;
    var compteurZonesTraversees = 0;
    var totalEconomiseDerniereZone = 0;
     
    </script><script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
     
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    <script language="javascript">
    cptrBouclesWhile++;
    </script>
     
    	<input type="hidden" id="timestampArret" value="1286268552" />
    	<input type="hidden" id="totalZones" value="19" />
     
    	<input type="hidden" id="prixSecondeDerniereZone" value="3.8888888888889E-5" />
    	<input type="hidden" id="zoneTarif_debutDerniereZone" value="1257721200" />
     
    	<script language="javascript">
    	var prixSecondeDerniereZone = document.getElementById("prixSecondeDerniereZone").value ;
    	var totalZones = document.getElementById("totalZones").value ;
    	var timestampArret = document.getElementById("timestampArret").value ;
     
    	//La condition ci dessous permet de gérer le fait que l'arret se passe pendant la derniere zone (else) ou si il faut ajouter la valeur totale de la dernière valeur (succès du if).
    	if ((compteurZonesTraversees != 0) || (cptrBouclesWhile == totalZones-1) ){ 
    		var zoneTarif_debutDerniereZone = document.getElementById("zoneTarif_debutDerniereZone").value ;
    	}
    	else { //Sinon, le début de la zone est définit par le timestamp d'arret
    		var zoneTarif_debutDerniereZone = document.getElementById("timestampArret").value ;
    	}
    	//alert("cptrBouclesWhile: " +cptrBouclesWhile);
    	</script>
    	<script language="javascript">
    cptrBouclesWhile++;
    </script>
     
      <script language="javascript">
    function economies()
    {
    	var time = new Date();
    	var zoneTarif_finZone = (time.getTime()/1000);
     
    	var prixSecondeDerniereZone = document.getElementById("prixSecondeDerniereZone").value;
    	var tempsDansDerniereZone = zoneTarif_finZone - zoneTarif_debutDerniereZone;
    	var totalEconomiseDerniereZone = tempsDansDerniereZone * prixSecondeDerniereZone;		
     
    	var compteur = parseFloat(totalEconomiseZoneArret) + parseFloat(compteurZonesTraversees) + parseFloat(totalEconomiseDerniereZone);
    	//alert (compteur);
     
    	//Le 1000000 est pour arrondir avec un certain nombre de décimales, égales au nombre de zéros
    	document.getElementById('div_economies').value=Math.round(compteur*1000000) / 1000000;
    	setTimeout("economies()", 1000); // temps en milliseconde pour rafraichir la fonction
    	nombre();
    }
     
    //alert (parseFloat(totalEconomiseZoneArret) + parseFloat(compteurZonesTraversees) + parseFloat(totalEconomiseDerniereZone));
    </script>
     
    <!--Calcul du nombre de produit non utilisé-->
    <input id="econde" type="hidden" value="0.00013888888888889" />
     
     <script language="javascript">
    function nombre()
    {
    		var time = new Date();
    		var facteur = document.getElementById("econde").value;
    		var compteur = time.getTime()/1000 - timestampArret;
    		document.getElementById("Totale").value = Math.round(compteur * facteur*1000000) / 1000000;
    		setTimeout("nombre()", 1000);
    }
    </script>
     
     
    <body onload="economies()">
    <p class="nonCentre">
     
    Economies réalisées:
     
    <input style="background-color:rgb(123,164,46);"id="div_economies" size="10" value=""/> €
    <br />
    Produit non utilisé:
     
    			<input style="background-color:rgb(123,164,46);"id="Totale" size="10" value=""/> produits
    			</li></ul>
     
    <br><br>
    J'avoue que je n'avais pas pensé à regarder le code généré

    Merci de votre aide!

  4. #4
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Citation Envoyé par divad Voir le message
    Pour la requête, je veux bien te croire, elle n'est pas optimisée, mais je suppose que ça ferait ramer le script au départ uniquement, pas en permanence?
    d'après ton premier message
    J'ai développé un script qui permet de calculer en temps réel des économies réalisées en passant d'un produit A à un produit B.
    cela sous entend des requêtes permanentes vers le serveur non ?
    C'est donc un compteur qui tourne rapidement et qui donne une valeur en temps réel.
    le compteur tourne côté client ? Et que veux-tu dire par "compteur" ?
    Est-ce une boucle du genre
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    for (i=10000; i>0; i--)
        document.getElementById("compteur").innerHTML = i;

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    Le script tourne bien coté client.

    Le script demande en entrée: le nombre de fois que le produit était utilisé par jour et la date à laquelle ce produit n'a plus été utilisé.
    Pour cela, l'utilisateur les rentre via un form PHP.


    A partir de là, la page récupère en PHP dans la BDD ces deux valeurs, et les met en session.

    Et le script JS, sur chaque page, récupère ces valeurs (en BDD au lieu d'utiliser les sessions d'ailleurs ) et après, via quelques calculs (via une autre requête, elle aussi effectuée "uniquement" une fois par page), le script sort une valeur mise à jour toutes les X secondes.

    Je l'ai dit, c'est codé avec les pieds hein j'avais besoin d'un truc fonctionnel avant d'un truc optimisé

    Donc ce n'est pas un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    for (i=10000; i>0; i--)
    mais une boucle qui doit tourner en permanence tant que l'utilisateur est sur ma page.
    A titre d'exemple, c'est qqchose de ce genre http://www.salaire-mensuel.com/salai...kozy-19331.php mais avec qques calculs en plus (l'histoire des zones, etc)


    Merci!!!!!

  6. #6
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    un truc bizarre dans ton code généré

    il commence par un div
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="sidebar">

    et c'est uniquement vers la fin que l'on voit apparaître la balise <body>

    Ensuite je pense que tu gagnerais en lisibilité si tu séparais le code HTML du code JS et puis il y a redondance avec ce bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script language="javascript">
    cptrBouclesWhile++;
    </script>

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    niveau cohérence avec le Body c'est peut etre parce que le code est physiquement sur une autre page que celle que je vous ai donné. En gros je vais un include de ce code.

    Pour la redondance... en effet! Je tente de trouver la solution!

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    Dites moi...

    cptrBouclesWhile++;
    ça existe en JS ça? pour incrémenter la valeur de cptrBouclesWhile?
    Pourquoi il me l'écrit... je ne veux pas que ça s'affiche, je veux que ça soit executé!

    Et sinon, le fait d'utiliser setTimeout est une bonne idée? Le souci de ressources ne viendrait pas de ça?

    Une idée de logiciel sinon qui me permettrait de savoir quel élément consomme toute cette charge CPU?

    Merci

  9. #9
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par divad
    cptrBouclesWhile++;
    ça existe en JS ça? pour incrémenter la valeur de cptrBouclesWhile?
    Ben... oui
    Citation Envoyé par divad
    Pourquoi il me l'écrit... je ne veux pas que ça s'affiche, je veux que ça soit executé!
    Pour l'exécuter, il faut bien l'inclure dans le code (donc l'écrire) non ? A moins que tu n'espères que ton code JavaScript ne soit exécuté par PHP...

    Pour le reste, désolé, mais ton code est franchement lourd, ce qui le rend compliqué à lire et donc à comprendre.
    Comme te l'a fait remarquer Auteur, tu gagnerais à séparer le JavaScript du HTML.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    Bon déjà, merci beaucoup de ne pas me laisser tomber

    Bon, si pour incrémenter la variable ça se passe bien comme ça, alors tant mieux

    Ok pour l'affichage en cas d'execution

    Que mon code soit trop lourd, c'est certain! Qu'il soit peu comprehensible........ il l'est devenu pour moi aussi Mais de là à séparer html et JS.... ben là je sais pas faire

    Donc si je comprends bien, il n'y a pas de fonction utilisée, connue pour prendre beaucoup de ressources?

    Merci!

    David

Discussions similaires

  1. Pas trop de ressources système pour un script windows (MS-DOS) ?
    Par ptiscab dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 13/03/2007, 13h16
  2. envoi de données ressources a un server oracle (scripting bash)
    Par avogadro dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 25/12/2006, 01h25
  3. Réponses: 2
    Dernier message: 15/10/2006, 12h52
  4. [Débutant] Problème script ressource tuto
    Par MaN@eDeN dans le forum Windows
    Réponses: 8
    Dernier message: 08/03/2006, 23h20
  5. Problème avec le script de ressources (cf tuto)
    Par MaN@eDeN dans le forum Windows
    Réponses: 1
    Dernier message: 08/03/2006, 00h41

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