![]() Directorio WAP para móvil, Tablet, iPhone o Smartphone Centro de Noticias de la Universidad de Oriente |
|
|
||
domingo julio 10, 2016 Ahora implementaremos el listado completo de la tabla articulos y recuperaremos la descripción del rubro que se encuentra en la otra tabla. Tenemos que utilizar el comando select y la cláusula join para el emparejamiento con la tabla rubros. El código completo de la página es: <!doctype html> <html> <head> <title>Listado de artículos</title> <style> .tablalistado { border-collapse: collapse; box-shadow: 0px 0px 8px #000; margin:20px; } .tablalistado th{ border: 1px solid #000; padding: 5px; background-color:#ffd040; } .tablalistado td{ border: 1px solid #000; padding: 5px; background-color:#ffdd73; } </style> </head> <body> <?php $con=mysqli_connect("localhost","root","","base1") or die("Problemas con la conexión a la base de datos"); $registros=mysqli_query($con,"select ar.codigo as codigoart, ar.descripcion as descripcionart, precio, ru.descripcion as descripcionrub from articulos as ar inner join rubros as ru on ru.codigo=ar.codigorubro") or die(mysqli_error($con)); echo '<table class="tablalistado">'; echo '<tr><th>Código</th><th>Descripción</th><th>Precio</th><th>Rubro</th></tr>'; while ($reg=mysqli_fetch_array($registros)) { echo '<tr>'; echo '<td>'; echo $reg['codigoart']; echo '</td>'; echo '<td>'; echo $reg['descripcionart']; echo '</td>'; echo '<td>'; echo $reg['precio']; echo '</td>'; echo '<td>'; echo $reg['descripcionrub']; echo '</td>'; echo '</tr>'; } echo '<table>'; mysqli_close($con); ?> </body> </html> Empecemos a analizar la parte más importante de este algoritmo que es el select: $registros=mysqli_query($con,"select ar.codigo as codigoart, ar.descripcion as descripcionart, precio, ru.descripcion as descripcionrub from articulos as ar inner join rubros as ru on ru.codigo=ar.codigorubro") or die(mysqli_error($con)); Creamos alias para los campos que tienen el mismo nombre en las tablas de articulos y rubros. También creamos alias para las dos tablas con las que trabajamos. En el from indicamos la tabla principal que estamos consultando que es la tabla articulos y luego con la cláusula inner join procedemos a indicar el nombre de la tabla relacionada y los dos campos por los que se emparejan: ru.codigo=ar.codigorubro Luego dentro del while debemos hacer referencia a los alias que hemos creado: while ($reg=mysqli_fetch_array($registros)) { echo '<tr>'; echo '<td>'; echo $reg['codigoart']; echo '</td>'; echo '<td>'; echo $reg['descripcionart']; echo '</td>'; echo '<td>'; echo $reg['precio']; echo '</td>'; echo '<td>'; echo $reg['descripcionrub']; echo '</td>'; echo '</tr>'; } En el navegador obtenemos una salida similar a esta: ![]() Otras variacionesPodemos no utilizar alias y acceder por medio de un índice numérico a cada columna de los campos que recupera el select: $registros=mysqli_query($con,"select ar.codigo, ar.descripcion, precio, ru.descripcion from articulos as ar inner join rubros as ru on ru.codigo=ar.codigorubro") or die(mysqli_error($con)); echo '<table class="tablalistado">'; echo '<tr><th>Código</th><th>Descripción</th><th>Precio</th><th>Rubro</th></tr>'; while ($reg=mysqli_fetch_array($registros)) { echo '<tr>'; echo '<td>'; echo $reg[0]; echo '</td>'; echo '<td>'; echo $reg[1]; echo '</td>'; echo '<td>'; echo $reg[2]; echo '</td>'; echo '<td>'; echo $reg[3]; echo '</td>'; echo '</tr>'; } echo '<table>'; Como vemos ahora hacemos referencia a cada elemento por medio de un subíndice numérico que indica la posición del campo en el select: echo $reg[0]; La primer posición es la cero, luego sigue la uno y así sucesivamente. NO PODEMOS indicar en el subíndice una cadena con el carácter punto: echo $reg['ar.descripcion']; |
||
— @bolUDOoficial
Comenta o lee lo que otros opinan |
||
COMPÁRTELO:Indica que te gusta y comparte |
||
![]() ![]() ![]() ![]() ![]() |
||
También te puede interesar: Mostrar el calendario de la fecha actual en php |
||
« mysqli - alta tabla articulos (mysqli_query) | mysqli - consulta tabla articulos » |
||
![]() |
||
Buscador:
|
||
Síguenos en las redes sociales![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Mis cuentas socialesOtrasMóvil: (0426 683 6955 - 0412 8226575) - E-mail: [email protected] - [email protected] - WhatsApp: +58 (0426) 683.69.55 ![]() |
||
|
||
|