Autor Zpráva
Pavel Prochazka.zde.cz
Profil *
zdravim. mam takovito dotazek:

$dotaz_anketa = MySQL_Query("SELECT * FROM otazka_anketa WHERE platna='1'", $GLOBALS["link"]);

a pozadovane parametry vybiram takto:
$zobrazovat = MySQL_Result($dotaz_anketa, $cislo_ankety, "zobrazovat");
$all_hlasy = MySQL_Result($dotaz_anketa, $cislo_ankety, "all_hlasy");
$sirka = MySQL_Result($dotaz_anketa, $cislo_ankety, "sirka");

jde to nejak minimalizovat?
aby me to nacetlo celou vybranou tabulku najednou?
Abych se nemusel pokazde dotazovat na konkretni polozky vybrane tabulky.....
souki
Profil
$dotaz_anketa = MySQL_Query("SELECT * FROM otazka_anketa WHERE platna='1'", $GLOBALS["link"]);
while($out = mysql_fetch_assoc($dotaz)){
echo $out['zobrazovat']; // vypíše pole "zobrazovat"
echo $out['sirka']; // vypíše pole "sirka"
}
Pavel Prochazka.zde.cz
Profil *
souki aha, zajimave.... ale bohu u tveho navrhu specifikovat promennou: $cislo_ankety
souki
Profil
$dotaz_anketa = MySQL_Query("SELECT zobrazovat,all_hlasy,sirka FROM otazka_anketa WHERE platna='1'", $GLOBALS["link"]);
while(list($zobrazovat,$all_hlasy,$sirka) = mysql_fetch_row($dotaz_anketa)){
//kód
}
Pavel Prochazka.zde.cz
Profil *
souki tedka mohu vsechny parametery vybirat v jednom volani funkce: mysql_fetch_row, skveli, to se muze nekdy hodit, ale porad pretrvava problem ze nemohu specifikovat ktery zaznam vybrat.....
Jde me o toto: pomoci prvotniho dotazu:
MySQL_Query("SELECT * FROM otazka_anketa WHERE platna='1'", $GLOBALS["link"]);
si vyberu vsechny ankety ktere jsou platne (jako ze se maji zobrazovat), potom zjistim kolin me funkce vratila parametru...
pomoci:
$pocet_anket = MySQL_Num_Rows($dotaz_anketa);
a posleze vygeneruji nahodne cislo do hodnoty $pocet_anket.
Tim zajistim ze se me ankety pokazde nahodne zobrazuji.....
$cislo_ankety = rand (0, $pocet_anket - 1);
a tedka potrebuji si vybrat pozadovane parametry se specifikaci: $pocet_anket.
tak jak to mam udelane pomoci tohoto:
$all_hlasy = MySQL_Result($dotaz_anketa, $cislo_ankety, "all_hlasy");
ale zde je problem ze musim pokazde vybirat po jednom parametru, kdyby sla nejak nacist do pole celou tabulku kde budu mejt vsechny parametry k dane jedne ankety. Nadejne vypada: mysql_fetch_row ale jak specifikovat ze chci az treti zaznem, nechci to provadet pomoci cyklu, me zajimaji az data ktere jsou az (specifikovane v promenne $pocet_anket).
souki
Profil
$dotaz_anketa = MySQL_Query("SELECT zobrazovat,all_hlasy,sirka FROM otazka_anketa WHERE platna='1' LIMIT 3,1", $GLOBALS["link"]);
while(list($zobrazovat,$all_hlasy,$sirka) = mysql_fetch_row($dotaz_anketa)){
//kód
}


ale imho na to jdeš moc složitě
Pavel Prochazka.zde.cz
Profil *
souki ok,ok, tak me prozradis jak se to dela spravne?
nightfish
Profil
pokud chceš vybrat jeden náhodný řádek z platných anket, tak třeba:

$dotaz_anketa = MySQL_Query("SELECT zobrazovat,all_hlasy,sirka FROM otazka_anketa WHERE platna='1' ORDER BY RAND() LIMIT 0, 1", $GLOBALS["link"]);
while(list($zobrazovat,$all_hlasy,$sirka) = mysql_fetch_row($dotaz_anketa)){
//kód
}

a pokud nechceš, tak se zkus vyjádřit exaktněji
Pavel Prochazka.zde.cz
Profil *
nightfish super, to vypada perfektne, ale mam jeste jeden dotazek, proc je vyber tedka v cyklu:
while(list($zobrazovat,$all_hlasy,$sirka) = mysql_fetch_row($dotaz_anketa))
kdyz nactu jednu anketu?
souki
Profil
Pavel Prochazka.zde.cz
Protože si chtěl cyklus :) Samozřejmě ho můžeš vypustit

$dotaz_anketa = MySQL_Query("SELECT zobrazovat,all_hlasy,sirka FROM otazka_anketa WHERE platna='1' ORDER BY RAND() LIMIT 0, 1", $GLOBALS["link"]);
list($zobrazovat,$all_hlasy,$sirka) = mysql_fetch_row($dotaz_anketa);
//kód
Pavel Prochazka.zde.cz
Profil *
souki ok, ja totiz nevedel ze to jde i bez cyklu, nacist vsechny pozadovane hodnoty.....
tak vsem mooooc diky, uz to cele predelavam, respektive tedka komentuji uz nepotrebny kod:):):).
Pavel Prochazka.zde.cz
Profil *
tedka jsem to uz optimalizoval a z 11 dotazu na databazi uz je jen 4...:):)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0