Bonsoir à tous,
j'ai un petit problème de performance sur ie sur l'appel d'un code php en jquery, après une journée de test et de recherche sur ce bon vieux google,
J'ai décidé de faire appel à vous
sur firefox, ca prends +- 2à5 sec (c est a dire le temps du traitement 4000 entree)
sur ie il me fait l'alerte du html au même moment que l'affichage de firefox, puis il se fige pendant au moins 20-30 seconde avant d'afficher la page (dans une div)
voici le code (je l'ai tester sur une page a part, pour voir si ce n etait pas le site en générale qui fessait laggué).
Voici l'appel de la page
J'ai tester avec append, html et innerhtml
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 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>ECHOESYS</title> <link rel="stylesheet" href="css/style_menu.css" type="text/css"> <link rel="stylesheet" href="css/architecture.css" type="text/css"> <link rel="stylesheet" href="css/style_provisoire.css" type="text/css"> <link rel="stylesheet" href="css/style_provisoire_seb.css" type="text/css"> <link rel="stylesheet" href="css/style_form.css" type="text/css"> <link rel="stylesheet" href="css/style_listing.css" type="text/css"> <link rel="stylesheet" href="css/role/style.css" type="text/css"> <link rel="stylesheet" href="css/style_dashboard.css" type="text/css"> <!--[if IE]> <link href="css/ie/styleie.css" rel="stylesheet" type="text/css" /> <![endif]--> <script type="text/javascript" src="js/jquery/jquery.js"></script> <script type="text/javascript" src="js/jquery/jquery-ui-1.8.custom.min.js"></script> <script type="text/javascript" src="js/jquery.easing.1.3.js"></script> </head> <script language="javascript" type="text/javascript"> $(document).ready(function(){ createView() }) function createView(){ $('#view_role').html('Loading <img src="./img/loader.gif" width="16" height="16" />'); var parametres = "methode=construct_view"; //AJAX("./requete/roles.php",parametres,createView2); $.ajax({ // ajax type: 'POST', url: "./requete/roles.php", data: parametres, dataType: 'html', cache: false, // pas de mise en cache success: function(html){ createView2(html); }, error: function(xhr, ajaxOptions, thrownError){ alert('erreur serveur : '+xhr.status); } }); } function createView2(html){ alert(html) $('#view_role').empty(); $('#view_role').append(html); } </script> <body> <div id="view_role"></div> </body> </html>
Les 3 réagissent pareil
celle du php
Quelqu'un serait-il me dire le pourquoi du comment?
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 <?php session_start(); //indique que le type de la réponse renvoyée au client sera du Texte header("Content-Type: text/plain ; charset=utf-8"); //anti Cache pour HTTP/1.1 header("Cache-Control: no-cache , private"); //anti Cache pour HTTP/1.0 header("Pragma: no-cache"); require('../classes/Roles.php'); ?> <?php $roles = new Roles(); if(isset($_REQUEST["methode"])) { if($_REQUEST["methode"] == "construct_view"){ $select_listingByPre2 = $roles->select_listingByPre2(); $tab_rule = $select_listingByPre2["reponse"]; $list_catrule = $roles->list_catrule(); $count_catrule = $list_catrule["count"]; $list_grole = $roles->list_grole(); $count_grole = $list_grole["count"]; $role = ''; $role .= '<div id="_roleGroup">'; for($z = 0 ; $z<$count_grole ; $z++){ $grole_pre = $list_grole["reponse"][$z]["pre"]; $grole_nom = $list_grole["reponse"][$z]["nom"]; $role .= '<input type="checkbox" name="'.$grole_pre.'" id="'.$grole_pre.'" checked="checked"/><span class="'.$grole_pre.'_titre">'.$grole_nom.'</span>'; if($z%2 == 0 && $z>0) $role .= '<br/>'; } $role .= '</div>'; $role .= '<br/>'; $role .= '<input id="AfficheGroupe" type="button" value="Group enabled"/>'; $role .= '<br/><br/>'; $role .= '<table border="0" cellspacing="0" cellpadding="0" id="table_role">'; $role .= '<tr>'; $role .= '<td class="nom_rule"> </td>'; for($ii = 0 ; $ii<$count_grole ; $ii++){ $grole_pre = $list_grole["reponse"][$ii]["pre"]; $list_role = $roles->list_role($grole_pre); $count_role = $list_role["count"]; for($iii = 0 ; $iii<$count_role ; $iii++){ $role_pre = $list_role["reponse"][$iii]["pre"]; $role .= '<td class="'.$grole_pre.'_title" valign="bottom">'; $role .= '<img src="./img/role/'.$grole_pre.$role_pre.'.png" width="40" height="200" id="table_roleGroup" />'; $role .= '</td>'; } } for($i = 0 ; $i<$count_catrule ; $i++){ $pair =0; $catrule_nom = $list_catrule["reponse"][$i]["nom"]; $catrule_pre = $list_catrule["reponse"][$i]["pre"]; $role .= '<tr class="cat" id="'.$catrule_pre.'">'; $role .= '<td class="nom_rule role_titre1">'.$catrule_nom.'</td>'; for($ii = 0 ; $ii<$count_grole ; $ii++){ $grole_pre = $list_grole["reponse"][$ii]["pre"]; $list_role = $roles->list_role($grole_pre); $count_role = $list_role["count"]; for($iii = 0 ; $iii<$count_role ; $iii++){ $role .= '<td class="'.$grole_pre.'"> </td>'; } } $role .= '</tr>'; $list_grule = $roles->list_grule($catrule_pre); $count_grule = $list_grule["count"]; for($j = 0 ; $j<$count_grule ; $j++){ $grule_nom = $list_grule["reponse"][$j]["nom"]; $grule_pre = $list_grule["reponse"][$j]["pre"]; $list_rule = $roles->list_rule($catrule_pre,$grule_pre); $count_rule = $list_rule["count"]; $role .= '<tr class="group cat_'.$catrule_pre.'">'; $role .= '<td class="nom_rule role_titre2">'.$grule_nom.'</td>'; for($ii = 0 ; $ii<$count_grole ; $ii++){ $grole_pre = $list_grole["reponse"][$ii]["pre"]; $list_role = $roles->list_role($grole_pre); $count_role = $list_role["count"]; for($iii = 0 ; $iii<$count_role ; $iii++){ $role .= '<td class="'.$grole_pre.'"> </td>'; } } $role .= '</tr>'; for($k = 0 ; $k<$count_rule ; $k++){ $rule_nom = $list_rule["reponse"][$k]["nom"]; $rule_pre = $list_rule["reponse"][$k]["pre"]; if($pair%2 == 0){ $role .= '<tr class="pair cat_'.$catrule_pre.'">'; }else{ $role .= '<tr class="impair cat_'.$catrule_pre.'">'; } $role .= '<td class="nom_rule role_titre3">'.$rule_nom.'</td>'; for($l = 0 ; $l<$count_grole ; $l++){ $grole_pre = $list_grole["reponse"][$l]["pre"]; $list_role = $roles->list_role($grole_pre); $count_role = $list_role["count"]; for($m = 0 ; $m<$count_role ; $m++){ $role_pre = $list_role["reponse"][$m]["pre"]; $rule = $catrule_pre.'-'.$grule_pre.'-'.$rule_pre.'-'.$grole_pre.'-'.$role_pre; $listing_nom = $rule; $listing_val = $tab_rule[$rule]; if($listing_val == 1){ $val = ' checked="checked"'; }else{ $val = ''; } $role .= '<td align="center" class="'.$grole_pre.'">'; $role .= '<input type="checkbox" name="'.$listing_nom.'" id="'.$listing_nom.'"'.$val.'/>'; $role .= '</td>'; } } $role .= '</tr>'; $pair ++; } } } $role .= '</table>'; echo $role; } } ?>
Merci d'avance
Partager