en sachant aussi que l'id de la popup est aussi l'id du destinataire que je dois donc ensuit envoyer vers php
en sachant aussi que l'id de la popup est aussi l'id du destinataire que je dois donc ensuit envoyer vers php
C'est bon voici ce que je te propose pour le moment. crée 4 fichier : style.css , graphique.html , script.js et serveur.php. Tu mets ces fichiers dans un même dossier.
- Pour graphique.html voici mon petit code : remplace /CHEMIN JQUERY CHEZ TOI/ par le vrai chemin du jquery chez toi
L'id de chaque membre est stocké dans l'attribut for de la balise a
Code html : 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 <!DOCTYPE html> <html> <head> <title>Messagerie</title> <script type="text/javascript" src="/CHEMIN JQUERY CHEZ TOI/"></script> <script type="text/javascript" src="box.js"></script> <link rel="stylesheet" type="text/css" href="box.css"> </head> <body> <div id="conteneur_list_member"> <div style="display: block;padding: 10px 0px;background: #636769; color : #fff;text-align: center;">Liste des membres</div> <div id="all_member"> <a href="" for="20" class="member">Philippe</a> <a href="" for="2" class="member">Claude</a> <a href="" for="17" class="member">Jean</a> </div> </div> <div id="conteneur_pop"></div> </body> </html>
- Pour style.css voici :
Code css : 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 form{ width: 100%; height: 100%; border: 1px solid rgb(100,100,100); overflow: hidden; position: relative; padding: 0px; } form div:nth-child(1){ display: block; padding: 10px 0px; color : #fff; background: #1d2a41; text-align: center; font-size: 16px; font-weight: 600; position: absolute; top : 0px; left: 0px; width: 100%; } .displayer_all_sms{ position: absolute; top : 38px; left: 0px; right: -10px; bottom: 70px; background: #f3f3f3; width: 103%; overflow-x: hidden; overflow-y: auto; } form textarea{ position: absolute; bottom: 0px; left : 0px; width: 100%; height: 40px; padding: 5px; border : none; border-top: 1px solid rgb(100,100,100); } label{ display: block; } .every_box{ display: inline-block; padding: 10px; margin: 5px; margin-left: 5%; background: #1e7293; color: #fff; } #conteneur_list_member{ display: block; width: 20%; position: fixed; top : 0px; bottom: 0px; left :0px; background: #e6e6e6; } #all_member{ position: absolute; top : 40px; left : 0px; bottom: 0px; right: 0px; overflow-y: auto; overflow-x: hidden; } .member{ display: block; width: 90%; padding: 10px 0px; border-bottom : 1px solid #b4bbbf; margin: 3px auto; text-decoration: none; color : #787575; text-align: center; font-weight: 600; } #conteneur_pop{ display: block;position: fixed; bottom: 5px;right: 0px; width: 75%; height: 40px; } .pop_bloc{ display: block; height: 300px; width: 250px; position: absolute; bottom: 0px; right : 10px; }
- Pour script.js
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 $(function(){ var member = $(".member"),popDisplay = {},position = 0; member.on("click",function(e){ if (!e.preventDefault()) { e.target; } var id_user = $(this).attr("for"),user_name = $(this).text(); if (typeof popDisplay[""+id_user] == "undefined") { popDisplay[""+id_user] = position; position++; add_new_pop(user_name); } }) }) function add_new_pop(title_){ var div = $("<div>"),receptor_pop_element = div.clone().attr("class","pop_bloc"),rightPop,all_pop_display = $("#conteneur_pop .pop_bloc").length; rightPop = (250+20)*all_pop_display; var formBalise,title_pop,displayer_pop_box,zone_text; formBalise = $("<form>"); title_pop = div.clone().text(title_); displayer_pop_box = div.clone().attr("class","displayer_all_sms"); zone_text = $("<textarea>").attr("placeholder","Votre message"); formBalise.append(title_pop).append(displayer_pop_box).append(zone_text); if (rightPop == 0) {rightPop = 10;} receptor_pop_element.css({right : rightPop+"px"}).append(formBalise); $("#conteneur_pop").append(receptor_pop_element); send_box(zone_text,displayer_pop_box); } function send_box(zone_sms,displayer){ zone_sms.on("keydown",function(e){ if (e.keyCode == 13) { if (!e.preventDefault()) { e.target; } // tu mets ton code a executé a l'appui de l'ENTRER ici. pour moi j'envoi le message // en premier lieu je recupère dans une variable text_sms le contenu de mon textarea et je vérifie si c'est vide ou pas var text_sms = $(this).val(),all_key = text_sms.split(" "),isEmpty = true; $(this).val(""); for (var i = all_key.length - 1; i >= 0; i--) { if (all_key[i] != "") { isEmpty = false; } } if (!isEmpty) { /* - si ce n'est pas vide on continue - on envoi le texte a un notre fichier php pour etre sauvegarder dans une data base */ $.ajax({ url : "serveur.php", type: "POST", data: {text_box : text_sms}, dataType: "JSON", success: function(resultat){ if (resultat.end) { // si le message est envoi au fichier php on ajoute le texte a notre displayer_all_box pour l'afficher a l'écran displayer.append("<label><span class='every_box'>"+text_sms+"</span></label>"); } else{ alert("message non envoyé"); } } }); } else{ alert("Zone Vide"); } } }) }
- Enfin serveur.php :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <?php header('Content-Type: application/json'); $end = false; if (isset($_POST["text_box"])) { $text_du_message = htmlspecialchars($_POST["text_box"]); // Tu traite le message et tu sauvegarde dans une base de donnée si tu en as besoin. $end = true; } echo json_encode(array("end" => $end)); ?>
Si c'est bon je passe a comment verifier et afficher les nouveaux messages pour chaque pop.
FIN EXECUTE VOIR
L'ordinateur ne fait pas ce qu'on veut qu'il fasse mais il fait ce qu'on lui demande de faire .
tous est bon
ok c'est quoi tes column de ta data base??
L'ordinateur ne fait pas ce qu'on veut qu'il fasse mais il fait ce qu'on lui demande de faire .
table chats
id en auto increment
user_id qui est id de l'expediteur
user_to qui est l'id du destinaire
message donc la liste des messages
sent_to qui est la date d'envoi du message en timestamps
Salut excuise moi pour ce silence mais mon écran avait un problème je viens de reparer. On continue notre programme. Voici les changements :
- Pas de changement pour le ficher graphique.html. Mais tu charge la liste des utilisateurs dans la zone liste des membres sous cette forme <a href="" for="id_member">Pseudo</a>. J'ai pas faire le chargement des membres chez moi. donc complet. tu remplace /CHEMIN DE JQUERY CHEZ TOI/ par le vrai chemin de jQuery chez toi
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 <!DOCTYPE html> <html> <head> <title>Messagerie</title> <script type="text/javascript" src="/CHEMIN DE JQUERY CHEZ TOI/"></script> <script type="text/javascript" src="box.js"></script> <link rel="stylesheet" type="text/css" href="box.css"> </head> <body> <div id="conteneur_list_member"> <div style="display: block;padding: 10px 0px;background: #636769; color : #fff;text-align: center;">Liste des membres</div> <div id="all_member"> <a href="" for="20" class="member">Philippe</a> <a href="" for="2" class="member">Claude</a> <a href="" for="17" class="member">Jean</a> </div> </div> <div id="conteneur_pop"></div> </body> </html>
-script.js : beaucoup de changement voici le script :
- server.php beaucoup de changement. pour les request mysql j'ai utiliser PDO parce sur mon poste j'utilise PHP7 donc les requests mysql_**** ne marche pas. Avant que tu ne commence par l'utilisé le programme crée une partie de connexion (genre tu fais un petit formulaire demandant un pseudo a utilisateur maintenant une fois le pseudo envoyé tu enrégistre dans une table user et tu stock son id dans une session $_SESSION["user"]). Après, tu change la valeur de de la variable ($user_connect = 10) => ($user_connect = $_SESSION["user"]). Enfin crée une table tchat_live avec les columns (id[int], id_sender[int], id_recev[int], body_box[text], dure[int], temps[varchar], etat_box[varchar]); et tu change les données de la connexion a la base de données ($db = new PDO("mysql:host=localhost;dbname=tchat","root","root")).
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 $(function(){ var member = $(".member"),popDisplay = {},position = 0; member.on("click",function(e){ if (!e.preventDefault()) { e.target; } var id_user = $(this).attr("for"),user_name = $(this).text(); if (typeof popDisplay[""+id_user] == "undefined") { popDisplay[""+id_user] = position; position++; add_new_pop(user_name,id_user); } }) }) function add_new_pop(title_,id_user_rece){ var div = $("<div>"),receptor_pop_element = div.clone().attr("class","pop_bloc"),rightPop,all_pop_display = $("#conteneur_pop .pop_bloc").length; rightPop = (250+20)*all_pop_display; var formBalise,title_pop,displayer_pop_box,zone_text; formBalise = $("<form>"); title_pop = div.clone().text(title_); displayer_pop_box = div.clone().attr("class","displayer_all_sms"); zone_text = $("<textarea>").attr("placeholder","Votre message"); formBalise.append(title_pop).append(displayer_pop_box).append(zone_text); if (rightPop == 0) {rightPop = 10;} receptor_pop_element.css({right : rightPop+"px",background : "#fff"}).append(formBalise); $("#conteneur_pop").append(receptor_pop_element); send_box(zone_text,displayer_pop_box,id_user_rece); load_box(id_user_rece,displayer_pop_box); } function send_box(zone_sms,displayer,id){ zone_sms.on("keydown",function(e){ if (e.keyCode == 13) { if (!e.preventDefault()) { e.target; } // tu mets ton code a executé a l'appui de l'ENTRER ici. pour moi j'envoi le message // en premier lieu je recupère dans une variable text_sms le contenu de mon textarea et je vérifie si c'est vide ou pas var text_sms = $(this).val(),all_key = text_sms.split(" "),isEmpty = true; $(this).val(""); for (var i = all_key.length - 1; i >= 0; i--) { if (all_key[i] != "") { isEmpty = false; } } if (!isEmpty) { /* - si ce n'est pas vide on continue - on envoi le texte a un notre fichier php pour etre sauvegarder dans une data base */ $.ajax({ url : "serveur.php", type: "POST", data: {text_box : text_sms,user_recev : id}, dataType: "JSON", success: function(resultat){ if (resultat.end) { // si le message est envoi au fichier php on ajoute le texte a notre displayer_all_box pour l'afficher a l'écran displayer.append("<label for='"+resultat.box_send_id+"'><span class='every_box connect_user'>"+text_sms+"</span><span class='stop block'></span></label>"); displayer.scrollTop(displayer.height()); if (displayer.find("label").length == 1 ) { setInterval(function(){ auto_control_box(id,displayer); },5000); } } else{ alert("message non envoyé"); } } }); } } }) } function auto_control_box(id,currentPopDisplay){ var all_label = currentPopDisplay.find("label"),t = all_label.length,last_box_of_this_popDisplay = 0; if (t != 0) { t--; last_box_of_this_popDisplay = all_label.eq(t).attr("for"); } $.ajax({ url : "serveur.php", type: "POST", data: {get_all_box : id,last_box_display : last_box_of_this_popDisplay}, dataType: "JSON", success: function(resultat){ if (resultat.end) { if (resultat.new_box_number != 0) { for (var i = resultat["dataBox"].length - 1; i >= 0; i--) { var current = resultat["dataBox"][i]; currentPopDisplay.append("<label for='"+current.box_id+"'><span class='every_box no_connect'>"+current.box+"</span><span class='stop block'></span></label>"); } currentPopDisplay.scrollTop(currentPopDisplay.height()); } } } }); } function load_box(id,currentPopDisplay){ $.ajax({ url : "serveur.php", type: "POST", data: {load_box : id}, dataType: "JSON", success: function(resultat){ if (resultat.end) { for (var i = resultat["dataBox"].length - 1; i >= 0; i--) { var current = resultat["dataBox"][i]; var dispo = "connect_user"; if (current.type == 2) {dispo = "no_connect";} currentPopDisplay.append("<label for='"+current.box_id+"'><span class='every_box "+dispo+"'>"+current.box+"</span><span class='stop block'></span></label>"); } currentPopDisplay.scrollTop(currentPopDisplay.height()); setInterval(function(){ auto_control_box(id,currentPopDisplay); },5000); } } }); }
Pour ce code ("mysql:host=localhost;dbname=tchat","root","root") => ( mysql_connect("localhost","root","root"); mysql_select_db("tchat") Mais si tu remplace la première par la deuxième dans le code suivant ça ne va pas fonctionner directement. Donc change juste ce que je t'ai demandé et tout ira bien. Voici le code :
- serveur.php :
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 <?php header('Content-Type: application/json'); session_start(); try { $db = new PDO("mysql:host=localhost;dbname=tchat","root","root"); } catch (Exception $e) { $db = false; } $end = false; $answers = array(); $user_connect = 10; $add_box =$db->prepare("INSERT INTO tchat_live(id_sender,id_recev,body_box,dure,temps,etat_box) VALUES(?,?,?,?,?,?)"); $get_box_id = $db->prepare("SELECT * FROM tchat_live WHERE id_sender=? AND id_recev=? ORDER BY id DESC"); if (isset($_POST["text_box"]) && isset($_POST["user_recev"])) { $text_du_message = htmlspecialchars($_POST["text_box"]); $user_recev = htmlspecialchars($_POST["user_recev"]); if (preg_match("#^[0-9]+$#", $user_recev) && $user_recev > 0 && $db) { $add_box -> execute(array( $user_connect, $user_recev, $text_du_message, @time(), @date("d-M-Y"), '0' )); $get_box_id -> execute(array($user_connect,$user_recev)); $get_box_id -> setFetchMode(PDO::FETCH_ASSOC); $box_id = $get_box_id -> fetch(); $answers["box_send_id"] = $box_id["id"]; $end = true; } } if (isset($_POST["get_all_box"]) && isset($_POST["last_box_display"])) { $id_user_box_verif = htmlspecialchars($_POST["get_all_box"]); $id_last_box_display = htmlspecialchars($_POST["last_box_display"]); $new = 0; if (preg_match("#^[0-9]+$#", $id_user_box_verif)) { if ($id_user_box_verif != 0) { $get_all = $db->prepare("SELECT * FROM tchat_live WHERE id_sender=? and id_recev=? ORDER BY id DESC"); $get_all -> execute(array($id_user_box_verif,$user_connect)); } else{ $get_all = $db->prepare("SELECT * FROM tchat_live WHERE id_recev=? ORDER BY id DESC"); $get_all -> execute(array($user_connect)); } $get_all -> setFetchMode(PDO::FETCH_ASSOC); while($ans = $get_all -> fetch()) { if ($ans["id"] != null) { $v = false; if (($id_last_box_display != 0 && $id_last_box_display < $ans["id"]) || $id_last_box_display == 0) { $v = true; } if ($v) { if (!isset($answers["new_box_user"])) { $answers["new_box_user"] = array(); } $t = 1; $new_box_user = array( "id_sender" => $id_user_box_verif, "box" => $ans["body_box"], "box_id" => $ans["id"], ); array_push($answers["new_box_user"], $new_box_user); $new++; } } } $end = true; } $answers["new_box_number"] = $new; } if (isset($_POST["load_box"])) { $us = htmlspecialchars($_POST["load_box"]); if (preg_match("#^[0-9]+$#", $us) && $us > 0) { $get_all = $db->prepare("SELECT * FROM tchat_live WHERE (id_sender=? and id_recev=?) OR (id_sender=? and id_recev=?) ORDER BY id DESC"); $get_all -> execute(array($us,$user_connect,$user_connect,$us)); $get_all -> setFetchMode(PDO::FETCH_ASSOC); while($ans = $get_all -> fetch()) { if ($ans["id"] != null) { if (!isset($answers["dataBox"])) { $answers["dataBox"] = array(); } $t = 1; if ($ans["id_sender"] != $user_connect) { $t = 2; } $new_box_user = array( "id_sender" => $us, "box" => $ans["body_box"], "box_id" => $ans["id"], "type" => $t, ); array_push($answers["dataBox"], $new_box_user); } } $end = true; } } $answers["end"] = $end; echo json_encode($answers); ?>
- Pour fini style.css :
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 form{ width: 100%; height: 100%; border: 1px solid rgb(100,100,100); overflow: hidden; position: relative; padding: 0px; } form div:nth-child(1){ display: block; padding: 10px 0px; color : #fff; background: #1d2a41; text-align: center; font-size: 16px; font-weight: 600; position: absolute; top : 0px; left: 0px; width: 100%; } .displayer_all_sms{ position: absolute; top : 38px; left: 0px; right: -10px; bottom: 70px; background: #f3f3f3; width: 103%; overflow-x: hidden; overflow-y: auto; } form textarea{ position: absolute; bottom: 0px; left : 0px; width: 100%; height: 40px; padding: 5px; border : none; border-top: 1px solid rgb(100,100,100); } label{ display: block; } .every_box{ display: inline-block; padding: 10px; margin: 5px; max-width: 60%; } #conteneur_list_member{ display: block; width: 20%; position: fixed; top : 0px; bottom: 0px; left :0px; background: #e6e6e6; } #all_member{ position: absolute; top : 40px; left : 0px; bottom: 0px; right: 0px; overflow-y: auto; overflow-x: hidden; } .member{ display: block; width: 90%; padding: 10px 0px; border-bottom : 1px solid #b4bbbf; margin: 3px auto; text-decoration: none; color : #787575; text-align: center; font-weight: 600; } #conteneur_pop{ display: block;position: fixed; bottom: 5px;right: 0px; width: 75%; height: 40px; } .pop_bloc{ display: block; height: 300px; width: 250px; position: absolute; bottom: 0px; right : 10px; } .connect_user{ float: right; margin-right: 5%; background: #7cbfda; color: #000; } .no_connect{ float: left; margin-left: 5%; background: #1e7293; color: #fff; } .block{ display: block; } .stop{ clear: both; }
FIN EXECUTE VOIR
L'ordinateur ne fait pas ce qu'on veut qu'il fasse mais il fait ce qu'on lui demande de faire .
merci beaucoup je vais tester ça
c'est super ça fonctionne aprés il y a juste un petit truc aprés je pense que c'est plutot en js si un membre a par exemple 10 contacts et il parle aux 10 les popups s'affiche en dehors de la fenetre, j'ai des fonctions mais je vois pas comment les adaptés pour calculé le nombre de popups ouvert, et a partir d'un certain chiffre, que d'autre s'ouvre pas si tu vois ce que je veux dire,
et aussi fermer ou reduire les popups
Demain je te corrige tout ça. gestion du nombre de pop afficher, reduire et fermer. Après ça il n'y a plus rien??
FIN EXECUTE VOIR
L'ordinateur ne fait pas ce qu'on veut qu'il fasse mais il fait ce qu'on lui demande de faire .
probleme du reload la console me dit
Code : Sélectionner tout - Visualiser dans une fenêtre à part TypeError: resultat.dataBox is undefined[En savoir plus] box.js:97:15
voila le js donc :
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 $(function(){ var member = $(".member"),popDisplay = {},position = 0; member.on("click",function(e){ if (!e.preventDefault()) { e.target; } var id_user = $(this).attr("for"),user_name = $(this).text(); if (typeof popDisplay[""+id_user] == "undefined") { popDisplay[""+id_user] = position; position++; add_new_pop(user_name,id_user); } }) }) function add_new_pop(title_,id_user_rece){ var div = $("<div>"),receptor_pop_element = div.clone().attr("class","pop_bloc"),rightPop,all_pop_display = $("#conteneur_pop .pop_bloc").length; rightPop = (250+20)*all_pop_display; var formBalise,title_pop,displayer_pop_box,zone_text; formBalise = $("<form>"); title_pop = div.clone().text(title_); displayer_pop_box = div.clone().attr("class","displayer_all_sms"); zone_text = $("<textarea>").attr("placeholder","Votre message"); formBalise.append(title_pop).append(displayer_pop_box).append(zone_text); if (rightPop == 0) {rightPop = 10;} receptor_pop_element.css({right : rightPop+"px",background : "#fff"}).append(formBalise); $("#conteneur_pop").append(receptor_pop_element); send_box(zone_text,displayer_pop_box,id_user_rece); load_box(id_user_rece,displayer_pop_box); } function send_box(zone_sms,displayer,id){ zone_sms.on("keydown",function(e){ if (e.keyCode == 13) { if (!e.preventDefault()) { e.target; } // tu mets ton code a executé a l'appui de l'ENTRER ici. pour moi j'envoi le message // en premier lieu je recupère dans une variable text_sms le contenu de mon textarea et je vérifie si c'est vide ou pas var text_sms = $(this).val(),all_key = text_sms.split(" "),isEmpty = true; $(this).val(""); for (var i = all_key.length - 1; i >= 0; i--) { if (all_key[i] != "") { isEmpty = false; } } if (!isEmpty) { /* - si ce n'est pas vide on continue - on envoi le texte a un notre fichier php pour etre sauvegarder dans une data base */ $.ajax({ url : "serveur.php", type: "POST", data: {text_box : text_sms,user_recev : id}, dataType: "JSON", success: function(resultat){ if (resultat.end) { // si le message est envoi au fichier php on ajoute le texte a notre displayer_all_box pour l'afficher a l'écran displayer.append("<label for='"+resultat.box_send_id+"'><span class='every_box connect_user'>"+text_sms+"</span><span class='stop block'></span></label>"); displayer.scrollTop(displayer.height()); if (displayer.find("label").length == 1 ) { setInterval(function(){ auto_control_box(id,displayer); },1000); } } else{ alert("message non envoyé"); } } }); } } }) } function auto_control_box(id,currentPopDisplay){ var all_label = currentPopDisplay.find("label"),t = all_label.length,last_box_of_this_popDisplay = 0; if (t != 0) { t--; last_box_of_this_popDisplay = all_label.eq(t).attr("for"); } $.ajax({ url : "serveur.php", type: "POST", data: {get_all_box : id,last_box_display : last_box_of_this_popDisplay}, dataType: "JSON", success: function(resultat){ if (resultat.end) { if (resultat.new_box_number != 0) { for (var i = resultat["dataBox"].length - 1; i >= 0; i--) { var current = resultat["dataBox"][i]; currentPopDisplay.append("<label for='"+current.box_id+"'><span class='every_box no_connect'>"+current.box+"</span><span class='stop block'></span></label>"); } currentPopDisplay.scrollTop(currentPopDisplay.height()); } } } }); } function load_box(id,currentPopDisplay){ $.ajax({ url : "serveur.php", type: "POST", data: {load_box : id}, dataType: "JSON", success: function(resultat){ if (resultat.end) { for (var i = resultat["dataBox"].length - 1; i >= 0; i--) { var current = resultat["dataBox"][i]; var dispo = "connect_user"; if (current.type == 2) {dispo = "no_connect";} currentPopDisplay.append("<label for='"+current.box_id+"'><span class='every_box "+dispo+"'>"+current.box+"</span><span class='stop block'></span></label>"); } currentPopDisplay.scrollTop(currentPopDisplay.height()); setInterval(function(){ auto_control_box(id,currentPopDisplay); },1000); } } }); }
ça correspond a ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part for (var i = resultat["dataBox"].length - 1; i >= 0; i--) {
ce problème n'est pas du côte javascript mais du php. là où j'ai utilisé ( $answers["dataBox"]) dans serveur.php tu as changer??
FIN EXECUTE VOIR
L'ordinateur ne fait pas ce qu'on veut qu'il fasse mais il fait ce qu'on lui demande de faire .
j'ai fait tous ce que tu m'as dis sauf qu'a $user_connect j'ai mis $_SESSION["id_user"] au lieu de $_SESSION["user"]
ça une importante ? aprés j'ai tous modifier ce que tu m'as dis
Merci a paoli pour son aide, le sujet est résolu
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager