Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/practicaTienda/producto1

De WikiEducator
< Usuario:ManuelRomero‎ | ProgramacionWeb/Distancia2018/practicaTienda
Revisión a fecha de 08:24 28 abr 2020; ManuelRomero (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar



Probando el ejemplo

  • Puedes ver esta parte del ejercicio ejecutándose en la web:
http://manuel.infenlaces.com/distancia/practicas/practica_12_tienda/2%20Tienda%20Productos/login.php

Lista productos

  • Se trata de modificar tanto productos.php, como la plantilla productos.tpl, para obtener un listado de todos los productos
  • Para ello también añadiremos métodos a la clase DB.php.
  • A la vez crearemos la clase Producto.php para obtener de forma más cómoda cada producto como un objeto de la clase Producto a partir de cada fila de la consulta.
  • Directamente vamos a escribir el código
DB.php
  • Debemos hacer una consulta que obtenga todos los productos
  • Para ello añadiremos el método pública obtieneProductos() en la clase DB.php que quedará con lo que tenía

DB2 .png

Productos.php
  • Esta clase va a ser un modelo correspondiente a la lógica
  • En este caso el código de esta clase si solo nos interesan 4 campos...
  • El modelo completo requeriría acceder a todos los campos
<?php
class Producto {
    protected $codigo;
    protected $nombre;
    protected $nombre_corto;
    protected $PVP;
 
    public function getcodigo() {return $this->codigo; }
    public function getnombre() {return $this->nombre; }
    public function getnombrecorto() {return $this->nombre_corto; }
    public function getPVP() {return $this->PVP; }
 
    public function __construct($producto) {
        $this->codigo = $producto['cod'];
        $this->nombre = $producto['nombre'];
        $this->nombre_corto = $producto['nombre_corto'];
        $this->PVP = $producto['PVP'];
    }
}
?>