salut ,
j'ai réalisé une application de chat mais j'ai un petit problème : lorsque j ecri un message qui contient des caractères spéciaux ou accentués ca s envoi pas et les é sont remplacés par ?
je ne sais pas c koi le problème:cry:
Version imprimable
salut ,
j'ai réalisé une application de chat mais j'ai un petit problème : lorsque j ecri un message qui contient des caractères spéciaux ou accentués ca s envoi pas et les é sont remplacés par ?
je ne sais pas c koi le problème:cry:
Problème d'encodage ?
Montre le code d'envoi et de réception du message.
pour le code d'envoi le voila:c'est de l'Ajax
et pour le code de reception :Code:
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 <%@ Page %> <%@ Import Namespace="DBF" %> <%@ Import Namespace="System.Web"%> <%@ Import Namespace="System.Data.SqlClient"%> <%@ Import Namespace="System.Data"%> <%@ Import Namespace="System"%> <script language="C#" runat="server"> public string setMsg() { string str = "",idmsg = "", req = ""; str=""; string msg = Request["msg"].ToString(); string pseudoUser = Session["nom"].ToString(); DatabaseFacade MyFacade = new DatabaseFacade();//DatabaseFacade : c'est une classe pour etablir la conexion avec sql server2000 DataTable dt = null; req ="SELECT * FROM Discussion where EtatDisc=1"; MyFacade.ExecuteSqlRequest(req, out dt); // appel de la requête int Max = dt.Rows.Count; if(Max!=0) { //DateTime heure= new DateTime(); //heure=heure.Now(); idmsg = dt.Rows[0]["IdDisc"].ToString(); str += dt.Rows[0]["MessageDisc"].ToString() + "<BR>" + pseudoUser + " dit: " + msg + "</font>"; req = "UPDATE Discussion SET MessageDisc ='" + str + "' WHERE IdDisc=" + idmsg + ""; MyFacade.ExecuteSqlRequest(req); } else { str += dt.Rows[0]["MessageDisc"].ToString() + "<TR><TD class=\"data3\">" + pseudoUser + ":</TD><TD class=\"data2\">" + msg + "<TD></TR>"; req = "UPDATE Discussion SET MessageDisc ='" + str + "' WHERE IdDisc=" + idmsg + ""; } MyFacade.Dispose(); str+=""; return str; } // </script> <%=setMsg()%>
Code:
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 <%@ Page %> <%@ Import Namespace="DBF" %> <%@ Import Namespace="System.Web"%> <%@ Import Namespace="System.Data.SqlClient"%> <%@ Import Namespace="System.Data"%> <%@ Import Namespace="System"%> <script language="C#" runat="server"> public string getMsg() { string str=""; string idUser = Session["IdMembre"].ToString(); DatabaseFacade MyFacade = new DatabaseFacade(); DataTable dt = null; string req ="SELECT * FROM Discussion where EtatDisc=1"; MyFacade.ExecuteSqlRequest(req, out dt); // appel de la requête int Max = dt.Rows.Count; if(Max!=0) { str += dt.Rows[0]["MessageDisc"].ToString(); } else { str="walou"; DatabaseFacade MyFacade1 = new DatabaseFacade(); DataTable dt1 = null; req="SELECT * FROM Membre_Statut WHERE EtatMem='1' AND StatutMem='1' AND (IdMembre <>'"+ idUser +"')"; MyFacade1.ExecuteSqlRequest(req, out dt1); Max = dt1.Rows.Count; if(Max!=0) { if(dt1.Rows[0]["RoleMem"].ToString()=="1") { req ="INSERT INTO Disscussion (MessageDisc) VALUES ('') "; MyFacade.ExecuteSqlRequest(req); //* appel de la requête } } MyFacade1.Dispose(); } MyFacade.Dispose(); return str; } </script> <%=getMsg()%>