[ kazil @ 29.04.2008. 09:35 ] @
Ovako. Imam tabelu sa 33 kolone (i imam osecaj da ce broj kolona samo rasti). Rezultate moram poslati Smarty-ju. Dosad sam ih slao kao asocijativni niz, kod tabela sa manjim brojem kolona, tako da bih sad nastavio isto tako. E sad. Lenj sam da pisem imena 33 kolona, pa bih to nekako da skratim. Uspeo sam da napravim da uzimam imena kolona, samo imam problem kada pravim niz, onda ili u'vatim samo prvu kolonu ili samo poslednju, ove ostale ne mogu nikako... Ovako nesto bih zeleo da dobijem: Code: $niz[prvi_red] => 'ime_prve_kolone' => 'vrednost', => 'ime_druge_kolone' => 'vrednost', => 'ime_trece_kolone' => 'vrednost' $niz[drugi_red] => 'ime_prve_kolone' => 'vrednost', => 'ime_druge_kolone' => 'vrednost', => 'ime_trece_kolone' => 'vrednost' itd... Ovako dobijam samo stvari iz poslednje, 33. kolone: Code: $r0 = $_CP_func->db->sql("SELECT * FROM tabela LIMIT 0, 10"); $i = 0; $r1 = $_CP_func->db->sql("SHOW COLUMNS FROM tabela"); $num_of_fields = $_CP_func->db->sql_rows($r1); while($rec0 = $_CP_func->db->fetch($r0)){ for($j=0;$j<$num_of_fields;$j++){ $meta = mysql_fetch_field($r0,$j); $niz[$i] = array( $meta->name => $rec0[$meta->name] ); } $i++; } A ovako samo iz prve kolone: Code: for($j=0;$j<$num_of_fields;$j++){ $meta = mysql_fetch_field($r0,$j); while($rec0 = $_CP_func->db->fetch($r0)){ $niz[$i] = array( $meta->name => $rec0[$meta->name] ); $i++; } } Najverovatnije se pogubim negde u petljama, ali ne vidim gde... Ima neko ideju? Cheers! :) |