Pregunta:
Fecha: 11-01-2018 22:15:23
(En Español)
¿Cómo crear una página PHP donde se listen todos los modelos de 6 coches?[No resuelta]
Hola chico, no se hacer una consulta muy sencilla y necesito ayuda, quiero crear una página php donde se listen todos los modelos de 6 coches.Id Marca Modelo Precio Disponibilidad Actualizacion 1 Seat Ibiza 12000 Inmediata 2018-01-12 08:47:16 2 Seat Toledo 22000 1 mes 2018-01-12 08:47:16 3 Renault Clio 13000 Inmediata 2018-01-12 08:48:36 4 Renault Megane 23000 3 meses 2018-01-12 08:48:36 5 Opel Corsa 14000 1 mes 2018-01-12 08:49:41 6 Opel Insignia 24000 2 meses 2018-01-12 08:49:41Votos: 0 - Respuestas: 5 - Vistas: 15 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 12-01-2018 02:11:39 una pregunta todos esos datos estan en la misma tabla verdad? Votos: 0 - Link respuesta
-
Fecha: 12-01-2018 02:13:23 has un select a los campos que indicaste llena un array y luego para imprimirlo usa un foreach que recorra el array ya te envio un ejemplo Votos: 0 - Link respuesta
-
Fecha: 12-01-2018 02:48:40
<?php include("../class/autos.class.php"); $obj_autos= new class_autos;//LLAMADO A LA CLASE DE AUTOS $arr_autos=$obj_autos->get_list_autos(); ?> <html lang="es"> <body> <div class="panel-body"> <div class="dataTable_wrapper"> <table class="table table-striped table-bordered table-hover" id="dataTables-example"> <thead> <tr> <th>Id</th> <th>Marca</th> <th>Modelo</th> <th>Precio</th> <th>Disponibilidad</th> <th>Actualizacion</th> </tr> </thead> <tbody> <?php for($i=0;$i<sizeof($arr_autos);$i++){ ?> <tr class="odd gradeX"> <td><?php echo $arr_autos[$i]['id']; ?></td> <td><?php echo arr_autos[$i]['Marca']; ?></td> <td><?php echo arr_autos[$i]['Modelo']; ?></td> <td><?php echo arr_autos[$i]['Precion']; ?></td> <td><?php echo arr_autos[$i]['Disponibilidad']; ?></td> <td><?php echo arr_autos[$i]['Actualizacion']; ?></td> </td> </tr> <?php } ?> </tbody> </table> </div> </div> asi seria la vista function get_list_autos('){ $res_array = array(); $sQuery="SELECT Id, Marca, Modelo, Precio, Disponibilidad, Actualizacion from autos orde by id"; $result=mysqli_query($sQuery); $i=0; while($row=mysqli_fetch_array($result)){ foreach($row as $key=>$value){ $res_array[$i][$key]=$value; } $i++; } return($res_array); }Votos: 0 - Link respuesta -
Fecha: 12-01-2018 11:58:03 deberías de organizar tus tablas, por ejemplo:
Tabla Marcas:
idMarca > Marca > estatus
1 - Seat - true
2 - Renault - true
3 - Open - true
4 - Chevrolet - true
5 - Ford - true
6 - Toyota - true
etc...
Tabla Modelos:
idModelo > id_marca > modelo > estatus_modelo
1 - 1 - Ibiza - true
2 - 1 - Toledo - true
3 - 2 - Clio - true
4 - 2 - Megane - true
etc...
Tabla Ventas:
Marca > Modelo > Precio > entrega > fecha_registro
1 - 1 - 12000 - inmediata - 2018-01-12 08:47:16
1 - 2 - 22000 - 1 mes - 2018-01-12 08:47:16
2 - 3 - 13000 - inmediata - 2018-01-12 08:48:36
etc...
la query seria algo como esto:
$db->query("SELECT *.ventas, *.marcas, *.modelos FROM ventas INNER JOIN marcas ON ventas.marca = marcas.idMarca INNER JOIN modelos ON ventas.modelo = modelo.idModelo");
de esa manera tienes organizado tu sistema o aplicativo y los mantenimientos son más rápidos.
Saludos Votos: -1 - Link respuesta -
Fecha: 15-01-2018 13:17:00 Como sugerencia la tabla ventas no debe hacer referencia a ninguna otra tabla.
La razón es que una venta es una transacción única e inmutable. Al mantener las relaciones con las tablas Marcas y Modelo pierdes la inmutabilidad y puedes ocasionar que haya datos incongruentes, sobre todo al generar facturas o que hacienda haga una auditoría.
Pongamos como ejemplo que comienzas tu semana con el modelo Seat - Ibiza. Al poco tiempo vendes un auto y se crea un registro de venta. Una semana después cambias el modelo a Renault - Ibiza. Esto implica que tu registro de venta no reflejaría la transacción original porque la relación actualizaría el modelo creando una inconsistencia que te provocaría problemas en una auditoría o si necesitaras regenerar una factura.
De cierta manera la tabla ventas se comportaría como una tabla no normalizada.
Espero que esto te ayude
Saludos Votos: 2 - Link respuesta
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
