Pdouchun stsenariy hisoblanadi php ma'lumotlar ob'ektlari



Download 51,61 Kb.
bet4/6
Sana30.12.2021
Hajmi51,61 Kb.
#194829
1   2   3   4   5   6
Bog'liq
Pdo mysql misollari

lastInsertId ()  oxirgi kiritilgan ma'lumotlar bazasi qatorining identifikatorini qaytaradi.

   // lastInsertId () usuli $ db-\u003e so'rovning oxirgi yozuvining identifikatorini qaytaradi ("INSERT INTO foydalanuvchilari SET nomi \u003d" Vasya ", manzil \u003d" Bu erda ", elektron pochta \u003d" vasya@test.com ""); $ insertId \u003d $ db-\u003e lastInsertId ();

Tayyorlangan iboralar - tayyorlangan statistikalar.

Uchinchi usul tayyorlash + ijro etish - Tayyorlangan iboralarular tayyor ko'rsatmalar, ular mavjud bo'lgan joy egalari tayyorlangan statistikalaryoki o'zgaruvchilarni bog'lash, ifoda bir marta aniqlashga imkon beradi va keyin uni turli parametrlar bilan bir necha bor bajaradi. Shuningdek, ular o'zgaruvchini so'rovdan ajratib olishga imkon beradi, bu esa kodni xavfsizroq qiladi va bajarilish tezligini oshiradi. Kodingizda, endi siz uzatilgan ma'lumotlarni tozalashga harakat qilishingiz shart bo'lmaydi. Ma'lumotlar bazasi so'rovini bajarishdan oldin biz buni faqat bir marta qilamiz. Buning uchun funktsiyadan foydalaning Tayyorlang (); SQL so'rovini parametr sifatida qabul qiladi, ammo o'zgaruvchilar o'rniga teglar '?' Yoki '' 1 'raqamlari yoki yoki nuqta': 'bilan boshlanadigan o'zgaruvchi shaklida belgilanadi. Agar siz savol belgilariga (: raqamlarga) joylashtirsangiz, unda tegishli ketma-ketlikda bajaruvchi funktsiyaga bir qator qiymatlarni berishingiz kerak. Agar sizning tanlovingiz o'zgaruvchilar deb nomlangan bo'lsa, unda siz har bir o'zgaruvchini ikkita funktsiyadan bittasi bilan belgilashingiz kerak: yoki psevdo-o'zgaruvchiga qiymatni tayinlaydigan bindValue () yoki haqiqiy o'zgaruvchiga bindParam (). Uchinchi parametr o'zgaruvchini turini ko'rsatishi mumkin, masalan $ db-\u003e bindParam (': id', $ id, PDO :: PARAM_INT).

// Nomsiz yorliqlarni sinab ko'ring ($ stmt \u003d $ db-\u003e tayyorgarlik ("INSERT INTO sinovi (yorliq, rang) VALUES (?,?)"); $ Stmt -\u003e bajarish (qator ("mukammal", "yashil")) );) catch (PDOException $ e) (echo "Xato:". $ e-\u003e getMessage (); exit ();) // stmt bu "davlat tavsiflovchi" // Teglar nomi $ stmt \u003d $ db-\u003e tayyorlang ("INSERT INTO sinovi (yorliq, rang) VALUES (: label,: color)"); $ stmt -\u003e bajaring (qator ("label" \u003d\u003e "mukammal", "color" \u003d\u003e "yashil")); // yana bir variant $ stmt \u003d $ db-\u003e Tayyorgarlik ("INSERT INTO foydalanuvchilari (ism, familiya, elektron pochta)" VALUES (: ismi,: familiyasi,: elektron pochta) "); $ stmt-\u003e bindParam (": familiya", $ ism); $ stmt-\u003e bindParam (": familiya", $ familiya); $ stmt-\u003e bindParam (": elektron pochta", $ elektron pochta); $ firstname \u003d "Jon"; $ lastname \u003d "Smit"; $ email \u003d "john@test.com"; $ stmt-\u003e bajaring ();

