PDA

View Full Version : [PHP] Query tabella particolare


Davor1984
11-11-2013, 12:19
Ciao a tutti ragazzi,mi sto letteralmente impiccando per realizzare una semplice lista con i dati presi da una tabella un pò incasinata..Praticamente è fatta cosi:

ID DATO
1 città1
2 indirizzo1
5 nome1
1 città2
2 indirizzo2
5 nome2
1 città3
2 indirizzo3
5 nome3

Io vorrei creare una tabella html da quei dati nel db,fatta in questo modo

nome1 città1 indirizzo1
nome2 città2 indirizzo2
nome3 città3 indirizzo3

Ho provato in vari modi ma la tabella mi viene un pastrocchio:cry:
Grazie ragazzi

Tuvok-LuR-
11-11-2013, 13:25
Ciao a tutti ragazzi,mi sto letteralmente impiccando per realizzare una semplice lista con i dati presi da una tabella un pò incasinata..Praticamente è fatta cosi:

ID DATO
1 città1
2 indirizzo1
5 nome1
1 città2
2 indirizzo2
5 nome2
1 città3
2 indirizzo3
5 nome3

Io vorrei creare una tabella html da quei dati nel db,fatta in questo modo

nome1 città1 indirizzo1
nome2 città2 indirizzo2
nome3 città3 indirizzo3

Ho provato in vari modi ma la tabella mi viene un pastrocchio:cry:
Grazie ragazzi
scusa ma quella è una tabella mysql? non ha alcun senso logico e non c'è alcun modo per raggruppare i valori.
una tabella sql sensata avrebbe una persona per riga, con un id univoco e con i tre campi (nome città indirizzo).

Davor1984
11-11-2013, 14:32
scusa ma quella è una tabella mysql? non ha alcun senso logico e non c'è alcun modo per raggruppare i valori.
una tabella sql sensata avrebbe una persona per riga, con un id univoco e con i tre campi (nome città indirizzo).

Si è Sql è generata da un modulo per drupal..si so che la vera tabella è fatta come dici tu,ma purtroppo quel modulo me la genera cosi..non c'è nessun modo per fare quello che voglio fare io?

Tuvok-LuR-
11-11-2013, 14:51
direi di no, l'unico pattern che vedo è che vanno raggruppati di tre in tre ma non puoi assolutamente fare affidamento sul fatto che una query li ritorni in quell'ordine

Davor1984
11-11-2013, 16:49
direi di no, l'unico pattern che vedo è che vanno raggruppati di tre in tre ma non puoi assolutamente fare affidamento sul fatto che una query li ritorni in quell'ordine

Grazie cmq Tuvok,cercherò di cambiare modulo :cry:

airon
11-11-2013, 17:05
Mi sembra strano che un modulo di drupal lavori in quel modo. Di che modulo stiamo parlando? E cosa devi fare nello specifico? Magari ti possiamo dare una mano.

Jones D. Daemon
12-11-2013, 20:53
se non vuoi cambiare modulo fai così:

$sql = "SELECT * FROM $tabella";

$result = mysqli_query($sql) or die("Errore nella query: " . mysql_error());

$array = mysqli_fetch_assoc($result);

$array = unset($array[0]); // togli l'id dall'array

$multi_array = array_chunk($array, 3); //hai 1 array multidimensionale in cui ogni array secondario contiene i valori che ti servono


poi basta ciclare i risultati e stamparli in una tabella :D