nacteni dat z DB do pole
9 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Cau, prosim poradte mi, jak nacist data z tabulky do jendorozmerneho pole. Muj skript nefunguje: $vysledek1=mysql_query("SELECT * FROM 'tab' WHERE id_sk=1 ORDER BY RAND()"); $tym_prvni_sk=array(); $a=0; while($zaznam=mysql_fetch_row($vysledek1)) { $tym_prvni_sk[$a]=$zaznam["polozka"]; $a++; echo "$tym_prvni_sk[".$a."]=".$tym_prvni_sk[$a]."<br>"; } Jde mi hlavne o nacteni dat z tabulky do pole.
-
mozna by bylodobre napsat, co nefunguje... nic mene "ORDER BY RAND()" je hodne ulet. Toto neni dobre.. jinak to vypada dobre. mozna je zbytecne delat $pole[$a]=$zaznam[x]; staci $pole[] = $zaznam; a vyhodit $a
-
Zovna to ORDER BY RAND( ) je normální fungující struktura. Jinak se mi to nechce zkoušet, ale přemýšlel jsem, proč strkat výstup z db do pole. A nic mě nenapadlo...
-
je to vicemene pro prehlednost, pac s tema polema pak pracuju dale v celkem slozitych skriptech. Tak jsem si to chtel nejdriv nahazet do pole a pak s tim pracovat. Potreboval bych oindexovane pole. Abych to mohl ovladat pomoci cyklu for. Kdyz bych to udelal bez $a, tak by mi to nahazelo hodnoty za sebe, a bez indexu bych z toho pole nedostal co potrebuju, teda aspon myslim. To echo na konci melo byt kontrolni, jestli to vubec facha, ale misto toho mi napsal eror: expect T_STRING, nebo tak neco....
-
no fakt 'order by rand()', no toto? (-; $a[] = 1; $a[] = 2; $a[] = 3; stvori pole ktere vypada takto: v $a[0] je 1 v $a[1] je 2 v $a[2] je 3 ted se na to divam podruhe... ono to funguje, akorat do $a[1] priadis "neco" a pak se divas na $a[2], kde nic neni. zkus za cyklem pro kontrolu napsat radeji: print_r($a);
-
jezismarjaa uz to vidim, trochu trapas :) ...a co dela print_r? Jinak nevim co mas proti order by(), zatim mi to vsude fungovalo :)
-
jen tak pro presnost, jak se zadava oindexovane pole? $pole[$a] nebo $pole[a]. No mozna by to slo udelat bez indexu. Nejdriv by se v cyklu pole postupne naplnovalo a pak by se postupne vyprazdnovalo. $vysledek1=mysql_query("SELECT * FROM 'tab' WHERE id_sk=1 ORDER BY RAND()"); $tym_prvni_sk=array(); while($zaznam=mysql_fetch_row($vysledek1)) { $tym_prvni_sk[]=$zaznam["polozka"]; echo $tym_prvni_sk[]."<br>"; } Myslite, ze by to slo?
-
ne neslo :) teda ukladani jde, ale nacitani jen s indexem, ci jakymkoliv jinym identifikatorem. Pole s indexem: $pole[$a] ...jo a na zaver - VYHYBEJTE SE POUZIVANI myslq_fetch_row a radsi pouzivejte mysql_fetch_array!
-
jendakenda: > VYHYBEJTE SE POUZIVANI myslq_fetch_row a radsi pouzivejte mysql_fetch_array! Proc jako?Nevidim jedinej duvod.Osobne radsi pouzivam stejne pole ciselne a ne asociativni. i to totiz ma sve vyhody. BTW dotaz mas: SELECT * FROM 'tab' WHERE id_sk=1 ORDER BY RAND() Vidis rozdil v porovnani s SELECT * FROM tab WHERE id_sk='1' ORDER BY RAND() , coz jsi mel asi namysli?