Проблема:
У меня есть таблица, которая распечатывает вертикальную, но я бы хотел, чтобы она печатала горизонталь вместо этого. Любой, кто может дать указания о том, как это можно достичь?
PHP-код:
echo ' <table class="table table-condensed table-bordered neutralize"> <tbody> <tr> <td><b>Kriterium</td> <td><b>Betyg</td> </tr> '; while ($row = mysql_fetch_assoc($result)) { echo ' <tr> <td>'.$i.'</td> <td>'.$row['RID'].'</td> </tr> '; $i++; } echo ' </tbody> </table> ';
Токовый выход:
Желаемый результат:
Прокрутите свои результаты запроса, сначала создав две строки, которые вы хотите, а затем добавьте их в свою таблицу:
$kriterium = ''; $betyg = ''; while ($row = mysql_fetch_assoc($result)) { $kriterium .= '<td>'.$i.'</td>'; $betyg .= '<td>'.$row['RID'].'</td>'; $i++; } echo ' <table class="table table-condensed table-bordered neutralize"> <tbody> <tr> <td><b>Kriterium</td>'.$kriterium .' </tr> <tr> <td><b>Betyg</td>'.$betyg .' </tr> </tbody> </table> ';
Вы можете собирать данные в двухмерном массиве, а затем повторно использовать этот массив для создания вывода в разных форматах:
$rows = array(); $index = 0; while ($row = mysql_fetch_assoc($result)) $rows[0][] = ++$index; $rows[1][] = $row['RID']; } $table = '<table class="table table-condensed table-bordered neutralize"> <tbody> <tr><td><b>Kriterium</b></td><td>%s</td></tr> <tr><td><b>Betyg</b></td><td>%s</td></tr> </tbody> </table>'; printf( $table, implode('</td><td>', $rows[0]), implode('</td><td>', $rows[1]) );