PHP pre začiatočníkov - Výpis dát z databázy, 13.diel
PHP pre začiatočníkov - Výpis dát z databázy, 13.diel
Ak už viete zapisovať dáta do databázy určite vám láme hlavou myšlienka ako ich dostať von resp. ako ich vypísať na stránku. Po prečítaní článku to zistíte.
Hlavnou funkciou pre výpis záznamov je mysql_fetch_array(). Vracia jeden riadok
dát v ľubovolnom formáte. Funkcia, ktorá bude vypisovať dáta s databázy by mala
mať nasledujúci formát:
V tejto tabuľke vidíte oproti sebe stojace funkcie, ktoré sú si podobné a majú
aj podobný efekt. Samozrejme je najlepšie používať funkciu mysql_fetch_array() a
vyberať si výpis dát s argumentmi alebo aj bez nich.
Výpis dát v php bude vyzerať takto:
V nasledujúcej časti si ukážeme ako vypísať počet záznamov s databázy.
$data = mysql_fetch_array($sql);Do hodnoty premennej $sql uložíme označenie dát s databázy pomocou príkazu select a funkcie mysql_query().
$sql = mysql_query("SELECT * FROM tabulka");
$data = mysql_fetch_array($sql);
Funkcia mysql_fetch_array() má aj nepovinné argumenty. Označujú nám výber polí s
databázy resp. či je pole asociatívne, indexové alebo oboje. V dieli kde som
písal o poliach som vysvetlil aké sú to asociatívne aj indexové ale ak si to
nepamätáte, tak nevadí. Asociatívne nám budú odkazovať na nejaký stĺpec v tabuľke,
čo bude mať tento tvar:
$data = mysql_fetch_array($sql, MYSQL_ASSOC); $nick = $data["nick"]; $email = $data["email"];Naopak indexové nebudú odkazovať na stĺpec v tabuľke ich menom ale ich poradím. Indexovanie sa bude začínať od čísla 0, tak ako to bolo u polí. Zápis do premenných bude vyzerať takto:
$data = mysql_fetch_array($sql, MYSQL_NUM); $nick = $data["1"]; $email = $data["2"];Argument MYSQL_BOTH môže využívať všetky s uvedených možností a tak jeho použitie uvádzať asi nemusím. Taktiež môžete namiesto funkcie mysql_fetch_array použiť aj funkcie, ktoré budú vyhradené iba pre jeden s argumentov.
| mysql_fetch_array($sql, MYSQL_NUM) | mysql_fetch_row() |
| mysql_fetch_array($sql, MYSQL_ASSOC) | mysql_fetch_assoc() |
<?php
require_once("mysql.php");
while ($data = mysql_fetch_array($sql, MYSQL_BOTH)){
$nick = $data["nick"];
$email = $data["email"];
echo "Nickname: $nick | Email: $email<br />n";
}
?>
Na výpis dát sme použili cyklus while. Pomocou tohto cyklu sa nám dáta budú vypisovať
dovtedy až kým sa nenačítajú a nenapíšu všetky. Je to vhodné ak v tabuľke máte
viac ako len jeden záznam. Teraz sú dáta načítané a vypísané.
V nasledujúcej časti si ukážeme ako vypísať počet záznamov s databázy.
Autor: PaBi3 ·
Kategória: Programovanie ·
Dátum: 13.05.2005 14:53


![Hlasová verzia [Pre internetový prehliadač Opera] Voice](modules/items/voice.png)
Komentáre
akým príkazom sa dá vypísať len jedno pole? napriklad stlpec MENO a riadok v tabulke 5?
dakujem
heelp :)
echo $data["datum"].$nick = $data["nick"];
$email = $data["email"];
?
$sql = mysql_query("SELECT * FROM tabulka LIMIT 10");SELECT * FROM tabulka LIMIT 10 OFFSET nČíslo n definuje počet údajov, ktoré budú vynechané.