consultar una base de datos con PDO


Para consultar una base de datos, para extraer los registos de la misma para una tabla html, tenemos que hacer lo seguiente:

Lo prmero que tenemos que tener es la base de datos y algunos registros para poder extraelos

En otras entradas ya tenemos como crear una Base de datos

Tambien tenemos como crear una tabla

En esa tabla tenemos que tener algunos registros; los podemos poner manualmente o atravez de un formulario html o ainda atravez de sql

podemos ver como Insertar una categoria y subcategoria


...

tabla en html

Los datos los vamos a recebir en una tabla html, parecida con la seguiente:

        <div class="card">
    <div class="card-header">
        <div>
            <h2>Lista de puestos <span><a name="" id="" class="btn btn-primary" href="./crear.php" role="button">Agregar
                        Puesto</a></span></h2>
        </div>
    </div>
    <div class="card-body">
        <div class="table-responsive ">
            <table class="table table-primary">
                <thead>
                    <tr>
                        <th scope="col">id</th>
                        <th scope="col">Puesto</th>
                        <th scope="col">Aciones</th>
                    </tr>
                </thead>
                <tbody>
                    <tr class="">
                        <td scope="row">01</td>
                        <td>programador</td>
                        <td><a name="" id="" class="btn btn-warning" href="./crear.php" role="button">Editar</a>
                            <a name="" id="" class="btn btn-danger" href="./crear.php" role="button">Eliminar</a>
                        </td>
                    </tr>

                </tbody>
            </table>
        </div>

    </div>

</div>
    

Consultar la Base de datos

Para consultar la base de datos , tenemos que tener en primero lugar la conexion a la misma

Conexion a una base de datos

Despues de que ya tengamos la conexion en nuestro proyecto ya podemos consultar la base de datos sobre los registros que queramos mostrar en nuestra tabla

El ejemplo que voy a mostrar es que me recoja todos los registros de la tabla tbl_puestos

Lo hare con una conexion PDO

Ejemplo del codigo en php

include_once('../../bd.php'); //Creamos la conexion a la base de datos

$sql = ("SELECT * FROM tbl_puestos"); //Creamos la consulta de la tabla
$stmt = $pdo->prepare($sql); //Preparamos esa consulta
$stmt->execute(); //La ejecutamos
$lista_puestos = $stmt->fetchAll(PDO::FETCH_ASSOC); //Creamos una variable con todos los registros

print_r($lista_puestos); //Vemos en pantalla todos los registros
    

Distribuicion de los registros por la tabla

Despues de termos verificado que no existe ninguno error, y que recebimos todos los registros de la tabla los vamos a mostrar en una tabla

Para eso vamos a usar un ciclo foreach que lo que hace es pegar en todos los registros y destribuilos uno a uno por todas las columnas existentes en la tabla

esto quiere decir que si tenemos mil o diez mil registros estos nos van aparecer en la tabla que creamos con html del formulario anterior

Se observamos el codigo anterior, verificamos que la variable $lista_puestos es la variable que contiene todos los registros de la tabla

En nuestro caso tenemos dos resultados, o sea dos puestos, por eso el array que me fue devuelto con por la instrucion print_r fue el seguiente:

Array ( [0] => Array ( [idPuesto] => 1 [puesto] => Programador ) [1] => Array ( [idPuesto] => 2 [puesto] => informatico ) )

ahora hay que repartir ese resultado en la tabla, la cual nos mostrara cada resultado por cada fila

Como he dicho antes si tenemos mil registros nos irira mostrar mil filas

Codigo de la distribuicion

le mostrare el codigo de la distribuicion por cada fila

        <tbody>
        <?php foreach ($lista_puestos as $puesto) { ?>
        <tr class="">
        <td scope="row"><?php echo $puesto['idPuesto'] ?></td>
        <td><?php echo $puesto['puesto'] ?></td>
        <td><a name="" id="" class="btn btn-warning" href="./crear.php" role="button">Editar</a>
        <a name="" id="" class="btn btn-danger" href="./crear.php" role="button">Eliminar</a>
        </td>
        </tr>
        <?php } ?>

    </tbody>
    

El resultado seria el de la imagen







Publicar un comentario

0 Comentarios