Laboratoriya ishi – 19. Mavzu: Firebase ma'lumotlar bazasidan foydalanish Ishning maqsadi: Firebase ma'lumotlar bazasidan foydalanish. Nazariy qism


"Server" ni amalga oshirish uchun biz SQL va PHP bilan ishlashga imkon beradigan har qanday xostingda ro'yxatdan o'tishimiz kerak



Download 1,15 Mb.
bet12/13
Sana25.02.2022
Hajmi1,15 Mb.
#461702
1   ...   5   6   7   8   9   10   11   12   13
Bog'liq
19-24Laboratoriya ishi

"Server" ni amalga oshirish uchun biz SQL va PHP bilan ishlashga imkon beradigan har qanday xostingda ro'yxatdan o'tishimiz kerak.


Bo'sh SQL ma'lumotlar bazasini yarating, unda jadval yarating.


Suhbat jadvali.


Strukturasi quyidagicha:


author — xabar muallifi;



  1. client — xabar oluvchi;

  2. data — serverda xabarni qabul qilish vaqti va sanasi;

  3. text — xabar.

Keyingi ikkita faylda ma'lumotlarni o'z ichiga olgan o'zgaruvchilarni o'zgartirish kerak


"serveringizni" ro'yxatdan o'tkazishda siz olgan ma'lumotlar bazasiga kirish.





$mysql_host = "localhost"; // sql сервер, mahalliy yoki tashqi bo'lishi mumkin. Masalan:



ер mysql5.000webhost.com






$mysql_user = "l29340eb_chat"; // foydalanuvchi






$mysql_password = "123456789"; // parol






$mysql_database = "l29340eb_chat"; // SQL serveridagi ma'lumotlar bazasining nomi




Chat.php fayli server tushunadigan so'rovlar tuzilishini amalga oshiradigan bizning api.


Api so'rovining tuzilishi:



  • majburiy harakat atributi - tanlashga teng bo'lishi mumkin (server o'z ma'lumotlar bazasidagi yozuvlar ro'yxati bilan javob beradi), qo'shish (server o'z ma'lumotlar bazasiga yangi yozuv qo'shadi), o'chirish (server o'z ma'lumotlar bazasini tozalaydi)

  • agar harakat = qo'shish bo'lsa, biz qo'shimcha parametrlarni berishimiz kerak bo'ladi: muallif (xabarni yozgan), mijoz (xabar kimga yuborilgan), matn (xabar)

  • action = select qo'shimcha ma'lumotlar parametrini o'z ichiga olishi mumkin, bu holda server javobida ma'lumotlar bazasidagi barcha xabarlar mavjud emas, faqat yaratilish vaqti yuborilganidan kechroq bo'lganlar.

Misollar:



  • chat.php?action=delete – serverdagi barcha yozuvlarni o'chirib tashlaydi

  • chat.php?action=insert&author=Jon&client=Smith&text=Hello — serverga yangi yozuv qo'shadi: muallif Jon, oluvchi Smit, kontent Salom

  • chat.php?action=select&data=151351333 — vaqt o'tganidan keyin olingan barcha yozuvlarni uzoq formatda qaytaradi

ShowBD.php fayl — ma'lumotlar bazasi tarkibini brauzerda vizual ko'rsatish uchun ixtiyoriy skript.
Mijoz qismi

Endi Android ilovasining tuzilishi:


FoneService.java fonda ishlayapti, u alohida mavzuda serverga har 15 soniyada so'rov yuboradi. Agar server javobida yangi xabarlar bo'lsa, FoneService.java ularni mahalliy ma'lumotlar bazasiga yozadi va ChatActivity.java -ga ListView -ni xabarlar bilan yangilash zarurligi to'g'risida xabar yuboradi. ChatActivity.java (agar u hozirda ochiq bo'lsa) xabar oladi va ListView tarkibini mahalliy ma'lumotlar bazasidan yangilaydi..


ChatActivity.java -dan FoneService.java -ni chetlab o'tib, to'g'ridan -to'g'ri serverga yangi xabar yuboriladi. Bunday holda, bizning xabarimiz mahalliy ma'lumotlar bazasiga yozilmaydi! U erda u faqat server javobi shaklida qaytarilgandan keyin paydo bo'ladi. Men ushbu ilovani har qanday Internet -chat ishining muhim nuansi - xabarlarni vaqt bo'yicha majburiy guruhlash bilan bog'liq holda ishlatganman. Agar siz vaqt bo'yicha guruhlashni ishlatmasangiz, xabarlar ketma -ketligi buziladi. Mijoz dasturlarini millisekundlik aniqlik bilan jismonan sinxronlashtirish mumkin emasligini va hatto turli vaqt zonalarida ishlashini hisobga olsak, server vaqtidan foydalanish mantiqan to'g'ri bo'lardi. Bu biz qiladigan ish.


Yangi xabarni yaratishda biz serverga so'rov yuboramiz: xabar muallifining ismi, xabar oluvchining ismi, xabar matni. Bu yozuvni server javobi sifatida qabul qilib, biz yuborgan narsani olamiz + to'rtinchi parametr: server tomonidan xabar qabul qilingan vaqt..

MainActivity.java -da, aniqlik uchun, men mahalliy ma'lumotlar bazasidan xabarlarni o'chirish qobiliyatini qo'shdim - bu dasturni toza o'rnatishga teng (bu holda, FoneService serverga tanlanganlardan kelgan barcha xabarlarni qabul qilish uchun so'rov yuboradi. suhbat). Bundan tashqari, serverda joylashgan ma'lumotlar bazasidan barcha xabarlarni o'chirish uchun so'rov yuborish mumkin.





Download 1,15 Mb.

Do'stlaringiz bilan baham:
1   ...   5   6   7   8   9   10   11   12   13




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish