LXIII. MySQL Funkce
Tyto
funkce
zprostředkovávají
přístup
na
MySQL
databázový
server
.
Více
informací
o
MySQL
lze
nalézt
na
http
:
/
/www.mysql.com
/
.
Dokumentace
k
MySQL
je
dostupná
na
http
:
/
/www.mysql.com
/
documentation
/
.
Požadavky
Aby
byly
tyto
funkce
dostupné
,
musí
být
PHP
zkompilováno
s
podporou
MySQL
.
Instalace
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
.
Runtime konfigurace
Chování
funkcí
MySQL
je
ovlivněno
nastavením
v
globálním
konfiguračním
souboru
php.ini
.
Tabulka
1
.
Možnosti
nastavení
MySQL
Podrobný popis a definice konstant PHP_INI_* naleznete v
ini_set()
.
Zde
je
krátké
vysvětlení
konfiguračních
příkazů
.
-
mysql.allow_persistent
boolean
-
Má-li
být
povoleno
persistentní
(
trvalá
)
spojení
s
MySQL
.
-
mysql.max_persistent
integer
-
Maximální
počet
persistentních
spojení
na
jeden
proces
.
-
mysql.max_links
integer
-
Maximální
počet
spojení
s
MySQL
na
jeden
proces
včetně
persistentních
spojení
.
-
mysql.default_port
string
-
Číslo
výchozího
TCP
portu
pro
spojení
s
databázovým
serverem
,
pokud
není
port
zadán
.
Není-li
výchozí
port
zadán
,
použije
se
port
uvedený
v
proměnné
prostředí
MYSQL_TCP_PORT
.
,
záznam
mysql-tcp
v
/
etc
/
services
nebo
"
compile-time
"
konstanta
MYSQL_PORT
,
v
tomto
pořadí
.
Win32
používá
pouze
konstantu
MYSQL_PORT
.
-
mysql.default_socket
string
-
Výchozí
jméno
socketu
pro
připojení
k
lokálnímu
databázovému
serveru
,
není-li
jiný
socket
specifikován
.
-
mysql.default_host
string
-
Výchozí
server
pro
spojení
s
databázovým
serverem
,
není-li
uveden
jiný
.
Nelze
použít
při
bezpečném
režimu
(
safe
mode
)
.
-
mysql.default_user
string
-
Výchozí
uživatel
pro
spojení
s
databázovým
serverem
,
není-li
uveden
jiný
uživatel
.
Nelze
použít
při
bezpečném
režimu
(
safe
mode
)
.
-
mysql.default_password
string
-
Výchozí
heslo
pro
spojení
s
databázovým
serverem
,
není-li
uveeno
jiné
heslo
.
Nelze
použít
při
bezpečném
režimu
(
safe
mode
)
.
Typy zdrojů
V
modulu
MySQL
jsou
použity
dva
typy
zdrojů
.
První
zdroj
je
identifikátor
databázového
spojení
a
druhý
,
který
vykonává
výsledek
dotazu
.
Předdefinované konstanty
Funkce
mysql_fetch_array(
)
používá
konstanty
pro
různé
typy
výsledkových
polí
.
Jsou
definovány
následující
konstanty
:
Tabulka
2
.
MySQL
fetch
konstanty
konstanta
|
popis
|
|
Sloupce
jsou
vraceny
do
pole
jehož
klíčemi
jsou
názvy
sloupců
.
|
|
Sloupce
jsou
vráceny
do
pole
majícího
číslené
i
textové
klíče
,
určující
pořadí
sloupce
v
tabulce
,
respektive
jeho
jméno
.
|
|
Vrací
sloupec
do
pole
s
číselnými
klíči
reprezentujícími
pořadí
sloupce
v
tabulce
.
První
sloupec
tabulky
začíná
klíčem
0
.
|
MYSQL_STORE_RESULT
|
Určuje
,
zda
by
měl
být
výsledek
MySQL
bufferován
.
|
MYSQL_USE_RESULT
|
Určuje
,
zda
by
výsledek
MySQL
neměl
být
bufferován
.
|
Examples
Zde
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
.
Ukázkový
příklad
použití
MySQL
?php
/
/
Připojení
,
výběr
databáze
$link
=
mysql_connect(
"mysql_host"
,
"mysql_login"
,
"mysql_heslo"
)
or
die("Nelze
se
připojit")
;
print
"Připojeno
úspěšně
!"
;
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)
;
?
|
|