Manuál PHP | ||
---|---|---|
Předcházející | Další |
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://dev.mysql.com/doc/.
Aby byly tyto funkce dostupné, musí být PHP zkompilováno s podporou MySQL.
Použitím konfigurační volby --with-mysql[=DIR] povolíte PHP přistupovat k MySQL databázím.
V PHP 4 je volba --with-mysql ve výchozím nastavení povolena. Pro zakázání MySQL můžete použít volbu --without-mysql. Pokud v PHP 4 povolíte MySQL bez zadání cesty k MySQL, PHP použije přibalené klientské knihovny MySQL. Pod Windows není potřeba žádné DLL, je přímo obsaženo v PHP 4. Uživatelé, kteří používají jiné aplikace, které používají MySQL (například auth-mysql) by neměli použít přibalené knihovny, ale měli by raději určit cestu k instalačnímu adresáři MySQL, např.: --with-mysql=/path/to/mysql. To přinutí PHP používat klientské knihovny instalované MySQL, čímž se vyhnete případným konfliktům.
V PHP 5 není ve výchozím nastavení MySQL nadále zapnuto ani nejsou k dispozici přibalené knihovny MySQL. Přečtěte si tuto FAQ s vysvětlením důvodů.
Toto MySQL rozšíření nebude pracovat s MySQL verzemi většími než 4.1.0. Pro tyto verze použijte MySQLi.
Varování |
Padání a problémy při startu PHP mohou nastat, pokud nahráváte toto rozšíření spolu s rozšířením recode. Viz rozšíření recode pro bližší informace. |
Poznámka: Pokud potřebujete kódové stránky jiné než latin (výchozí), musíte nainstalovat externí (ne přibalenou) knihovnu se zakompilovanou podporou kódových stránek.
Chování těchto funkcí je ovlivněno nastavením parametrů v php.ini.
Tabulka 1. Možnosti nastavení MySQL
Jméno | Vý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_port | NULL | PHP_INI_ALL |
mysql.default_socket | NULL | PHP_INI_ALL |
mysql.default_host | NULL | PHP_INI_ALL |
mysql.default_user | NULL | PHP_INI_ALL |
mysql.default_password | NULL | PHP_INI_ALL |
mysql.connect_timeout | "0" | PHP_INI_SYSTEM |
Here's a short explanation of the configuration directives.
Má-li být povoleno persistentní (trvalá) spojení s MySQL.
Maximální počet persistentních spojení na jeden proces.
Maximální počet spojení s MySQL na jeden proces včetně persistentních spojení.
Čí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.
Výchozí jméno socketu pro připojení k lokálnímu databázovému serveru, není-li jiný socket specifikován.
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).
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).
Výchozí heslo pro spojení s databázovým serverem, není-li uvedeno jiné heslo. Nelze použít při bezpečném režimu (safe mode).
Timeout připojení v sekundách. Na Linuxu je tento timeout použit také pro čekání na první odpověď serveru.
V MySQL modulu jsou použity dva typy zdrojů. První je identifikátor spojení pro připojení k databázi a druhý uchovává výsledek dotazu.
Tyto konstanty jsou definovány tímto rozšířením a budou k dispozici pouze tehdy, bylo-li rozšíření zkompilováno společně s PHP nebo dynamicky zavedeno za běhu.
Od PHP 4.3.0 je možné nastavit klienta doplňujícími parametry pro funkce mysql_connect() a mysql_pconnect() Jsou definovány následující konstanty:
Tabulka 2. MySQL klientské konstanty
Konstanta | Popis |
---|---|
MYSQL_CLIENT_COMPRESS | Použije kompresní protokol |
MYSQL_CLIENT_IGNORE_SPACE | Povolí mezeru za názvy funkcí |
MYSQL_CLIENT_INTERACTIVE | Povolí interactive_timeout sekundy (namísto wait_timeout) neaktivity před uzavřením spojení. |
Funkce mysql_fetch_array() používá konstanty pro různé typy výsledkových polí. Jsou definovány následující konstanty:
Tabulka 3. MySQL fetch konstanty
Konstanta | Popis |
---|---|
MYSQL_ASSOC | Sloupce jsou vraceny do pole jehož klíčemi jsou názvy sloupců. |
MYSQL_BOTH | 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. |
MYSQL_NUM | 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. |
Tento jednoduchý příklad ukazuje jak se připojit, provést dotaz, zobrazit výsledné řádky a odpojit se z MySQL databáze.
Předcházející | Domů | Další |
muscat_setup | Nahoru | mysql_affected_rows |