| Autor | Zpráva | ||
|---|---|---|---|
| Droow Profil * |
#1 · Zasláno: 6. 4. 2010, 17:22:51
Zdravim, muzete mi nekdo rict proc mi to do pole ulozi jen hodnoty z prvniho sloupce a u ostatnich to necha prazdne pole ???
tady je kod:
$select = mysql_query("SELECT * FROM ".$table);
$pocet_sloupcu = mysql_num_fields($select);
$sloupce = array();
for($i = 0; $i < $pocet_sloupcu; $i ++) {
$name = mysql_field_name($select,$i);
$y = 0;
echo $name."<br />";
$sloupce[$name] = array();
while($v = mysql_fetch_array($select)) {
$sloupce[$name][$y] = $v[$name];
$y++;
echo $v[$name].", ";
}
echo "<br />";
}
|
||
| Majkl578 Profil |
#2 · Zasláno: 6. 4. 2010, 17:28:36 · Upravil/a: Majkl578
Protože pointer výsledku zůstane na konci a další snaha o průchod pomocí while skončí hned, protože mysql_fetch_array vrátí false.
Můžeš zkusit použít mysql_data_seek(). Nicméně výsledek (resp. jeho využití), kterého se snažíš dosáhnout mnou zůstává nepochopen. Samo o sobě by to šlo řešit jinak. Třeba principiálně nějak takto (pokud jsem správně pochopil význam tvého scriptu): $data = array();
while($row = mysql_fetch_assoc($select)) {
foreach ($row as $key => $value) {
$data[$key][] = $value;
}
} |
||
| AM_ Profil |
#3 · Zasláno: 6. 4. 2010, 18:10:18
Jednou větou bych řekl: nejen v relačních tabulkách je tak nějak přirozenější k datům přistupovat po řádcích a nikoli po sloupcích, proto ti vznikl takovýhle paskvil, když jsi se snažil data plnit po sloupcích. Proto je Majklovo řešení o tolik jednodušší - čte data po řádcích.
|
||
| Droow Profil * |
#4 · Zasláno: 6. 4. 2010, 18:11:34
jojo to je přesně ono ;) díky moc
|
||
|
Časová prodleva: 16 let
|
|||
0