Reja: Ochiq ma’lunotlar portal opendata gov uz dan foydalanib huquqlarning sportdagi ko’rsatkichlarini aks ettiruvchi dastur yaratish 2


Ochiq ma’lunotlar portal opendata.gov.uz dan foydalanib yurtimizdagi mexmonxonalarni ro’yhatini va ularning aloqa ma’lumotlarni aks ettiruvchi dastur yaratish



Download 0,61 Mb.
bet2/5
Sana02.07.2022
Hajmi0,61 Mb.
#731555
1   2   3   4   5
Bog'liq
3-mustaqil ish Allanazarov T..

2. Ochiq ma’lunotlar portal opendata.gov.uz dan foydalanib yurtimizdagi mexmonxonalarni ro’yhatini va ularning aloqa ma’lumotlarni aks ettiruvchi dastur yaratish

SQLiteHelper deb nomladik, va SQLiteOpenHelper klassidan extend olgan.


SQLiteOpenHelper — bu bizga database yaratib, undagi amallar bajarishga yordam beruvchi klass (1.72-rasm).
Bu klassning 2 ta metodi mavjud:
onCreate — database yaratish uchun
onUpgrade — yaratilgan database ni yangilash uchun
onCreate metodini ichiga quydagilarni yoziladi:
@Override public void onCreate(SQLiteDatabase db)
{ // TODO Auto-generated method stub db.execSQL(SCRIPT_CREATE_DATABASE); }
Endi quyidagi o‘zgaruvchilarni yaratamiz, bu o‘zgaruvchilar database bilan ishlash uchun har doim kerak bo‘ladigan o‘zgaruvchilar bo‘lganligi uchun hususiyatini public qilamiz
public static final String MYDATABASE_NAME = "opennet";
public static final String MYDATABASE_TABLE = "opennetchilar";
public static final int MYDATABASE_VERSION = 1;
public static final String KEY_ID = "_id";
public static final String ism = "ism";
public static final String familya = "familya";
//create table MY_DATABASE (ID integer primary key, Content text not null);
private static final String SCRIPT_CREATE_DATABASE = "create table "
+ MYDATABASE_TABLE
+ " (" + KEY_ID + " integer primary key autoincrement, " + ism + " text not null, " + familya + " text not null);";
private SQLiteHelper sqLiteHelper;
private SQLiteDatabase sqLiteDatabase;
private Context context;
Endi database yaratish funksiyasiga kelsak, quyidagikodni yozamiz
sqLiteHelper = new SQLiteHelper(context, MYDATABASE_NAME, null, MYDATABASE_VERSION);
SQLiteHelper klassiga murojaat qiladi va onCreate metodi ishga tushadi, va bizning databaseimizni yaratib beradi.
Eslatma:database ni 1 marta yaratadi,agar shunday nomli database bor bo‘lsa yaratmaydi.
SqliteAdapter klassimizni ichida quyidagi funksiyalarni yaratamiz:
openToRead() — nomidan ham ma’lumki, databaseni o‘qishga ruxsat olish uchun public SQLiteAdapter openToRead() throws android.database.SQLException { sqLiteHelper = new SQLiteHelper(context, MYDATABASE_NAME, null, MYDATABASE_VERSION); sqLiteDatabase = sqLiteHelper.getReadableDatabase(); return this; }
openToWrite() — nomidan ham ma’lumki, databaseni tahrirlash uchun ruxsat olish
public SQLiteAdapter openToWrite() throws android.database.SQLException { sqLiteHelper = new SQLiteHelper(context, MYDATABASE_NAME, null, MYDATABASE_VERSION);
sqLiteDatabase = sqLiteHelper.getWritableDatabase();
return this; }
Va nihoyat databaseni ishlatib bo‘lganimizdan so‘ng, uni yopish.
public void close(){ sqLiteHelper.close();
}
Database ga ma’lumot qo‘shish funksiyasi
public long insert(String content1, String content2){ ContentValues contentValues = new ContentValues(); contentValues.put(ism, content1); contentValues.put(familya, content2);
return
sqLiteDatabase.insert(MYDATABASE_TABLE, null, contentValues); }
Database dagi barcha ma’lumotlarni o‘chirish funksiyasi
public int deleteAll(){return sqLiteDatabase.delete(MYDATABASE_TABLE, null, null); }
Databasidagi barcha ma’lumotlarni olish uchun ishlatiladigan funksiya
public Cursor queueAll(){String[] columns = new String[]{KEY_ID, ism, familya};
Cursor cursor = sqLiteDatabase.query(MYDATABASE_TABLE, columns, null, null, null, null, null);
return cursor; }

3.Muayyan maktab misolida dars jadvali, o’quvchilarning fanlardan o’zlashtirish ko’rsatgichlarini va shukabi statistic ma’lumotlarini aks ettiruvchi dastur yaratish


Saytimizda istalgan nom bilan PHP fayl yaratamiz, Masalan «chat_bot.php» va fayl ichida bot dasturini boshlaymiz.
BotFather taqdim etgan, bot tokeni yani kaliti uchun o‘zgarmas constant yaratib olamiz. Constant nomini «API_KEY» deb nomladim.
define('API_KEY', '1016572094:AAGrwwZhjmMHTUaC4VAHgforR3QlFkSbF8s');
Botni boshqaradigan insonning telegram id raqami va Ism Familyasini yoki kompaniya nomini o‘zgaruvchiga saqlaymiz. Telegram id raqamini olish uchun ushbu botga «/start» buyrug‘uni bering. Botga o‘tish: http://t.me/infomiruz_idbot
$Manager = "150105698";
$compane = "infomir.uz";
bot dasturi barcha amallarini kerakli shaklda Telegram Bot API ga yuboradigan asosiy funksiyani yozamiz
function bot($method, $datas = []){
$url = "https://api.telegram.org/bot".API_KEY."/" . $method;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $datas);
$res = curl_exec($ch);
curl_close($ch);
if (!curl_error($ch)) return json_decode($res);
};
Foydalanuvchilarning Ism Familyasi yoki Yozgan murojati tarkibida uchrashi mumkin bo‘lgan kodga a’loqador belgilardan himoya funksiyasini yozamiz
function html($text){
return str_replace(['<','>'],['<','>'],$text);
};
Telegram Bot API dan kelgan JSON formatdagi ma’lumotni «json_decode» funksiyasi yordamida «stdClass Object» shaklida qabul qilamiz
$update = json_decode(file_get_contents('php://input'));
Telegram Bot API bizga yuborayotgan javobni ko‘rishimiz uchun hozircha ushbu kodni qo‘shib qo‘yamiz, ushbu kod bot ishga tushganda javobni yangi «log.txt» faylga yozib qo‘yadi.
//test log
file_put_contents("log.txt",file_get_contents('php://input'));
Botni ishga tushurish uchun Maxsus «setWebhook» funksiayasi orqali Telegram API ga botimiz kodlari qaysi manzilda joylashganligi haqida habar berishimiz lozim. Buning uchun avval Webhook murojat urlini tayyorlaymiz:
https://api.telegram.org/botBuyerda Token/setWebHook?url=php fayl manzili
Mening botim uchun mana bunday shaklda:
https://api.telegram.org/bot1151828985:AAFu_2fo/setWebHook?url=https://infomir.uz/chat_bot.php
Ushbu url so‘rovni browserda ishga tushuramiz va agar hammasini to‘g‘ri qilgan bo‘lsangiz javobi mana bunday ko‘rinishda boladi:
{"ok":true,"result":true,"description":"Webhook was set"}
Botimiz ishga tushdi ammo hozircha bizga hech nima qaytarmaydi, Chunki dastur davomini yozishimiz lozim.


Download 0,61 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5




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