Dandole seguimiento a los tutoriales que he realizado, ahora voy a mostrar como como llenar una tabla con el id y que éste tenga un enlace para que cuando el usuario le de click se despliegue la información.
Para poder completar este tutorial primero debes de haber realizado el tutorial Método PDO::query para obtener resultados con MySQL para saber como obtener resultados de un query. Como se puede obervar en ese tutorial mostramos nuestro resultado en una tabla. Para cumplir nuestro objetivo vamos crear un query string con el id del empleado en la tabla que hemos creado. Este query string lo vamos a formar en un tag anchor ‘a’ . También tienes que haber completado el tutorial Método PDO::prepare Obtener Resultados con Parametros para saber como buscar un registro dado un valor.
1.- Primero que nada debemos de tener nuestra tabla ya lista.
2.- Ahora tenemos que modificar un poco la creación de nuestra tabla la cual tiene este código:
1 2 3 4 5 6 7 8 9 10 | <?php foreach ($rows as $row) { ?> <tr> <td><?php echo $row['id_empleado']; ?></td> <td><?php echo $row['nombre']; ?></td> <td><?php echo $row['email']; ?></td> <td><?php echo $row['telefono']; ?></td> </tr> <?php } ?> |
Y lo vamos a cambiar por este otro
1 2 3 4 5 6 7 8 9 10 | <?php foreach ($rows as $row) { ?> <tr> <td><a href="searchEmployee.php?id=<?php echo $row['id_empleado']; ?>"><?php echo $row['id_empleado']; ?></a></td> <td><?php echo $row['nombre']; ?></td> <td><?php echo $row['email']; ?></td> <td><?php echo $row['telefono']; ?></td> </tr> <?php } ?> |
Y resultado de nuestra tabla va a ser los Id con un link hacia una página llamada searchEmployee.php.
Este es el código completo que nos da el resultado anterior:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | <?php require_once 'Connection.simple.php'; $result; $conn = dbConnect(); // Create the query $sql = 'SELECT * FROM empleado'; // Create the query and asign the result to a variable call $result $result = $conn->query($sql); // Extract the values from $result $rows = $result->fetchAll(); // Since the values are an associative array we use foreach to extract the values from $rows ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Query data sending an ID</title> <meta http-equiv="X-UA-Compatible" content="IE=9,crome" /> <meta name="copyright" content="Datasoft Engineering 2013"/> <meta name="author" content="Reedyseth"/> <meta name="email" content="ibarragan@behstant.com"/> <meta name="description" content="Query data sending an ID" /> <link rel=stylesheet href="../css/style01.css"> </head> <body> <table border="1"> <thead> <tr> <th>ID</th> <th>Nombre</th> <th>Email</th> <th>Telefono</th> </tr> </thead> <tbody> <?php foreach ($rows as $row) { ?> <tr> <td><a href="searchEmployee.php?id=<?php echo $row['id_empleado']; ?>"><?php echo $row['id_empleado']; ?></a></td> <td><?php echo $row['nombre']; ?></td> <td><?php echo $row['email']; ?></td> <td><?php echo $row['telefono']; ?></td> </tr> <?php } ?> </tbody> </table> </html> |
3.-Ahora vamos a realizar la búsqueda de la información del empleado. Podemos ver que en el query string obtenemos la variable id con un valor, algo así:
1 | searchEmployee.php?id=1 |
Como la información es enviada a través de un query string en php la vamos a obtener con $_GET, ya que la información no es enviada por una forma. Entonces con el siguiente código realizamos la busqueda y guardamos el valor en una variable $row.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?php require_once 'Connection.simple.php'; $result = ""; $row = null; $conn = dbConnect(); // If 'buscar' is in the array $_POST proceed to make the query. if (isset($_GET['id'])) { // Create the query $sql = 'SELECT * FROM empleado WHERE id_empleado = ?'; // we have to tell the PDO that we are going to send values to the query $stmt = $conn->prepare($sql); // Now we execute the query passing an array toe execute(); $results = $stmt->execute(array($_GET['id'])); // Extract the values from $result $row = $stmt->fetch(); /* $error = $stmt->errorInfo(); echo $error[2]; */ if (empty($row)) { $result = "No se encontraron resultados !!"; } } ?> |
4.- Ahora para mostrar la información del empleado vamos a usar una forma. La razón por la que se usa una forma es por que en un siguiente post voy a mostrar como editar o eliminar un registro y ésta va a ser la plantilla base.
1 2 3 4 5 6 7 8 9 10 | <label for="id">Id de empleado:</label> <input type="text" name="id" id="id"/ disabled="disabled" value="<?php echo $row['id_empleado'];?>"><br/> <label for="nombre">Nombre:</label> <input type="text" name="nombre" id="nombre"/ value="<?php echo $row['nombre'];?>"><br/> <label for="email">Email:</label> <input type="text" name="email" id="email" value="<?php echo $row['email'];?>"/><br/> <label for="telefono">Telefono:</label> <input type="text" name="telefono" id="telefono" value="<?php echo $row['telefono'];?>"/><br/> <input type="submit" name="update" value="Actualizar" disabled="disabled"/> <input type="submit" name="delete" value="Eliminar" disabled="disabled"/> |
Una vez mostrado nuestra información queda listo para ser editada o eliminada.
Para el tutorial mostré la información en una forma, pero no tiene que ser de esta manera siempre, ustedes pueden poner la información en cualquier tag de HTML y darle formato.
Si tienen dudas o comentarios sobre el post no duden en realizarlas.
El código con comentarios detallados se encuentra aquí :