У меня есть SQL-база данных, где я считываю данные, которые затем отображаются в динамически сгенерированной таблице html. Вот мой код, который работает отлично:Как удалить выбранные столбцы из динамически созданного html-таблицы?
$sql = "SELECT $selection FROM $tabelle WHERE $masterarray";
$result = mysqli_query($db, $sql) or die("Invalid query");
$numrows = mysqli_num_rows($result);
$numcols = mysqli_num_fields($result);
$field = mysqli_fetch_fields($result);
if ($numrows > 0) {
echo "<table>";
echo "<thead>";
echo "<tr>";
echo "<th>" . 'Nr' . "</th>";
for($x=0;$x<$numcols;$x++){
echo "<th>" . $field[$x]->name . "</th>";
}
echo "</tr>";
echo "</thead>";
echo "<tbody>";
echo "<tr>";
$nr = 1;
while ($row = mysqli_fetch_array($result)) {
echo "<td>" . $nr . "</td>";
for ($k=0; $k<$numcols; $k++) {
echo "<td>" . $row[$k] . "</td>"; //Prints the data
}
$nr = $nr + 1;
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
}
}
mysqli_close($db);
Теперь я хочу, чтобы удалить определенные столбцы (например, те, которые являются пустыми или те, которые не так интересны для пользователя, который делает запрос).
Я попробовал его с unset($field[$variable])
, однако это не сработало. Кроме того, значения (если они есть) также должны быть удалены.
Если вы можете, переключитесь с 'mysqli' на' PDO': вы сможете сделать простой 'fetchAll' и использовать' array_column' для повторения каждого столбца и проверить, является ли он интересным. – Xenos