Salve, dovrei suddividere dei dati richiamati da un database in colonne.
I dati sono suddivisi per lettere quindi dovrei strutturare come segue. I dati sono suddivisi per lettera iniziale e quindi quello che vorrei ottenere è una tabella come quella qui sotto che racchiude in ogni riga dei dati.
codice:
[ A ][ D ]
[ dati lettera A ][ nessun dato D ]
[ dati lettera A ][ ]
[ B ][ E ]
[ nessun dato B ][ dati lettera E ]
[ ][ dati lettera E ]
[ C ][ F ]
[ ][ ]
Sono riuscito ad ottenere qualcosa di simile, ma praticamente le celle non hanno la stessa altezza e alcune risultano più corte di altre e si perde tutto l'allineamento, perchè quello che ho ottenuto io sono diverse celle che contengono un'altra tabella con all'intero le righe con i dati.
Se per esempio la lettera A ha dentro 2 dei dati e la lettera D no, la lettera E parte subito dopo la cella D e non è più allineata con la cella B.
La cosa è un po' difficile da spiegare. Vi posto il mio codice.
Codice PHP:
echo '<table>
<tr>
<td>';
foreach($lettere as $key=>$lettera) {
$n++;
if($n == ceil(count($lettere)/2)) {
echo '</td><td>';
}
echo '<table>
<tr>
<td colspan="2">
<div>
<a name="' . $lettera . '"></a>
<h2>' . strtoupper($lettera) . '</h2>
</div>
</td>
</tr>';
if($contents[$lettera] == 'empty') {
echo '<tr>
<td>
Nessun dato</p>
</td>
</tr>';
} else {
for($k=0;$k<count($contents[$lettera]);$k++) {
echo '<tr>
<td>
[url="' . $contents[$lettera][$k]['url'] .'"]' . $contents[$lettera][$k]['titolo'] . '[/url]
</td>
<td>'
. $contents[$lettera][$k]['desc'] . '
</td>
</tr>';
}
}
echo '</table>';
}
echo '</td>
</tr>
</table>';
spero che qualcuno possa aiutarmi con il mio problema..non riesco proprio a risolverlo