Salve, giungo oggi con un nuovo problema: Ho una tabella (conosciuta) e devo ottenere tutti i suoi dati e le sue colonne (sconosciuti entrambi).
Questa cosa la so fare, cioè ho utilizzato un for dentro ad un while in questo modo:
Codice PHP:
<table border="1" cellspacing="0" cellpadding="0" width="100%">
<thead>
<tr>
<?php
$columns = mysql_query("SHOW COLUMNS FROM $tbl");
$colnum = 0;
$colonne = array();
while($row = mysql_fetch_row($columns)) {
$colnum++;
$colonne[] = $row[0];
}
$width = floor(100 / $colnum);
foreach($colonne as $colonna) {
?>
<td width="<?php echo $width; ?>%">[url="column.php?table=<?php echo $tbl; ?>&column=<?php echo $colonna; ?>"]<?php echo $colonna; ?>[/url]</td>
<?php
}
?>
</tr>
</thead>
<tbody>
<?php
$i = 0;
$selcol = mysql_query("SELECT * FROM $tbl");
while($ref = mysql_fetch_row($selcol)) {
echo '<tr>';
for($x=0;$x<$colnum;$x++) {
echo '<td width="'.$width.'%">';
?>
<form action="<?php echo $MS_linksite; ?>" method="POST" id="<?php echo $x; ?>">
<?php
if($i < count($colonne)) {
?>
<input type="hidden" value="
<?php
echo $colonne[$i];
?>" name="columndata" />
<?php
$i++;
} else {
$i = 0;
?>
<input type="hidden" value="
<?php
echo $colonne[$i];
?>
" name="columndata" />
<?php
$i++;
}
$caratteri = MS_caratteri($width);
?>
<center><a href="#" onClick="document.getElementById('<?php echo $x; ?>').submit();">
<?php
if(strlen($ref[$x]) < $caratteri) {
echo $ref[$x];
} else {
echo substr(htmlspecialchars($ref[$x]), 0, $caratteri)."...";
}
echo '</a></center>';
echo '</td></form>';
}
echo '</tr>';
}
?>
</tbody>
</table>
Riassumendo, $ref[$x] = record, $colonna[$i] = colonna del record.
Sì, funziona bene, ma per fare altre cose (ad esempio selezionare i record della stessa riga con relative colonne saltando il dato che si sta visitando) è davvero un' impresa, quindi conoscete un modo più rapido e meno doloroso per ottenere lo stesso risultato? (Ovviamente permettendo poi di fare ciò che ho scritto sopra tra parentesi)