Turinys
Jei yra kažkas, kas gali sugadinti programą, tai yra tada, kai nenaudojame reikiamų išteklių, kad ji būtų greitesnė ir saugesnė, yra daug būdų, kaip pagerinti programų greitį ir saugumą, tai galima padaryti naudojant geresnius kūrimo modelius, didesnio saugumo taikymas serveriuose ir kt.Tačiau yra momentas, kai daug kartų nenustojame galvoti ir tai yra ta priemonė, kurią mums suteikia kalba, yra geriausia mūsų atliekamam darbui. Tai atsitinka daug PHP Nepaisant to, kad daugelį metų buvo įspėjimas nesinaudoti šia funkcija mysql_connect () užmegzti ryšius su Duomenų bazės, atrodo, kad daugelis kūrėjų nesuvokia didelės klaidos, kurią daro, kai ją naudoja.
PHP turi vietinį palaikymą daugeliui variklių Duomenų bazės egzistuojančių rinkoje, tačiau jos integracija su MySQL tai beveik privalomas atspirties taškas daugumai vartotojų.
mysql_connect ()Iš versijos 5.5 apie PHP klasikinė funkcija mysql_connect () yra valstybėje nebenaudojamas, tai yra, ji pasenusi ir primygtinai rekomenduojama jos nenaudoti, nes ji nebus įtraukta į būsimas kalbos versijas.
Ryšio užmezgimo alternatyva yra du elementai. Pirmasis yra naudoti tą pačią kalbos struktūrą ryšiams užmegzti arba naudoti naują biblioteką. MySQL. Čia gali kilti pirmasis klausimas, kodėl tiesiog galvoti MySQL? Na, atsakymas yra paprastas, tai yra pradžia, tai paprasčiausias ir naudingiausias dalykas, kurį galime paaiškinti iš pradžių, jei žinome šią bazę, galime ekstrapoliuoti kitus variklius ir vairuotojus.
Pirmoji ryšio alternatyva Duomenų bazė yra naudoti pačios kalbos duomenų objektą, vadinamą PHP duomenų objektas arba jo santrumpa SKVN. Tai ne kas kita, kaip didelis rašytinis kalbos pratęsimas C tai leidžia užmegzti ryšius su įvairių tipų varikliais Duomenų bazės ir kad jis turi standartinius metodus, kurie suteikia mums galimybę rašyti kelių platformų programas, tai yra, mes neturime keisti sintaksės, jei pakeisime duomenų bazės variklį.
Iš pradžių pasakėme, kad sutelksime dėmesį MySQLtačiau, jei užmezgsime ryšį per SKVN tai, ką darome, galime pritaikyti kitiems varikliams. Norėdami tai padaryti, turime tik suaktyvinti arba įtraukti minėtų variklių tvarkykles ir suaktyvinti jas faile php.ini iš serverio.
Norėdami prisijungti prie a Duomenų bazė mes tiesiog turime sukurti nuorodą, naudodami jai tinkamą metodą SKVN ryšys pasiekiamas naudojant tris pagrindinius parametrus - duomenų bazės serverio pavadinimą, vartotojo vardą ir slaptažodį.
Vienintelis šių trijų parametras, kurį reikia paaiškinti, yra duomenų bazės serverio parametras, anksčiau turėjome pasirinkti Duomenų bazė Naudodamiesi konkrečia funkcija užmezgus ryšį, šiuo atveju tai darysime toje pačioje eilutėje, todėl mūsų serverio pavadinimo eilutė atrodytų taip:
mysql: pagrindinis kompiuteris = pagrindinio kompiuterio vardas; db vardas = db vardas
Matome, kad iš pradžių nurodome variklį, šiuo atveju mysql tada su pagrindiniu kompiuteriu mes jums pasakysime, kuris yra serveris, čia jis gali būti IP arba vietinis šeimininkas jei serveris yra vietinis, pagaliau su dbname perduodame duomenų bazės, prie kurios norime prisijungti, pavadinimą. Toliau esančiame paveikslėlyje stebėsime, kaip naudojant kodą reikia prisijungti SKVN:
DIDELIS
Šioje paprastoje užklausoje manysime, kad turime lentelę Duomenų bazė skambinti Autorius kuris gauna autoriaus kodą, o po to - jo pavadinimą, žinoma, tai nėra tinkamos lentelės pavyzdys, mums įdomu tik žinoti, kaip veikia ryšys SKVN.
Paveikslėlyje matome, kad mes vadiname metodą, vadinamą užklausa () iš objekto, sukurto naudojant SKVN ryšio eilutę, tada be didelių problemų rašome savo užklausą:
DIDELIS
DIDELIS
Jei norime pasikonsultuoti, kai jau įtraukėme kai kurias vertybes Duomenų bazė tai labai paprasta, mes tiesiog turime tai padaryti su užklausa PASIRINKTI, tai leis mums pateikti įrašus, anksčiau mes priklausėme nuo tokių funkcijų kaip mysql_fetch_array () arba mysql_fetch_assoc () kad vieną kartą suvartojus nebegalėjome vėl valdyti savo rezultatų.
Su SKVN Duomenis gausime tiesiogiai iš objekto, todėl vykdydami juos visada turėsime, toliau pateiktame pavyzdyje pažiūrėkime, kaip tai būtų daroma:
Ką MySQL yra populiariausias duomenų bazių variklis, kurį galima integruoti PHP, taip pat yra alternatyva ir ji yra „MySQLi“ kuri yra ne kas kita, kaip į objektą orientuota sąsaja. Jo veikimo būdas yra labai panašus į SKVNTačiau pasikeičia tai, kad jis skirtas tik šiam populiariam duomenų bazės varikliui, todėl kelių platformų konversija nebūtų įmanoma.
Jo ryšio eilutė yra šiek tiek sudėtingesnė, nes ji dalija serverio pavadinimą pagrindiniame kompiuteryje ir naudojamą duomenų bazę dviem skirtingais parametrais, be vartotojo vardo ir slaptažodžio, pažiūrėkime, kaip tai atrodo:
$ objConex = naujas mysqli (HostName, user, password, DatabaseName);
Šiame pavyzdyje pažiūrėkime, kaip užmezgame ryšį naudodami „MySQLi“ ir kaip galime atlikti paprastą duomenų įterpimą:
DIDELIS
Dabar mes gausime ir kartosime duomenis, kuriuos galime gauti iš užklausos, tam mes naudosime tą patį metodą užklausa () ir tada metodas fetch_assoc () norint gauti rezultatus:
SvarbuTurime turėti omenyje, kad jei turime sistemą, sukurtą senoje versijoje PHP ir mes neperimsime į naujas versijas, galbūt pakeisime ryšio eilutes į Duomenų bazė ir užklausų metodai gali būti netinkama idėja atliekamam darbui. Tačiau jei norime kurti naujas programas ir sistemas, geriausia pradėti nuo tvirto pagrindo naudojant šias naujas bibliotekas ir palaikant būsimas versijas. PHP.
Baigę šią mokymo programą pamatėme, kad naujos alternatyvos yra daug švaresnės ir saugesnės, o dėl jų naudojimo paprastumo jos tinka dabartiniam laikui.Ar jums patiko ir padėjo ši pamoka?Galite apdovanoti autorių paspausdami šį mygtuką, kad suteiktumėte jam teigiamą tašką