Documente Academic
Documente Profesional
Documente Cultură
Messaging Cloud
Profesor, Elev,
- Crețu Laurențiu Vasile
Clasa a XII-a RB
2020
Messaging Cloud
Introducere
2. phpMyAdmin
phpMyAdmin este un sistem de gestiune a bazelor de date MySQL liber, open source, scris
în PHP și destinat administrării bazelor de date prin intermediul unui browser web. Prin
phpMyAdmin se pot întreprinde diverse operații cum ar fi crearea, modificarea sau ștergerea
bazelor de date, tabelelor, câmpurilor sau rândurilor; executarea de comenzi (interogări) SQL.
2
Messaging Cloud
Baza de date MySql folosită este creată cu ajutorul mediului phpMyAdmin și este publicată
pe un domeniu Hostinger, oferind o bună stocarea și reîmprospătare a datelor indiferent de
locul în care utilizatorul este conectat.
Utilzatori Prieteni
User - int
Id - int
Prieten - varchar
Nume_Prenume - varchar
Email - varchar
Mesaje
Parola - varchar
User1 - varchar
User - varchar
User2 - varchar
Status - varchar Mesaj - varchar
Imagine - longblob Citit - varchar
Oraș - varchar
3
Messaging Cloud
Instalarea aplicației
Pasul 1: Pasul 2:
Pasul 3: Pasul 4:
Pasul 5:
După finalizarea instalării pe Desktop
va apărea iconița aplicației.
4
Messaging Cloud
Fereastra Login
Design:
Codul sursă:
1. using System;
2. using System.Collections.Generic;
3. using System.ComponentModel;
4. using System.Data;
5. using System.Drawing;
6. using System.Linq;
7. using System.Text;
8. using System.Threading.Tasks;
9. using System.Windows.Forms;
10. using MySql.Data.MySqlClient;
11.
12. namespace Messaging_Cloud
13. {
14. public partial class Login : Form
15. {
16. private MySqlConnection conn;
17. public Login()
18. {
19. InitializeComponent();
20. conn = new MySqlConnection(@"SERVER=sql308.main-
hosting.eu;DATABASE=u510481174_atestat;USER=u510481174_laurentiu21; PASSWORD=****")
21. }
22.
23. private void LinkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs
e)
24. {
25. Form1 f = new Form1();
26. this.Hide();
27. f.ShowDialog();
5
Messaging Cloud
28. this.Close();
29. }
30.
31. private void PictureBox1_Click(object sender, EventArgs e)
32. {
33. timer1.Start();
34. }
35.
36. private void Timer1_Tick(object sender, EventArgs e)
37. {
38. if (this.Opacity > 0.0)
39. {
40. this.Opacity -= 0.25;
41. }
42. else
43. {
44. timer1.Stop();
45. Application.Exit();
46. }
47. }
48.
49. private void PictureBox2_Click(object sender, EventArgs e)
50. {
51. WindowState = FormWindowState.Minimized;
52. }
53.
54. private void BunifuMaterialTextbox4_Leave(object sender, EventArgs e)
55. {
56. if (bunifuMaterialTextbox4.Text == "")
57. {
58. bunifuMaterialTextbox4.Text = "Parola";
59. bunifuMaterialTextbox4.isPassword = false;
60. }
61. }
62. public void Alertt(string msg, Alert.enmType type)
63. {
64. Alert frm = new Alert();
65. frm.showAlert(msg, type);
66. }
67. private void BunifuMaterialTextbox4_Enter(object sender, EventArgs e)
68. {
69. if (bunifuMaterialTextbox4.Text == "Parola")
70. {
71. bunifuMaterialTextbox4.Text = "";
72. bunifuMaterialTextbox4.isPassword = true;
73. }
74. }
75.
76. private void Button1_Click(object sender, EventArgs e)
77. {
78. if (bunifuMaterialTextbox2.Text != "" && bunifuMaterialTextbox4.Text != "")
79. {
80. try
81. {
82. int ok = 0;
83. conn.Open();
84. MySqlCommand cmd = new MySqlCommand(@"select *from Utilizatori where
User=@val1 and Parola=@val2", conn);
85. cmd.Parameters.AddWithValue("val1", bunifuMaterialTextbox2.Text.ToStr
ing());
86. cmd.Parameters.AddWithValue("val2", bunifuMaterialTextbox4.Text.ToStr
ing());
87. var red = cmd.ExecuteReader();
88. if (red.Read())
89. {
90. this.Alertt("Logare reusita", Alert.enmType.Success);
6
Messaging Cloud
7
Messaging Cloud
Fereastra Sign Up
Design:
Codul sursă:
1. using System;
2. using System.Collections.Generic;
3. using System.ComponentModel;
4. using System.Data;
5. using System.Drawing;
6. using System.Linq;
7. using System.Text;
8. using System.Threading.Tasks;
9. using System.Windows.Forms;
10. using MySql.Data.MySqlClient;
11.
12. namespace Messaging_Cloud
13. {
14. public partial class Form1 : Form
15. {
16. private MySqlConnection conn;
17. public Form1()
18. {
19. InitializeComponent();
20. conn = new MySqlConnection(@"SERVER=sql308.main-
hosting.eu;DATABASE=u510481174_atestat;USER=u510481174_laurentiu21; PASSWORD=****");
21. }
8
Messaging Cloud
22.
23. private void PictureBox1_Click(object sender, EventArgs e)
24. {
25. timer1.Start();
26. }
27.
28. private void PictureBox2_Click(object sender, EventArgs e)
29. {
30. WindowState = FormWindowState.Minimized;
31. }
32.
33. private void Button2_Click(object sender, EventArgs e)
34. {
35. bunifuMaterialTextbox1.Text = "";
36. bunifuMaterialTextbox2.Text = "";
37. bunifuMaterialTextbox3.Text = "";
38. bunifuMaterialTextbox4.Text = "";
39. bunifuMaterialTextbox5.Text = "";
40. bunifuCheckbox1.Checked = false;
41. }
42.
43. private void BunifuMaterialTextbox4_Enter(object sender, EventArgs e)
44. {
45. if (bunifuMaterialTextbox4.Text == "Parola")
46. {
47. bunifuMaterialTextbox4.Text = "";
48. bunifuMaterialTextbox4.isPassword = true;
49. }
50. }
51.
52. private void BunifuMaterialTextbox4_Leave(object sender, EventArgs e)
53. {
54. if (bunifuMaterialTextbox4.Text == "")
55. {
56. bunifuMaterialTextbox4.Text = "Parola";
57. bunifuMaterialTextbox4.isPassword = false;
58. }
59. }
60.
61. private void BunifuMaterialTextbox5_Enter(object sender, EventArgs e)
62. {
63. if (bunifuMaterialTextbox5.Text == "Parola")
64. {
65. bunifuMaterialTextbox5.Text = "";
66. bunifuMaterialTextbox5.isPassword = true;
67. }
68. }
69.
70. private void BunifuMaterialTextbox5_Leave(object sender, EventArgs e)
71. {
72. if (bunifuMaterialTextbox5.Text == "")
73. {
74. bunifuMaterialTextbox5.Text = "Parola";
75. bunifuMaterialTextbox5.isPassword = false;
76. }
77. }
78. public void Alertt(string msg, Alert.enmType type)
79. {
80. Alert frm = new Alert();
81. frm.showAlert(msg, type);
82. }
83. private void Button1_Click(object sender, EventArgs e)
84. {
85. if (bunifuMaterialTextbox1.Text!="" && bunifuMaterialTextbox2.Text!="" && bun
ifuMaterialTextbox3.Text != "" && bunifuMaterialTextbox4.Text != "" && bunifuMaterialText
box5.Text != "" && bunifuCheckbox1.Checked)
9
Messaging Cloud
86. {
87. if (bunifuMaterialTextbox4.Text==bunifuMaterialTextbox5.Text)
88. {
89. if (bunifuMaterialTextbox3.Text.Contains("@"))
90. {
91. conn.Open();
92. MySqlCommand cmd = new MySqlCommand(@"select *from Utilizatori wh
ere Email=@var or User=@val", conn);
93. cmd.Parameters.AddWithValue("var", bunifuMaterialTextbox3.Text);
94. cmd.Parameters.AddWithValue("val", bunifuMaterialTextbox2.Text);
95. var red = cmd.ExecuteReader();
96. bool ok = true;
97. if (red.Read())
98. {
99. this.Alertt("Email sau user existent", Alert.enmType.Error);
100. bunifuMaterialTextbox3.Text = "";
101. ok = false;
102. }
103. red.Dispose();
104. cmd.Dispose();
105. conn.Close();
106. if (ok==true)
107. {
108. conn.Open();
109. cmd = new MySqlCommand(@"insert into Utilizatori(Nume
_Prenume,Email,Parola,User,Status,Ultima_accesare) values(@nume,@email,@parola,@user,@sta
tus,@accesare)", conn);
110. cmd.Parameters.AddWithValue("nume", bunifuMaterialTex
tbox1.Text);
111. cmd.Parameters.AddWithValue("email", bunifuMaterialTe
xtbox3.Text);
112. cmd.Parameters.AddWithValue("parola", bunifuMaterialT
extbox4.Text);
113. cmd.Parameters.AddWithValue("user", bunifuMaterialTex
tbox2.Text);
114. cmd.Parameters.AddWithValue("status", "online");
115. cmd.Parameters.AddWithValue("accesare", DateTime.Now)
;
116. cmd.ExecuteNonQuery();
117. cmd.Dispose();
118. conn.Close();
119.
120. this.Alertt("Cont creat", Alert.enmType.Success);
121. new Loading().ShowDialog();
122. Form3 f = new Form3();
123. f.user = bunifuMaterialTextbox2.Text;
124. f.label5.Text = bunifuMaterialTextbox2.Text;
125. f.label3.Text = "Bine ai venit, " + bunifuMaterialTex
tbox1.Text;
126. f.label3.Left = (f.panel3.Width - f.label3.Size.Width
) / 2;
127. bunifuMaterialTextbox1.Text = "";
128. bunifuMaterialTextbox2.Text = "";
129. bunifuMaterialTextbox3.Text = "";
130. bunifuMaterialTextbox4.Text = "";
131. bunifuMaterialTextbox5.Text = "";
132. bunifuCheckbox1.Checked = false;
133. this.Hide();
134. f.ShowDialog();
135.
136. }
137. }
138. else
139. {
140. this.Alertt("Format email incorect", Alert.enmType.Error)
;
10
Messaging Cloud
11
Messaging Cloud
206. }
207.
208. private void pictureBox2_MouseLeave(object sender, EventArgs e)
209. {
210. pictureBox2.BackColor = Color.White;
211. }
212. }
213. }
Fereastra principală
Fereastra de start:
3
5
1. Lista de butoane 1
2. Panel-ul de ”Bun venit”
4
3. Lista de prieteni
4. Tab-ul adăugare noi prieteni
5. Tab-ul de schimbare a descrierii
12
Messaging Cloud
Fereastra de mesaje:
2
3
13
Messaging Cloud
14
Messaging Cloud
1. using System;
2. using System.Collections.Generic;
3. using System.ComponentModel;
4. using System.Data;
5. using System.Drawing;
6. using System.Linq;
7. using System.Text;
8. using System.Threading.Tasks;
9. using System.Windows.Forms;
10. using MySql.Data.MySqlClient;
11. using System.IO;
12.
13. namespace Messaging_Cloud
14. {
15. public partial class Form3 : Form
16. {
17. private MySqlConnection conn;
18. public Form3()
19. {
20. InitializeComponent();
21. conn = new MySqlConnection(@"SERVER=sql308.main-
hosting.eu;DATABASE=u510481174_atestat;USER=u510481174_laurentiu21; PASSWORD=phantom
21");
22. }
23. public string user,aux1,aux2,nume;
24.
25. private void button1_Click(object sender, EventArgs e)
26. {
27.
28. }
29. public int lungime_prieteni=20;
30. private void Form3_Load(object sender, EventArgs e)
31. {
32. try
33. {
34. panel12.AutoScroll = false;
35. panel12.HorizontalScroll.Enabled = false;
36. panel12.HorizontalScroll.Visible = false;
37. panel12.HorizontalScroll.Maximum = 0;
38. panel12.AutoScroll = true;
39. conn.Open();
40. MySqlCommand cmd = new MySqlCommand(@"select Imagine,Descriere from
Utilizatori where User=@val", conn);
41. cmd.Parameters.AddWithValue("val", user);
42. var red = cmd.ExecuteReader();
43. if (red.Read())
44. {
45. if (red[0].ToString()!="")
46. {
47. byte[] img = (byte[])red[0];
48. MemoryStream m = new MemoryStream(img);
49. pictureBox3.Image = Image.FromStream(m);
50. circularPictureBox1.Image = Image.FromStream(m);
51. }
52. if (red[1].ToString() != "")
53. {
54. label6.Text = red[1].ToString();
55. bunifuMaterialTextbox2.Text = red[1].ToString();
56. }
57. }
58. red.Dispose();
15
Messaging Cloud
59. cmd.Dispose();
60. conn.Close();
61. conn.Open();
62. cmd = new MySqlCommand(@"update Utilizatori set Status='online' whe
re User=@val", conn);
63. cmd.Parameters.AddWithValue("val", user);
64. cmd.ExecuteNonQuery();
65. cmd.Dispose();
66. conn.Close();
67. int lungime = 10;
68. List<string> prieteni = new List<string>();
69. conn.Open();
70. cmd = new MySqlCommand(@"select *from Prieteni where User=@val", con
n);
71. cmd.Parameters.AddWithValue("val", user);
72. red = cmd.ExecuteReader();
73. while (red.Read())
74. {
75. prieteni.Add(red[1].ToString());
76. }
77. red.Dispose();
78. cmd.Dispose();
79. conn.Close();
80. conn.Open();
81. cmd = new MySqlCommand(@"select *from Cerere_prietenie where User2=@
val", conn);
82. cmd.Parameters.AddWithValue("val", user);
83. red = cmd.ExecuteReader();
84. if (red.Read())
85. {
86. pictureBox10.BackColor = Color.SeaGreen;
87. }
88. red.Dispose();
89. cmd.Dispose();
90. conn.Close();
91. for (int i = 0; i < prieteni.Count; i++)
92. {
93. Friend f = new Friend();
94. label2.Visible = false;
95. f.Location = new Point(0, lungime);
96. f.label5.Text = prieteni[i];
97. f.timer1.Start();
98. conn.Open();
99. cmd = new MySqlCommand(@"select *from Utilizatori where User=@va
l", conn);
100. cmd.Parameters.AddWithValue("val", prieteni[i].ToString()
);
101. red = cmd.ExecuteReader();
102. if (red.Read())
103. {
104. f.label5.Text = red[4].ToString();
105. if (red[10].ToString() != "")
106. f.label2.Text = red[10].ToString();
107. else
108. f.label2.Text = "Nicio descriere";
109.
110. if (red[8].ToString() != "")
111.
112. f.label3.Text = red[8].ToString();
113. else
114. f.label3.Text = "Locatie neprecizata";
115. char[] sep = { ' ' };
116. string[] sir;
117. sir = red[11].ToString().Split(sep);
118. f.label1.Text = sir[1];
119. if (red[6].ToString()!="")
16
Messaging Cloud
120. {
121. byte[] img = (byte[])red[6];
122. MemoryStream m = new MemoryStream(img);
123. f.pictureBox3.Image = Image.FromStream(m);
124. }
125.
126. if (red[5].ToString()=="online")
127. f.panel5.BackColor = Color.SeaGreen;
128. }
129. red.Dispose();
130. cmd.Dispose();
131. conn.Close();
132. conn.Open();
133. int contor = 0;
134. cmd = new MySqlCommand(@"select *from Mesaje where User1=
@val1 and User2=@val2", conn);
135. cmd.Parameters.AddWithValue("val1", prieteni[i]);
136. cmd.Parameters.AddWithValue("val2", user);
137. red = cmd.ExecuteReader();
138. while (red.Read())
139. {
140. contor++;
141. }
142. red.Read();
143. cmd.Dispose();
144. conn.Close();
145. if (contor>0)
146. {
147. f.label4.Text = contor.ToString();
148. f.label4.Visible = true;
149. f.label1.Visible = true;
150. }
151. f.Click += F_Click;
152. panel12.Controls.Add(f);
153. lungime += 127;
154. lungime_prieteni = lungime;
155. }
156. }
157. catch(Exception ex)
158. {
159. Close();
160. MessageBox m=new MessageBox();
161. m.ShowDialog();
162.
163. }
164. }
165. public Mesaje m;
166. public int lungime = 20;
167. public Friend f;
168. private void F_Click(object sender, EventArgs e)
169. {
170. panel3.Controls.Remove(m);
171. timer1.Stop();
172. f = (Friend)sender;
173. m = new Mesaje();
174. lungime = 20;
175. m.Location = new Point(0, 0);
176. m.pictureBox3.Image = f.pictureBox3.Image;
177. m.panel5.BackColor = f.panel5.BackColor;
178. m.label5.Text = f.label5.Text;
179. m.pictureBox1.Image = m.pictureBox3.Image;
180. m.label1.Text = m.label5.Text;
181. aux2 = m.label1.Text;
182. m.label1.Left = (m.panel2.Width - m.label1.Size.Width)/2;
183. if (m.panel5.BackColor == Color.Crimson)
184. m.label2.Text = "Offline";
17
Messaging Cloud
185. conn.Open();
186. MySqlCommand cmd1 = new MySqlCommand(@"update Mesaje set Citit='D
a' where User1=@val or User2=@val1", conn);
187. cmd1.Parameters.AddWithValue("val", f.label5.Text);
188. cmd1.Parameters.AddWithValue("val1", f.label5.Text);
189. cmd1.ExecuteNonQuery();
190. cmd1.Dispose();
191. conn.Close();
192. conn.Open();
193. MySqlCommand cmd = new MySqlCommand("select *from Utilizatori whe
re User=@val", conn);
194. cmd.Parameters.AddWithValue("val", f.label5.Text);
195. var red = cmd.ExecuteReader();
196. if (red.Read())
197. {
198. if (red[5].ToString() == "online")
199. m.panel5.BackColor = Color.SeaGreen;
200. if (red[5].ToString() == "offline")
201. m.panel5.BackColor = Color.Crimson;
202. }
203. red.Dispose();
204. cmd.Dispose();
205. conn.Close();
206. conn.Open();
207. cmd = new MySqlCommand(@"SELECT * FROM Mesaje WHERE (User1=@val1
and User2=@val2) or (User1=@val3 and User2=@val4)", conn);
208. cmd.Parameters.AddWithValue("val1", user);
209. cmd.Parameters.AddWithValue("val2", f.label5.Text);
210. cmd.Parameters.AddWithValue("val3", f.label5.Text);
211. cmd.Parameters.AddWithValue("val4", user);
212. red = cmd.ExecuteReader();
213. int i = 1;
214. while (red.Read())
215. {
216. m.label15.Visible = false;
217. if (red[0].ToString() == user)
218. {
219. Text t = new Text();
220. t.label5.Text = red[2].ToString();
221. //t.panel1.Location = new Point(0, 0);
222. t.pictureBox1.Image = pictureBox3.Image;
223. string[] data;
224. data = Convert.ToDateTime(red[3].ToString()).TimeOfDay.To
String().Split(':');
225. t.label2.Text = data[0] + ":" + data[1];
226. t.Location = new Point(m.panel13.Width - t.Width - 25, lu
ngime);
227. m.panel13.Controls.Add(t);
228. m.panel13.AutoScrollPosition = new Point(0, t.Location.Y)
;
229. lungime = lungime + t.Height + 20;
230. }
231. else
232. {
233. Text t = new Text();
234. t.label5.Text = red[2].ToString();
235. t.pictureBox1.Image = m.pictureBox3.Image;
236. t.pictureBox1.Location = new Point(3, 0);
237. t.panel1.BackColor = Color.FromArgb(53, 64, 77);
238. t.label2.Location = new Point(44, 47);
239. string[] data;
240. data = Convert.ToDateTime(red[3].ToString()).TimeOfDay.To
String().Split(':');
241. t.label2.Text = data[0] + ":" + data[1];
242. t.Location = new Point(15, lungime);
243. m.panel13.Controls.Add(t);
18
Messaging Cloud
19
Messaging Cloud
20
Messaging Cloud
364. {
365. conn.Open();
366. MySqlCommand cmd = new MySqlCommand(@"select *from Mesaje where U
ser1=@val and Citit='Nu'", conn);
367. cmd.Parameters.AddWithValue("val", aux2);
368. var red = cmd.ExecuteReader();
369. if (red.Read())
370. {
371. Text t = new Text();
372. t.label5.Text = red[2].ToString();
373. t.pictureBox1.Image = m.pictureBox3.Image;
374. t.pictureBox1.Location = new Point(3, 0);
375. t.panel1.BackColor = Color.FromArgb(53, 64, 77);
376. string[] data;
377. data = Convert.ToDateTime(red[3].ToString()).TimeOfDay.ToStri
ng().Split(':');
378. t.label2.Text = data[0] + ":" + data[1];
379. if (lungime< m.panel13.Height)
380. {
381. t.Location = new Point(15, lungime);
382. lungime = lungime + t.Height + 20;
383. }
384. else
385. t.Location = new Point(15, m.panel13.Height + 20);
386. m.panel13.AutoScrollPosition = new Point(0, m.panel13.AutoScr
ollMinSize.Height);
387. m.panel13.Controls.Add(t);
388. }
389. red.Dispose();
390. cmd.Dispose();
391. conn.Close();
392. conn.Open();
393. cmd = new MySqlCommand(@"update Mesaje set Citit='Da' where User1
=@val and Citit='Nu'", conn);
394. cmd.Parameters.AddWithValue("val", aux2);
395. cmd.ExecuteNonQuery();
396. cmd.Dispose();
397. conn.Close();
398.
399. }
400. public Panel np;
401. private void bunifuMaterialTextbox1_OnValueChanged_1(object sender, E
ventArgs e)
402. {
403.
404. }
405.
406. private void panel4_MouseHover(object sender, EventArgs e)
407. {
408. panel4.BackColor = Color.FromArgb(53, 64, 77);
409. }
410.
411. private void panel4_MouseLeave(object sender, EventArgs e)
412. {
413. panel4.BackColor = Color.FromArgb(31, 39, 49);
414. }
415. public int lungime_cerere = 20;
416. private void pictureBox5_Click(object sender, EventArgs e)
417. {
418. if (bunifuMaterialTextbox1.Text != "")
419. {
420. panel12.Controls.Remove(np);
421. pictureBox11.Visible = true;
422. int lungime = 10;
423. List<string> utilizatori = new List<string>();
424. np = new Panel();
21
Messaging Cloud
22
Messaging Cloud
23
Messaging Cloud
593. {
594. conn.Open();
595. MySqlCommand cmd = new MySqlCommand(@"INSERT INTO Prieteni(User,P
rieten) VALUES(@val1,@val2)", conn);
596. cmd.Parameters.AddWithValue("val1", user);
597. cmd.Parameters.AddWithValue("val2", aux.label5.Text);
598. cmd.ExecuteNonQuery();
599. cmd.Dispose();
600. conn.Close();
601. conn.Open();
602. cmd = new MySqlCommand(@"INSERT INTO Prieteni(User,Prieten) VALUE
S(@val1,@val2)", conn);
603. cmd.Parameters.AddWithValue("val1", aux.label5.Text);
604. cmd.Parameters.AddWithValue("val2", user);
605. cmd.ExecuteNonQuery();
24
Messaging Cloud
606. cmd.Dispose();
607. conn.Close();
608. conn.Open();
609. cmd = new MySqlCommand(@"delete from Cerere_prietenie where User1
=@val1 and User2=@val2", conn);
610. cmd.Parameters.AddWithValue("val1", aux.label5.Text);
611. cmd.Parameters.AddWithValue("val2", user);
612. cmd.ExecuteNonQuery();
613. cmd.Dispose();
614. conn.Close();
615. Friend fre = new Friend();
616. label2.Visible = false;
617. fre.Location = new Point(0, lungime_prieteni);
618. lungime_prieteni += 127;
619. fre.label5.Text = aux.label5.Text;
620. fre.timer1.Start();
621. conn.Open();
622. cmd = new MySqlCommand(@"select *from Utilizatori where User=@val
", conn);
623. cmd.Parameters.AddWithValue("val", aux.label5.Text);
624. var red = cmd.ExecuteReader();
625. if (red.Read())
626. {
627. fre.label5.Text = red[4].ToString();
628. if (red[10].ToString() != "")
629. fre.label2.Text = red[10].ToString();
630. else
631. fre.label2.Text = "Nicio descriere";
632.
633. if (red[8].ToString() != "")
634.
635. fre.label3.Text = red[8].ToString();
636. else
637. fre.label3.Text = "Locatie neprecizata";
638.
639. char[] sep = { ' ' };
640. string[] sir;
641. sir = red[11].ToString().Split(sep);
642. fre.label1.Text = sir[1];
643. if (red[6].ToString() != "")
644. {
645. byte[] img = (byte[])red[6];
646. MemoryStream m = new MemoryStream(img);
647. fre.pictureBox3.Image = Image.FromStream(m);
648. }
649. if (red[5].ToString() == "online")
650. fre.panel5.BackColor = Color.SeaGreen;
651. }
652. red.Dispose();
653. cmd.Dispose();
654. conn.Close();
655. aux.pictureBox1.Visible = false;
656. aux.pictureBox2.Visible = false;
657. aux.label1.Text = "Cerere aprobată";
658. aux.label1.Visible = true;
659. fre.Click += F_Click;
660. panel12.Controls.Add(fre);
661. }
662. public void show_msg1(object sender, EventArgs e, Friend_Request aux)
663. {
664. conn.Open();
665. MySqlCommand cmd = new MySqlCommand(@"delete from Cerere_prieteni
e where User1=@val1 and User2=@val2", conn);
666. cmd.Parameters.AddWithValue("val1", aux.label5.Text);
667. cmd.Parameters.AddWithValue("val2", user);
25
Messaging Cloud
668. cmd.ExecuteNonQuery();
669. cmd.Dispose();
670. conn.Close();
671. aux.pictureBox1.Visible = false;
672. aux.pictureBox2.Visible = false;
673. aux.label1.Text = "Cerere aprobată";
674. aux.label1.Visible = true;
675. }
676. private void panel4_Click(object sender, EventArgs e)
677. {
678. timer1.Stop();
679. panel3.Controls.Remove(m);
680. }
681.
682. private void pictureBox1_MouseHover(object sender, EventArgs e)
683. {
684. pictureBox1.BackColor = Color.Crimson;
685. }
686.
687. private void pictureBox1_MouseLeave(object sender, EventArgs e)
688. {
689. pictureBox1.BackColor = Color.FromArgb(25, 34, 41);
690. }
691.
692. private void pictureBox2_MouseHover(object sender, EventArgs e)
693. {
694. pictureBox2.BackColor = Color.FromArgb(53, 64, 77);
695. }
696.
697. private void pictureBox2_MouseLeave(object sender, EventArgs e)
698. {
699. pictureBox2.BackColor = Color.FromArgb(25, 34, 41);
700. }
701.
702. private void pictureBox4_MouseHover(object sender, EventArgs e)
703. {
704. pictureBox4.BackColor = Color.FromArgb(53, 64, 77);
705. }
706.
707. private void pictureBox4_MouseLeave(object sender, EventArgs e)
708. {
709. pictureBox4.BackColor = Color.FromArgb(25, 34, 41);
710. }
711.
712. private void label1_MouseHover(object sender, EventArgs e)
713. {
714. label1.ForeColor = Color.FromArgb(210, 212, 213);
715. }
716.
717. private void label1_MouseLeave(object sender, EventArgs e)
718. {
719. label1.ForeColor = Color.White;
720. }
721. public Modify me;
722. private void pictureBox4_Click_1(object sender, EventArgs e)
723. {
724. me = new Modify();
725. me.user = user;
726. me.prev = circularPictureBox1.Image;
727. conn.Open();
728. MySqlCommand cmd = new MySqlCommand(@"select *from Utilizatori wh
ere User=@val", conn);
729. cmd.Parameters.AddWithValue("val", user);
730. var red = cmd.ExecuteReader();
731. if (red.Read())
732. {
26
Messaging Cloud
27
Messaging Cloud
795. {
796. label7.Text = "Bine ai venit, " + me.bunifuMaterialTextbox2.HintT
ext;
797. label7.Left = (panel3.Width - label7.Size.Width) / 2;
798. pictureBox3.Image = me.pictureBox2.Image;
799. circularPictureBox1.Image = me.pictureBox2.Image;
800. }
801.
802. private void pictureBox1_Click(object sender, EventArgs e)
803. {
804. timer1.Stop();
805. conn.Open();
806. MySqlCommand cmd = new MySqlCommand(@"UPDATE `Utilizatori` SET Ul
tima_accesare=@val, Status='offline' where User=@val1", conn);
807. cmd.Parameters.AddWithValue("val", DateTime.Now);
808. cmd.Parameters.AddWithValue("val1", user);
809. cmd.ExecuteNonQuery();
810. cmd.Dispose();
811. conn.Close();
812. Close();
813. }
814.
815. private void pictureBox2_Click(object sender, EventArgs e)
816. {
817. this.WindowState = FormWindowState.Minimized;
818. }
819. }
820. }
28
Messaging Cloud
Eventuale erori
Eventualele erori apar între aplicație și baza de date atunci când baza de date nu răspunde în
timp util. Acest fapt se datorează fie conexiunii la internet, fie serviciului de hosting unde se
află baza de date.
Aceste erori sunt întâmpinate de fereastra de mai jos care închide aplicația, fiind recomandată
redeschiderea acesteia.
Cerințe de sistem
29
Messaging Cloud
Bibliografie
https://stackoverflow.com/.
https://www.wikipedia.org/
https://docs.microsoft.com/ro-ro/dotnet/csharp/
30
Messaging Cloud
Cuprins
Introducere ................................................................................................................................. 2
Design: ............................................................................................................................ 5
Codul sursă: ..................................................................................................................... 5
Conturi utilizator existente destinate testelor: ................................................................. 7
Fereastra Sign Up ....................................................................................................................... 8
Design: ............................................................................................................................ 8
Codul sursă: ..................................................................................................................... 8
Fereastra principală .................................................................................................................. 12
Bibliografie............................................................................................................................... 30
Cuprins ..................................................................................................................................... 31
31