⇧
vadnica-logo
Editor Moj Blog Geselnik Finance Moje storitve O projektu Telegram O meni O meni

PHP in MySQLi (Izboljšan MySQL)

MySQLi je izboljšana različica starejšega MySQL gonilnika. Omogoča nam dostop do MySQL baz podatkov na dva načina: proceduralno (s funkcijami) in objektno. V tej vadnici se bomo osredotočili na proceduralni način, saj je najbolj primeren in tiste, ki se selijo s starejših sistemov.

PRIMER
REZULTAT
Tu bo prikazan rezultat...

Zakaj uporabljati MySQLi?

MySQLi razširitev ponuja številne izboljšave v primerjavi s starim MySQL vmesnikom. Glavne prednosti so:

Primerjava med MySQLi in PDO

Lastnost MySQLi PDO
Podpora bazam Samo MySQL 12 različnih baz
Način dela Proceduralni in objektni Samo objektni
Pripravljeni stavki Da Da (tudi poimenovani)
Hitrost Nekoliko hitrejši (za MySQL) Nekoliko počasnejši

Pri MySQLi povezavi preverimo uspeh s funkcijo mysqli_connect_error(). Če gre kaj narobe, funkcija vrne opis napake, kar nam pomaga pri hitrem odpravljanju težav med razvojem.

Pregled najpogostejših operacij

Spodaj je seznam ključnih ukazov, ki jih bova obdelala v tej vadnici. Vsak ukaz vključuje interaktivni primer, kjer lahko preizkusiš PHP kodo in opazuješ, kako se spreminja vsebina v najinem simulatorju.

Ukaz / Metoda Opis delovanja Primeri
CREATE DATABASE Ustvari novo bazo podatkov na strežniku. ▶ Primer kode
CREATE TABLE Ustvari novo tabelo z določenimi stolpci v bazi. ▶ Primer kode
INSERT INTO Vstavi posamezen zapis v izbrano tabelo. ▶ Primer kode
INSERT MULTIPLE Vstavljanje več vrstic podatkov z enim samim ukazom. ▶ Primer kode
SELECT Pridobi in prikaže podatke iz tabele. ▶ Primer kode
LAST ID Pridobi ID številko zadnjega vstavljenega zapisa. ▶ Primer kode
PREPARED Pripravljeni stavki za varno delo z bazo. ▶ Primer kode
WHERE Filtriranje podatkov glede na določene pogoje. ▶ Primer kode
ORDER BY Razvrščanje rezultatov (npr. po abecedi ali datumu). ▶ Primer kode
DELETE Brisanje določenih zapisov iz tabele. ▶ Primer kode
UPDATE Posodabljanje obstoječih podatkov v tabeli. ▶ Primer kode
REPLACE Zamenja obstoječi zapis ali vstavi novega, če ta še ne obstaja. ▶ Primer kode
LIMIT Omejitev števila vrstic, ki jih želimo prikazati. ▶ Primer kode

PHP MySQLi Hitri priročnik (Cheat Sheet)

V spodnji tabeli se nahaja pregled najpomembnejših PHP MySQLi funkcij in konstant. Za vsako funkcijo si lahko ogledate podroben opis in pripravljen primer kode – preprosto kliknite na gumb v desnem stolpcu, ki vam bo odprl modalno okno s primerom, prilagojenim za naš interaktivni simulator.

