Класа за управљање МиСКЛ базама података са МиСКЛи и пХп

Преглед садржаја
Тхе МиСКЛи проширење је управљачки програм за релациону базу података, користи се у програмском језику пХп за пружање интерфејса са МиСКЛ базама података.
Предности коришћења МиСКЛи -а
Припремљене изјаве: лакше је креирати упите, нуди много сигурности од СКЛ убризгавања, са функцијом:
 $ мискли-> припремити ();
Више упита или упита
Могућност извршавања више упита или упита у вези.
Пример
 $ скла = "СЕЛЕЦТ * фром цлиентс;" $ склб. = "СЕЛЕЦТ*ФРОМ инвоицес ***** БИ цустомерид" $ мискли-> мулти_куери ($ скла; склб) 
Објектно оријентисана
Ова функција МиСКЛи -а омогућава програмеру да користи објекте за побољшање употребе, перформанси и видљивости изворног кода.
Управљачки програм за проширење МиСКЛи се користи у програмском језику ПХП за пружање интерфејса МиСКЛ базама података. Програмери програмског језика ПХП препоручују коришћење МиСКЛи -а када су у питању МиСКЛ серверске верзије 4.1.3 и новије.
Направићемо класу за коришћење од пХп са методама и својствима за манипулацију или управљање било којом базом података.
Час ће бити следећи:
 класа дбмискли {// декларише променљиву за везу публиц $ цоннецтион; // Декларишемо конструктор јавне функције класе __цонструцт ($ хост, $ усер, $ пассворд, $ дб) {} // функцију за креирање табела публиц фунцтион цреате табле ($ скл) {} // Сачувај нове податке у подаци базе података унесите јавну функцију ($ табле, $ фиелд дата) {} // Избришите податке из јавне функције базе података делете ($ табле, $ фиелд дата) {} јавна функција Упдате ($ табле, $ фиелд сет, $ фиелд цондитион) {} / / претрага функције у табели претрага јавних функција ($ табле, $ фиелдс) {}} 
МиСКЛи Веза и класа
За повезивање МиСКЛи сервера морамо позвати методу конструктора и послати четири аргумента су име хоста као што су лоцалхост, корисничко име, лозинка базе података и назив базе података.
У конструктору додајемо везу са сервером:
 јавна функција __цонструцт ($ хост, $ усер, $ пассворд, $ дб) {$ тхис-> цоннецтион = нев мискли ($ хост, $ усер, $ цлав); } 
Онда ћемо га позвати овако:
 // Повезивање са сервером и базом података $ цонецтб = нев дбмискли ("лоцалхост", "роот", "абц123" ц, "Вехицулосдб"); 
Дефинишемо метод за динамичко креирање табела:
 // Функција која креира табеле јавна функција цреатестабле ($ скл) {иф ($ тхис-> цоннецтион-> куери ($ скл) === ТРУЕ) {ецхо "Табела је креирана"; } елсе {ецхо "Није успело: табела није креирана". $ тхис-> цоннецтион-> еррор; }} 
Затим ћемо га позвати овако, креирати скл упит и позвати функцију цреартабла ():
 $ скл = ”ИСПУСТИ ТАБЕЛУ АКО ПОСТОЈЕ 'клијенти`; НАПРАВИ ТАБЕЛУ АКО НЕ ПОСТОЈИ `цустомерс` (` цустомерид` инт (11) НОТ НУЛЛ АУТО_ИНЦРЕМЕНТ, `наме` варцхар (255) НОТ НУЛЛ, ПРИМАРИ КЕИ (` цустомерид`)) ”$ цоннецтб -> цреартабла ($ скл); 
Из пХпМиАдмин -а можемо видети како је табела направљена приликом извршавања пхп скрипта.

Дефинишемо метод за уметање / чување података
Затим креирамо методе зване АБМ или ЦРУД, које ће бити задужене за управљање подацима у табелама. За слање параметара свакој методи користићемо низ где ће индекс низа бити поље табеле, а вредност тог индекса подаци за поље табеле. Сваки назив индекса мора бити затворен у двоструке наводнике, а вредност мора задовољити следећа правила:
  • Вредности низа морају имати једноструке наводнике. Пример "наме" => 'Марија'
  • Нумеричке вредности не смеју имати наводнике. Пример "цена" => 10,50
  • Реч НУЛЛ ИЛИ празна не сме имати наводнике. Пример "цена" => НУЛЛ
 // Креирамо функцију која ће узети као параметар поље поља => дата публиц фунцтион инсерт ($ табле, $ фиелд дата) {// одвајамо податке ако постоји неколико $ фиелд = имплоде (",", арраи_кеис ($ подаци поља)); $ и = 0; фореацх ($ дата фиелдс ас $ индек => $ валуе) {$ дата [$ и] = "'". $ валуе. "'"; $ и ++; } $ дата = имплоде (",", $ дата); // Убацујемо вредности у свако поље ако ($ тхис-> цоннецтион-> куери ("ИНСЕРТ ИНТО $ табле ($ индек) ВАЛУЕС ($ дата)") === ТРУЕ) {ецхо "Нови клијент је уметнут"; } елсе {ецхо "Клијент није уметнут није успео". $ тхис-> цоннецтион-> еррор; }} 
Ми креирамо своју матрицу са подацима који могу доћи из обрасца:
 // Матрица података за уметање $ цустомерс = арраи ("наме" => 'Царлос Моира', "наме" => 'Јосе Триана', "наме" => 'Јулиа Ордонез', "наме" => 'Царла Ангелез' ); 
Затим ћемо је позвати овако, позваћемо функцију уметања („купци“, $ купци) и додати параметре:
 $ цонедб -> инсерт ("клијенти", $ клијенти);
Дефинишемо начин брисања података
Да бисмо извршили операцију брисања, декларишемо низ где ћемо назначити који ред или ид желимо да избришемо.
 // функција за брисање података из табеле јавна функција делете ($ табле, $ датафиелдс) {$ и = 0; фореацх ($ дата фиелдс ас $ индек => $ валуе) {$ дата [$ и] = "'". $ валуе. "'"; $ и ++; } $ фиелд анд дата = имплоде ("И", $ дата); иф ($ тхис-> цоннецтион-> куери ("ДЕЛЕТЕ ФРОМ $ табле ВХЕРЕ $ фиелддата") === ТРУЕ) {иф (мискли_аффецтед_ровс ($ тхис-> цоннецтион)) {ецхо "Запис обрисан"; } елсе {ецхо "Није успело, запис није могуће избрисати". $ тхис-> цоннецтион-> еррор;}} 
Креирамо нашу матрицу са изабраним подацима за брисање који могу доћи из обрасца
 // Матрица података за брисање $ цустомерс делете = арраи ("цустомер ид" => 1, "цустомер ид" => 50, "цустомер ид" => 8, "цустомер ид" => 104); 
Затим ћемо је позвати овако, позваћемо функцију брисања ("цустомерс", $ цустомерс делете) и додати параметре
 $ цонецтадб -> делете („клијенти“, $ цлиентс брисање);
Дефинишемо начин ажурирања података
Да бисмо ажурирали податке реда који морамо да изменимо, прогласићемо два асоцијативна низа, један ће бити за измену поља, а други за услов где у СКЛ упиту. Правила матрице морају се придржавати исте синтаксе коју смо дефинисали за матрицу од почетка.
Узимајући у обзир синтаксу ажурирања МиСКЛ:
 УПДАТЕ Цлиентс СЕТ наме = 'невнаме' ВХЕРЕ цлиентид.ид = идвалуе; // Креирамо функцију која ће узети као параметар поље поља => јавна функција података Упдате ($ табле, $ сетфиелдс, $ цондитионфиелдс) {// одвајамо вредности СЕТ да бисмо изменили $ и = 0; фореацх ($ цампоссет као $ индек => $ дата) {$ сет података [$ и] = $ индек. "= '". $ дата. "'"; $ и ++; } $ куерисет = имплоде (",", $ датосет); $ и = 0; фореацх ($ цондитионфиелдс ас $ индек => $ цондитиондата) {$ цондитион [$ и] = $ индек. "= '". $ цондитиондата. "'"; $ и ++; } $ куерицондитион = имплоде ("И", $ цондитион); // Ажурирај записе иф ($ тхис-> цоннецтион-> куери ("УПДАТЕ $ табле СЕТ $ куерисет ВХЕРЕ $ куерицондитион") === ТРУЕ) {иф (мискли_аффецтед_ровс ($ тхис-> цоннецтион)) {ецхо "Запис ажуриран"; } елсе {ецхо "Није успело, запис није могуће избрисати". $ тхис-> цоннецтион-> еррор;}} 
Креирамо наш низ са подацима СЕТ који ће бити поља за ажурирање и новим вредностима, такође стварамо низ за услов ВХЕРЕ са ид записа за ажурирање који може доћи из обрасца:
 // Матрица података СЕТ $ цустомерссет = арраи ("наме" => 'Царлос Јуан Долфо', "наме" => 'Педро Дориен Триана', "наме" => 'Енрикуе Ордонез', "наме" => 'Царла Долорес Ангелес '); $ цустомерсвхере = арраи ("цустомерид" => 1, "цустомерид" => 2, "цустомерид" => 5, "цустомерид" => 10); 
Затим ћемо је позвати овако, позовемо функцију Упдате ("купаци", $ цустомерссет, $ цустомерсвхере) и додамо јој параметре.
 $ дбцоннецт-> Ажурирање ("цлиентс", $ цлиентссет, $ цлиентсвхере);
У свим упитима користимо изворну МиСКЛи функцију за откривање грешака $ мискли-> грешка, која ће приказати поруку о грешци за било који СКЛ упит или МиСКЛи функцију која је можда извршена и није успела, тако да можемо знати зашто је дошло до грешке.
Дефинишемо метод претраживања података
Да бисмо добили податке из табеле, креирамо методу упита са два параметра, један је назив табеле, а други је низ који садржи назив колона и вредност за претрагу.
Можемо навести врсту матрице резултата коју треба добити. Могуће вредности за овај параметар су константе МИСКЛИ_АССОЦ, МИСКЛИ_НУМ.
Тип низа МИСКЛИ_АССОЦ
 Поље {наме => 'Царлос Јуан Долфо', наме ”=> 'Енрикуе Ордонез'} 
Тип низа МИСКЛИ_НУМ
 Поље {0 => 'Царлос Јуан Долфо', 1 => 'Енрикуе Ордонез'} претрага јавних функција ($ табле, $ фиелдс) {$ фиелдс = имплоде (",", $ фиелдс); $ ресулт = $ тхис-> цоннецтион-> куери ("СЕЛЕЦТ $ фиелдс ФРОМ $ табле"); ретурн $ ресулт-> фетцх_алл (МИСКЛИ_АССОЦ); } 
Креирамо нашу матрицу са подацима за претраживање који могу доћи из облика:
 // Низ података за претраживање $ цлиентс сеарцх = арраи ("ид клијента", "име"); 
Затим ћемо је позвати овако, позваћемо функцију претраживања („цустомерс“, $ цустомерс сеарцх) и додати параметре:
 $ цоннецтдб -> претрага ($ табле, $ цлиентс сеарцх);
Ова функција враћа а рецорсет кроз који ћемо морати да прођемо као низ да бисмо видели податке сваког поља:Да ли вам се допао и помогао овај водич?Можете наградити аутора притиском на ово дугме да бисте му дали позитиван поен
wave wave wave wave wave