Tablas dinámicas con Foreach PHP y MySQL
Tablas dinámicas con Foreach PHP. En este artículo veremos como crear tablas HTML haciendo uso del ciclo foreach y como motor de datos un array y otro de la base de datos MySQL
Tablas dinámicas con Foreach PHP y MySQL
A continuación, destacaremos 2 ejemplos completos de como generar tablas dinámicas en columnas a elegir a través del ciclo foreach.
Primer ejemplo: Mostrar 3 columnas con PHP Array
Si deseamos crear una tabla HTML con el ciclo foreach usando un array como motor de datos, aquí te dejo un ejemplo completo
<?php
$value = [
['no' => '1', 'title' => 'Book', 'data' => 'Susan'],
['no' => '2', 'title' => 'Comic', 'data' => 'Budi'],
['no' => '3', 'title' => 'Recipe', 'data' => 'Anwar'],
['no' => '4', 'title' => 'Magazine', 'data' => 'Leo'],
['no' => '5', 'title' => 'Novel', 'data' => 'Clara'],
['no' => '6', 'title' => 'News', 'data' => 'Jorge']
];
$value = array_chunk($value, 3);
echo '<table border="1">';
foreach ($value as $row) {
echo '<tr>';
foreach ($row as $item) {
echo '<td>'.$item['no'].'</td>';
echo '<td>'.$item['title'].'</td>';
echo '<td>'.$item['data'].'</td>';
}
echo '</tr>';
}
echo '</table>';
?>
El código anterior al ser ejecutado nos mostrara como resultados la siguiente tabla. Sin embargo, hemos configurado para que muestre 3 columnas.
Recordemos que podemos configurar 1, 2, 3 o más columnas y el resultado será la cantidad de columnas que hemos colocado. Además, recuerda que todo se basa en la cantidad de registros que tengamos.
Segundo ejemplo: 3 columnas usando PHP y MySQL
En este otro ejemplo hemos aplicado como motor de datos una base de datos MySQL con su respectiva tabla
<?php
$usuario = "root";
$password = "";
$basededatos = "php_personal";
$connect = new PDO('mysql:host=localhost;dbname='.$basededatos.'', $usuario, $password);
$sql = "SELECT * FROM personal limit 7";
$query = $connect -> prepare($sql);
$query -> execute();
$row = $query -> fetchAll();
$i = 0;
echo '<table border="1">';
foreach ($row as $item) {$i++;
echo '<tr>';
echo '<td>'.$item['name'].'</td>';
echo '<td>'.$item['last_name'].'</td>';
echo '<td>'.$item['email'].'</td>';
if($i%3 == 0) {
echo '</tr><tr>';
}
echo '</tr>';
}
echo '</table>';
?>
Al ejecutar el código anterior mostrara lo siguiente
Resumen y conclusiones
En este articulo hemos aprendido a gestionar tablas HTML usando PHP con el ciclo foreach y una base de datos llamado MySQL.
Hemos trabajado con dos ejemplos: uno con datos estáticos y otro con datos dinámicos como el de una base de datos. Además, para lograr una conexión segura hemos usado la conexión usando PDO, más una consulta SQL y presupuesto el ciclo foreach.
saludos , tengo una consulta, como se hacer para registrar varios ampos de una tabla en otra,
tengo un formulario que me recibe los valores pòr $_POST, otros los estraigo en una consulta de mysql,
para luego ser insertados en otra tabla. como puedo unir los valores por post y los de la consulta para luego ser inserados en otra tabla, cuando tengo varios resultados en la consulta. ejemplo consulto es una lista de productos y quiero guardar todos los productos que pertenezcan el grupo de una marca x.