Najdeno: -
Ime funkcije / Konstante Opis delovanja Primer v simulatorju
mysqli_affected_rows() Vrne število prizadetih vrstic v zadnji poizvedbi (SELECT, INSERT, UPDATE, DELETE). Odlično za preverjanje uspešnosti operacij. ▶ Primer kode
MYSQLI_ASSOC Konstanta za asociativni način branja podatkov. Omogoča dostop do podatkov preko imen stolpcev (npr. $vrstica['sadez']). ▶ Primer kode
MYSQLI_ASYNC Konstanta, ki omogoča asinhrono izvajanje poizvedb brez čakanja na odgovor strežnika. ▶ Primer kode
mysqli_autocommit() Vklopi ali izklopi samodejno shranjevanje (commit) sprememb v bazi podatkov. ▶ Primer kode
mysqli_begin_transaction() Varno započne novo podatkovno transakcijo (izklopi autocommit). ▶ Primer kode
mysqli_change_user() Spremeni aktivnega uporabnika in privzeto bazo za trenutno odprto povezavo. ▶ Primer kode
mysqli_character_set_name() Vrne privzeti nabor znakov (charset), ki se trenutno uporablja za povezavo. ▶ Primer kode
mysqli_close() Zapre predhodno odprto povezavo z bazo podatkov in sprosti vire. ▶ Primer kode
mysqli_commit() Potrdi in trajno shrani vse spremembe trenutne transakcije v bazo. ▶ Primer kode
mysqli_connect() Odpre novo povezavo z MySQL strežnikom. Osnova za vsako delo z bazo. ▶ Primer kode
mysqli_connect_errno() Vrne kodo napake iz zadnjega poskusa povezovanja s strežnikom. ▶ Primer kode
mysqli_connect_error() Vrne tekstovni opis napake iz zadnjega poskusa povezovanja. ▶ Primer kode
mysqli_data_seek() Premakne notranji kazalec rezultata na poljubno vrstico (npr. ponastavitev na 0). ▶ Primer kode
mysqli_debug() Izvaja napredne operacije razhroščevanja (debugging) za sledenje napakam. ▶ Primer kode
mysqli_dump_debug_info() Izpiše trenutne informacije o razhroščevanju direktno v sistemski dnevnik. ▶ Primer kode
mysqli_errno() Vrne numerično kodo zadnje napake pri izvedbi SQL ukazov. ▶ Primer kode
mysqli_error() Vrne besedilni opis zadnje napake pri izvedbi SQL poizvedbe. ▶ Primer kode
mysqli_error_list() Vrne seznam (matriko) vseh napak za zadnji izvedeni ukaz. ▶ Primer kode
mysqli_fetch_all() Pridobi vse vrstice rezultata naenkrat kot asociativno ali številsko polje. ▶ Primer kode
mysqli_fetch_array() Pridobi naslednjo vrstico rezultata kot kombinirano, številsko ali asociativno matriko. ▶ Primer kode
mysqli_fetch_assoc() Pridobi vrstico rezultata izključno kot asociativno polje (z imeni stolpcev). ▶ Primer kode
mysqli_fetch_field() Vrne informacije o naslednjem stolpcu (polju) v naboru rezultatov kot objekt. ▶ Primer kode
mysqli_fetch_field_direct() Vrne metapodatke za posamezno polje v naboru rezultatov kot objekt. ▶ Primer kode
mysqli_fetch_fields() Vrne matriko objektov, ki vsebujejo podrobne podatke o vseh stolpcih rezultata. ▶ Primer kode
mysqli_fetch_lengths() Vrne dolžine (število znakov) za vsak stolpec v trenutni vrstici rezultata. ▶ Primer kode
mysqli_fetch_object() Vrne trenutno vrstico nabora rezultatov kot objekt z lastnostmi. ▶ Primer kode
mysqli_fetch_row() Pridobi vrstico do katere dostopamo preko številčnih indeksov (od 0 naprej). ▶ Primer kode
mysqli_field_count() Vrne skupno število stolpcev, pridobljenih v zadnji izvedeni poizvedbi. ▶ Primer kode
mysqli_field_seek() Premakne kazalec stolpca na določen odmik (uporabno pri ročnem branju polj). ▶ Primer kode
mysqli_free_result() Sprosti zaseden sistemski pomnilnik, povezan z naborom rezultatov. ▶ Primer kode
mysqli_get_charset() Vrne celoten objekt z informacijami o trenutnem naboru znakov. ▶ Primer kode
mysqli_get_client_info() Vrne različico odjemalske knjižnice MySQL (tekstovni niz). ▶ Primer kode
mysqli_get_client_stats() Vrne podrobno statistiko o odjemalskih procesih in prenosu podatkov. ▶ Primer kode
mysqli_get_client_version() Vrne različico odjemalske knjižnice MySQL kot celo število (npr. 80212). ▶ Primer kode
mysqli_get_connection_stats() Vrne statistične podatke o odprti povezavi odjemalca s strežnikom. ▶ Primer kode
mysqli_get_host_info() Vrne ime gostitelja strežnika in vrsto uporabljene povezave (npr. TCP/IP). ▶ Primer kode
mysqli_get_proto_info() Vrne različico uporabljenega MySQL protokola. ▶ Primer kode
mysqli_get_server_info() Vrne različico MySQL strežnika, na katerega smo povezani. ▶ Primer kode
mysqli_get_server_version() Vrne različico MySQL strežnika kot celo število. ▶ Primer kode
mysqli_get_warnings() Pridobi opozorila (warnings) zadnje izvedene operacije na bazi. ▶ Primer kode
mysqli_info() Vrne dodatne tekstovne informacije o zadnji izvedeni poizvedbi. ▶ Primer kode
mysqli_init() Inicializira MySQLi objekt za uporabo z napredno funkcijo mysqli_real_connect(). ▶ Primer kode
mysqli_insert_id() Vrne samodejno ustvarjen ID (AUTO_INCREMENT) iz zadnje INSERT poizvedbe. ▶ Primer kode
mysqli_kill() Zahteva od strežnika, da nemudoma prekine določeno MySQL nit povezave. ▶ Primer kode
mysqli_more_results() Preveri, ali je na voljo še več naborov rezultatov pri verižnih poizvedbah. ▶ Primer kode
mysqli_multi_query() Izvede eno ali več povezanih SQL poizvedb hkrati, ločenih s podpičjem. ▶ Primer kode
mysqli_next_result() Pripravi in naloži naslednji nabor rezultatov iz verižnega ukaza multi_query(). ▶ Primer kode
mysqli_num_rows() Vrne skupno število vrstic v naboru rezultatov (uporabno samo pri SELECT). ▶ Primer kode
mysqli_options() Nastavi dodatne, napredne možnosti in parametre za delovanje povezave. ▶ Primer kode
mysqli_ping() Preveri (pinga) odprto povezavo ali se poskuša znova samodejno povezati. ▶ Primer kode
mysqli_poll() Anketira asinhone poizvedbe in ugotavlja njihov status izvajanja. ▶ Primer kode
mysqli_prepare() Pripravi varen SQL stavek (Prepared Statement) za kasnejšo izvedbo s parametri. ▶ Primer kode
mysqli_query() Izvede posamezno SQL poizvedbo nad podatkovno bazo. Najpogosteje uporabljena funkcija. ▶ Primer kode
mysqli_real_connect() Vzpostavi napredno in varno povezavo z MySQL strežnikom po inicializaciji z mysqli_init(). ▶ Primer kode
mysqli_real_escape_string() Zavaruje niz pred posebnimi znaki (SQL Injection) pred uporabo v poizvedbi. ▶ Primer kode
mysqli_real_query() Izvede surowo SQL poizvedbo brez avtomatskega varovanja rezultatov v spomin. ▶ Primer kode
mysqli_reap_async_query() Pridobi in vrne končni rezultat iz asinhrone SQL poizvedbe. ▶ Primer kode
mysqli_rollback() Prekliče (povrne) vse operacije trenutne transakcije in povrne prvotno stanje. ▶ Primer kode
mysqli_select_db() Zamenja aktivno (privzeto) podatkovno bazo za vse naslednje poizvedbe. ▶ Primer kode
mysqli_set_charset() Nastavi privzeti nabor znakov odjemalca (npr. nujno za pravilne šumnike: utf8mb4). ▶ Primer kode
mysqli_set_local_infile_handler() Nastavi lastno funkcijo povratnega klica za obdelavo ukaza LOAD DATA LOCAL INFILE. ▶ Primer kode
mysqli_sqlstate() Vrne standardno petznakovno kode SQLSTATE napake za zadnjo operacijo. ▶ Primer kode
mysqli_ssl_set() Nastavi poti do certifikatov za vzpostavitev šifrirane in varne SSL povezave. ▶ Primer kode
mysqli_stat() Vrne celoten trenutni status delovanja MySQL strežnika kot tekstovni niz. ▶ Primer kode
mysqli_stmt_init() Inicializira in vrne prazen objekt stavka, pripravljen za mysqli_stmt_prepare(). ▶ Primer kode
mysqli_stmt_store_result() Prenese nabor rezultatov iz pripravljenega stavka v lokalni pomnilnik. ▶ Primer kode
mysqli_store_result() Prenese in shrani celoten nabor rezultatov zadnje poizvedbe v lokalni spomin odjemalca. ▶ Primer kode
mysqli_thread_id() Vrne unikatno identifikacijsko številko (ID niti) za trenutno odprto povezavo. ▶ Primer kode
mysqli_thread_safe() Preveri in vrne podatek, ali je nameščena MySQLi knjižnica varna za večnitno delovanje. ▶ Primer kode
mysqli_use_result() Sproži branje nabora rezultatov neposredno iz strežnika vrstico po vrstico (brez shranjevanja vsega v RAM). ▶ Primer kode
mysqli_warning_count() Vrne število opozoril, ki so se sprožila med izvajanjem zadnje poizvedbe. ▶ Primer kode