Salve a tutti... avrei bisogno di creare al volo un array bidimensionale che mi rappresenti i dati all'interno di una tabella estratta da query su un db.
Questo è quello che faccio ora, che funziona molto bene, ma è estremamente lungo:
Codice PHP:
$SQL="SELECT * FROM tabella";
$ris=$_CONN->execute($SQL); //$_CONN è un oggetto che richiama i metodi per interrogare DB
$totalRow = mysql_num_rows($ris);
$contatore=20; //quante righe voglio visualizzare
$riga_iniziale=0; //da dove parto a visualizzare
$n=0; //indice array
for($i=$riga_iniziale;$i<$riga_iniziale+$contatore/*-1*/;$i++){
if($i>=$totalRow) break; //se il ciclo supera il totale righe esce
$arr[$n]["id"]=mysql_result($ris,$i,'id');
$arr[$n]["campo1"]=mysql_result($ris,$i,'campo1');
$arr[$n]["campo2"]=mysql_result($ris,$i,'campo2');
$arr[$n]["campo3"]=mysql_result($ris,$i,'campo3');
...
$arr[$n]["campo_n"]=mysql_result($ris,$i,'campo_n');
$n++; //incremento indice array
}
Il tutto non mi da problemi, ma visto che il nome dell'array associativo per convenzione è sempre uguale a quello del campo sul DB, mi chiedevo se si poteva automatizzare la parte interna al ciclo for
Io pensavo che mysql_result tornasse un array, ma ho notato che se non specifico il campo lui ritorna il primo campo sul record.
Come posso fare?
Grazie