Controller del carrito(metodo que agrega un producto):
Código PHP:
protected function addLogic(){
/*Llamamos al modelo para que busque en la DB y cheque si existe
* el idProducto y lo agregue a la session[items]
*/
$_query= new manageDB("mysql","root","XXx","localhost","prueba");
$rowsFound=$_query->searchById($this->idProducto);
if($rowsFound != false){
$manage= new Carrito();
$manage->add($this->idProducto);
$productos=$manage->cesta();
$this->setProducts($productos);
}
else{
$this->saveMsg("Ese producto no se encuentra en la DB [mal parametro]","msgProductos");
}
}
Código PHP:
public function _default(){
$this->Smarty->assign("hayProductos",true);
$this->Smarty->assign("productos",$this->arrayProducts);
$this->Smarty->display($_SERVER[DOCUMENT_ROOT]."/php/application/carrito/vista/templates/index.tpl.html");
}
Código PHP:
public function showProducts($arrayProducts){
if(is_array($arrayProducts))
{
$this->idProductos=$arrayProducts;
$this->Smarty->assign("hayProductos",true);
$this->Smarty->assign("productos",$arrayProducts);
$this->Smarty->display($_SERVER[DOCUMENT_ROOT]."/php/application/carrito/vista/templates/index.tpl.html");
}
}
Ej de url que si muestra los productos:
Código HTML:
http://localhost/php/application/carrito/?idc=contCarrito&action=addLogic&idp=10
Código HTML:
http://localhost/php/application/carrito/
el tpl:
Código HTML:
<html> <head> <style type="text/css" media="screen"> @import url(vista/css/carro.css); </style> </head> <body> <div id='header'> </div> <div id='header2'> </div> <h2>Productos </h2> <div class='Contenedor'> </div> {$Index} {$errores} <div> <p> {if $hayProductos} La canasta contiene: <br /> { foreach from = $productos item = curr_id} {$curr_id} <br /> {/foreach} { /if } </p> </div> <div id="mensajes" > {if $msgProductos} {$msgProductos} <br /> {/if} </div> </body> </html>
Espero haberme explicado
gracias de antemano