Sizga yana bir bor eslatib o'tamanki, agar siz tayyor iboralarni ishlatmasangiz, lekin uzatilgan ma'lumotlarni himoya qilishni xohlasangiz, buni PDO: quote funktsiyasi yordamida amalga oshirish mumkin.

PDO SELECT ma'lumotlari

Ma'lumot olish uchun fetch () yoki fetchAll () usullari qo'llaniladi. Funktsiyani chaqirishdan oldin siz PDO-ga ma'lumotlar bazasidan ma'lumotlarni qanday olishingizni aytishingiz kerak. PDO :: FETCH_ASSOC satrlarni tugmachalar sifatida maydon nomlari bilan assotsiativ qator sifatida qaytaradi. PDO :: FETCH_NUM satrlarni raqamli qator sifatida qaytaradi. Odatiy bo'lib, yuklash PDO :: FETCH_BOTH yordamida amalga oshiriladi, bu ma'lumotni raqamli va assotsiativ kalitlar bilan takrorlaydi, shuning uchun takroriy massivlarning oldini olish uchun bitta usulni tanlash tavsiya etiladi:

   $ stmt \u003d $ db-\u003e so'rov ("SELECT * foydalanuvchilardan"); // yuklash rejimini o'rnatish $ stmt-\u003e setFetchMode (PDO :: FETCH_ASSOC); while ($ row \u003d $ stmt-\u003e olish ()) (echo "

". $ string [" firstname "]." ". $ string [" familiya "]."

"; echo"

". $ string [" email "]."


"; }


Yoki siz olish usulini ushbu usulning o'zida ko'rsatishingiz mumkin -\u003e fetch ()

$ stmt \u003d $ db-\u003e so'rov ("SELECT * FROM jadval"); while ($ row \u003d $ stmt-\u003e olish (PDO :: FETCH_ASSOC)) ($ string ["field1"]. "". $ string ["field2"]; // va hokazo ...) // Diqqat, LIKE bilan ishlamaydigan misol! $ stmt \u003d $ db-\u003e tayyorgarlik ("%%%% maydon qayerda" jadvalidan TANLANISh maydoni "); $ stmt-\u003e bindParam (1, $ qidiruv, PDO :: PARAM_STR); $ stmt-\u003e bajaring (); // Buning keragi bor: $ stmt \u003d $ db-\u003e tayyorgarlik ("Jadvalni KO'RIShGA SO'RA OLGAN maydoncha KERAK?"); $ stmt-\u003e bindValue (1, "% $ qidirish%", PDO :: PARAM_STR); $ stmt-\u003e bajaring (); // yana bir misol $ stmt \u003d $ db-\u003e Tayyorgarlik ("SELECT * FROM jadval qayerda id \u003d? Va nomi \u003d?"); $ stmt-\u003e bindValue (1, $ id, PDO :: PARAM_INT); $ stmt-\u003e bindValue (2, $ nomi, PDO :: PARAM_STR); $ stmt-\u003e bajaring (); $ qatorlar \u003d $ stmt-\u003e fetchAll (PDO :: FETCH_ASSOC); // yana bir variant $ stmt \u003d $ db-\u003e Tayyorgarlik ("SELECT * foydalanuvchilardan"); $ stmt -\u003e bajaring (); while ($ row \u003d $ stmt-\u003e olish ()) (print_r ($ qator);)

PDO UPDATE ma'lumotlari

Bu aslida INSERT va SELECT bilan bir xil bo'ladi (bu holda biz yana nomlangan to'ldiruvchilardan foydalanamiz):

   $ stmt \u003d $ db-\u003e tayyorgarlik ("UPDATE foydalanuvchilari elektron pochta manzilini belgilash \u003d: elektron pochta manziliga familiya \u003d: familiya"); $ stmt-\u003e bindParam (": familiya", $ familiya); $ stmt-\u003e bindParam (": elektron pochta", $ elektron pochta); $ lastname \u003d "Smit"; $ email \u003d "newmail@test.com"; $ stmt-\u003e bajaring ();


Download 51,61 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




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