začatečnický dotaz (mysql)
3 příspěvky
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Zdravim začal jsem si hrát s php a myql a podařilo se mi pres php ukladat data do databaze, ale když se snažím tímto příkazem je z tama vytáhnout a vypsat tak mi to nefunguje. Prosím poradte jak to opravit :) Dík moc. <?php $db=xx; $tb=yy; $connect=mysql_connect("mysql.wz.cz","xx","yy"); mysql_select_db($db,$connect); for($i=0;$i<21;$i++) { $vkaz1=mysql_query("SELECT Nick from $tb WHERE ID='$i'",$connect); $vkaz2=mysql_query("SELECT Message from $tb WHERE ID='$i'",$connect); echo 'Vkaz od :'.$vkaz1.' <br/>'; echo 'Napsal : '.$vkaz2.' <br/>'; } ?>
-
V prvé řadě funkce mysql_query() vrací ukazatel a ne data. Data z něj lze vypsat pomoci mysql_fetch_array($ukazatel_od_query). Ten sám o sobě vypíše pouze jeden řádek. Pro vypsání dalších řádků je potřeba tuto funkci zavolat znovu, proto se k tomu používají cykly. V druhé řadě je potřeba porozumět problematice databází. Co je databáze, tabulka, sloupce, řádky. A jak se s ními pracuji. Váš příklad je ukázkou toho, jak se to nemá dělat. Správná podoba by měla být třeba takto: <?php $db=xx; $tb=yy; $connect=mysql_connect("mysql.wz.cz","xx","yy"); mysql_select_db($db,$connect); $query = mysql_query("SELECT Nick,Message FROM $tb WHERE ID < 21",$connect); while ( $radek = mysql_fetch_array($query) ) { echo 'Vkaz od :'. $radek['Nick'] .' <br/>'; echo 'Napsal : '. $radek['Message'] .' <br/>'; } ?> Vzhledem k charakteru pravděpodobného použití, bych SQL příkaz upravil na $query = mysql_query("SELECT Nick,Message FROM $tb LIMIT 0,20",$connect);
-
Díky