Bueno pues ahora me encuentro en la siguiete situación, desde la clase catalogo retorno los productos existentes en forma de objetos ( funcion getProductos() ).
Código PHP:
<?
class Catalogo {
private $Productos;
function __construct (BaseDatos $conexion) {
$sql = "SELECT * FROM catalogo";
$this->Productos = $conexion->getResults($sql,ARRAY_N);
}
public function totalProductos () {
return count($this->Productos);
}
public function getProductos () {
$i = 0;
foreach($this->Productos as $Producto) {
$this->Productos[$i] = new Producto($Producto['pid'],
$Producto['producto'],
$Producto['descripcion'],
$Producto['precio']);
$i ++;
}
return $this->Productos;
}
}
?>
Y los obtengo asi:
Código PHP:
<?
include_once 'models/ClassCatalogo.php';
include_once 'models/ClassProducto.php';
include_once 'models/ClassBaseDatos.php';
$conexion = new BaseDatos('localhost','root','pass','carrito');
$Catalogo = new Catalogo($conexion);
echo 'Cantidad de Productos: '. $Catalogo->totalProductos() .'<br><br>';
$Productos = $Catalogo->getProductos();
foreach ($Productos as $Producto) {
echo 'ID: '. $Producto->getId() .'<br>';
echo 'Nombre: '. $Producto->getNombre() .'<br>';
echo 'Descripcion: '. $Producto->getDescripcion() .'<br>';
echo 'Precio: '. $Producto->getPrecio() .'<br>';
}
?>
Y funciona, pero ahora me surge la siguiente duda, la idea es añadir un link por producto diriguido a otra pagina donde se agregue el producto seleccionado al carrito (instancia) y no tengo clara la manera de persistir (creo que asi se le dice xD) mi objeto tipo producto para pasarlo como parametro a la funcion add() de mi instancia carrito.
Y pues bueno quisiera algunas sugerencias para poder entender un poco mejor como trabajar con POO en PHP.
De antemano Gracias
:D