LXI. MySQL Funkce

Tyto funkce zprost°edkovßvajφ p°φstup na MySQL databßzov² server. Majφ-li b²t tyto funkce dostupnΘ, musφ b²t PHP zkompilovßno s podporou MySQL parametrem --with-mysql. Pokud pou╛ijete tento parametr bez zadanΘ cesty k MySQL, PHP pou╛ije vestav∞nΘ MySQL klient knihovny. U╛ivatelΘ, kte°φ spou╣tφ dal╣φ aplikace pou╛φvajφcφ MySQL (nap°.: spu╣t∞nΘ PHP3 a PHP4 jako vzßjemnΘ moduly v apache Φi auth-mysql) by m∞li v╛dy zadat cestu k MySQL: --with-mysql=/cesta/k/mysql. PHP tak pou╛ije klientskΘ knihovny instalovanΘ MySQL, Φφm╛ se vyvarujete mo╛n²ch konflikt∙m.

Vφce informacφ o MySQL naleznete na http://www.mysql.com/.

Dokumentace k MySQL je na http://www.mysql.com/documentation/.

Chovßnφ funkcφ MySQL je ovlivn∞no nastavenφm v globßlnφm konfihuraΦnφm souboru.

Tabulka 1. Konfigurace MySQL Volby

JmΘnoV²chozφZm∞nitelnΘ
mysql.allow_persistent"On"PHP_INI_SYSTEM
mysql.max_persistent"-1"PHP_INI_SYSTEM
mysql.max_links"-1"PHP_INI_SYSTEM
mysql.default_portNULLPHP_INI_ALL
mysql.default_socketNULLPHP_INI_ALL
mysql.default_hostNULLPHP_INI_ALL
mysql.default_userNULLPHP_INI_ALL
Podrobn² popis a definice konstant PHP_INI_* naleznete v ini_set().

Toto je jednoduch² ukßzkov² p°φklad jak se p°ipojit, provΘst dotaz, zobrazit v²slednΘ °ßdky a odpojit se z MySQL databßze.

P°φklad 1. MySQL extension overview example

<?php
// P°ipojenφ, v²b∞r databßze
$link = mysql_connect("mysql_host", "mysql_login", "mysql_heslo")
    or die("Nelze se p°ipojit");
print "Connected successfully";
mysql_select_db("moje_databaze")
    or die("Nelze vybrat databßzi");

// P°φprava SQL dotazu
$query = "SELECT * FROM moje_tabulka";
$result = mysql_query($query)
    or die("Dotaz nelze provΘst");

// Zobrazenφ v²sledku v HTML
print "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
    print "\t<tr>\n";
    foreach ($line as $col_value) {
        print "\t\t<td>$col_value</td>\n";
    }
    print "\t</tr>\n";
}
print "</table>\n";

// Odpojenφ z MySQL databßze
mysql_close($link);
?>

Obsah
mysql_affected_rows — Vrßtφ poΦet ovlivn∞n²ch (zm∞n∞n²ch) zßznam∙ v MySQL po poslednφm dotazu
mysql_change_user — Zm∞nφ p°ihlß╣enΘho u╛ivatele v souΦasnΘm spojenφ
mysql_close — UkonΦφ (zav°e) MySQL spojenφ
mysql_connect — Vytvo°φ spojenφ s MySQL Serverem
mysql_create_db — Vytvo°φ MySQL databßzi
mysql_data_seek — P°esune ukazatel na aktußlnφ zßznam
mysql_db_name — Vrßtφ seznam v╣ech databßzφ
mysql_db_query — Provede MySQL dotaz
mysql_drop_db — Vyma╛e (odstranφ) MySQL databßzi
mysql_errno — Vrßtφ Φφslenou hodnotu chybovΘ hlß╣ky p°edchozφho MySQL p°φkazu.
mysql_error — Vrßtφ text chybovΘ zprßvy p°edchozφho MySQL p°φkazu.
mysql_escape_string — Upravφ °et∞zec pro pou╛itφ v mysql_query.
mysql_fetch_array — NaΦte v²sledn² °ßdek do asociativnφho, ΦφslenΘho pole nebo obojφho.
mysql_fetch_assoc — NaΦte v²sledn² °ßdek do asociativnφho pole
mysql_fetch_field — NaΦte informace o sloupci z v²sledku do prom∞nnΘ objektu
mysql_fetch_lengths — Zjistφ dΘlku v╣ech polo╛ek aktußlnφho v²stupu
mysql_fetch_object — NaΦte v²sledn² °ßdek do prom∞nnΘ objektu
mysql_fetch_row — NaΦte v²sledn² °ßdek do pole
mysql_field_flags — NaΦte doplnujφcφ informace o polo╛ce
mysql_field_len — Vrßtφ dΘlku polo╛ky
mysql_field_name — NaΦte nßzev polo╛ky
mysql_field_seek — Nastavφ ukazatel na zadan² zßznam
mysql_field_table — Zjistφ jmΘno tabulky, z nφ╛ je zadanß polo╛ka
mysql_field_type — Zjistφ typ polo╛ky v²sledku
mysql_free_result — Uvolnφ v²sledek z pam∞ti
mysql_get_client_info — NaΦte MySQL klient info
mysql_get_host_info — NaΦte MySQL host info
mysql_get_proto_info — NaΦte MySQL protokol info
mysql_get_server_info — NaΦte MySQL server info
mysql_insert_id — Vrßtφ hodnotu id poslednφho p°φkazu INSERT
mysql_list_dbs — NaΦte v╣echny databßze dostupnΘ na MySQL serveru
mysql_list_fields — NaΦte v²sledek s obsahem polo╛ky
mysql_list_tables — NaΦte v╣echny tabulky v MySQL databßzi
mysql_num_fields — Vrßtφ poΦet polo╛ek ve v²sledku
mysql_num_rows — Vrßtφ poΦet zßznam∙ ve v²sledku
mysql_pconnect — Otev°e persistentnφ spojenφ s MySQL serverem
mysql_query — Po╣le MySQL dotaz
mysql_result — NaΦte v²slednou hodnotu jednΘ polo╛ky
mysql_select_db — Vybere MySQL databßzi
mysql_tablename — NaΦte jmΘno tabulky
mysql_unbuffered_query — Po╣le SQL dotaz MySQL bez vykonßnφ a naΦtenφ v²sledn²ch zßznam∙