Autor Zpráva
HardRock
Profil *
Učím se pracovat přes PHP s databází MySQL. Napsal sem si tento PHP script:
<?
include "login.php";
$vyber = mysql_query("SELECT * FROM tabulka");
$zpracuj = mysql_fetch_assoc($vyber);
echo $zpracuj["sloupec"];
?>

V databázi mám 5 řádků. Tento PHP script mě vypíše text. Jenže tenhle text pochází z prvního horního sloupce. Jak tedy zařídím aby se text vypsal třeba z 3 sloupce nebo aby to vypsalo text ze všech řádků?
Taps
Profil
HardRock:
zkus. Skript by měl vypsat text všech řádků. Co se týče sloupců tak to zapíšeš takto
$zpracuj["sloupec1"]
$zpracuj["sloupec2"]

atd.
<?
include "login.php";
$vyber = mysql_query("SELECT * FROM tabulka");
while($zpracuj = mysql_fetch_assoc($vyber)){
echo $zpracuj["sloupec"].'<br>';
}
?>
HardRock
Profil *
Aha díky, ještě bych to potřeboval nějak vysvětlit... Jak pracuje ten cyklus?
panther
Profil
HardRock:
projde všechny vybrané řádky z DB a vypíše z nich hodnotu ve sloupci "sloupec".
HardRock
Profil *
Jasný to chápu, ale nikdy sem se s ničím takovým nesetkal. While přece pracuje tak dokud je pravda tak se provádí a tady není žádné porovnání ani podmínka přímo v podmínce ciklu se nastaví proměnná zpracuj. Jak tohle může fungovat?
panther
Profil
HardRock:
While přece pracuje tak dokud je pravda tak se provádí a tady není žádné porovnání ani podmínka
jaktože ne? mysql_fetch_assoc vrací pole výsledků, takže dokud je co procházet, pokračuj. Bez toho cyklu se ti, pochopitelně, vypíše jen poslední řádek ze sady výsledků.
HardRock
Profil *
Aha tak to jo, nevěděl sem přesně co vrací ta funkce... Díky :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: