Cita:
Iniciado por pateketrueke
En tu código no se muestra toda la lógica con la sesión y recuperación del carrito, a decir verdad deberías mostrar más de lo que haces.
De otra forma es complicado adivinar por donde viene el problema.
Gracias por tu ayuda
este es la parte del catalogo:
Código PHP:
Ver original$query="SELECT * FROM productos";
if($consulta==true)
{
for($i=0;$i<$num;$i++){
/*aqui es donde inprime el los productos*/
echo"
<td> ".$valor['nombre']." </td>
<td> ".$valor['codigo']." </td>
<td> ".$valor['precio']." </td>
<form action='cargar_carro.php' method='post'/>
<input type='hidden' value='".$valor['id']."' name='producto'/>
<td><input type='submit' value='agregar'/></form></td>
</tr></div>";}/*fin del for*/
}/*fin de consulta*/
/*aparte tengo un submit que es para ver el estado del carro*/
</table><br><br><br>
<form action='carro.php' method='post'>
<input type='hidden' name='ver_carro'/>
<input type='submit' value='ver carro'/>
</form>
Esta es la parte de cargar_carro a donde se envia el producto cuando le dan a "agregar" esta parte solo consiste en que salga el producto a el que el usuario le dio agregar y coloque la "cantidad " de articulos de ese producto
Código PHP:
Ver originalif(isset($_REQUEST['producto']) and
$_REQUEST['producto']!="") {
include('conexion.php');
$query="SELECT nombre , precio,id FROM productos WHERE id=".$_REQUEST['producto'];
echo"<br><table id='table' >";
echo"<tr id='cabecera'>
<td>Nombres de Productos </td>
<td>precio</td>
<td>cantidad</td>
<tr>";
if($consulta==true)
{
echo" <form action='carro.php' method='post'><tr>
<td>".$valor['nombre']."</td>
<td>".$valor['precio']."</td>
<td><input type='text' name='cantidad'style='width:50px;'/>
<input type='hidden'value='".$valor['id']."'name='producto'/>
<input type='hidden' value='".$valor['nombre']."' name='nombre'/>
<input type='hidden' value='".$valor['precio']."' name='precio'/>
<input type='submit' value='cargar'/></td>
</table></form>";
}
}
y esta ultima es cuando el usuario ya dice la cantidad y se carga al carro:
Código PHP:
Ver originalclass carritoCompras{
var $total;
/* inicializo mi array carro con los datos pasado del catalogo de productows */
function cargar_carro($precio, $cantidad,$producto,$nombre){
$this->total=$precio*$cantidad;
$this->carro[md5($producto)]=array('nombre'=>$nombre,'precio'=>$precio, 'total'=>$this->total,'cantidad'=>$cantidad);
}
/* los objetos que se an cargado al carro*/
function ver_carro()
{
echo"<table id='table'>";
foreach($this->carro as $car)
{
{
echo"<tr><td>".$car['nombre']."total".$car['total']."cantidad".$car['cantidad']."</td></tr>";
}
}
echo"</table>";
}
} /*fin de la calse*/
if (isset($_SESSION['usuario'])) {
/*creo mi objeto carritoCompras*/
$compras = new carritoCompras;
if(isset($_REQUEST['cantidad'])) $op=1;
if(isset($_REQUEST['ver_carro'])) $op=2;
switch ($op) {
case 1:
$compras->cargar_carro($_REQUEST['cantidad'],$_REQUEST['precio'],$_REQUEST['producto'],$_REQUEST['nombre']);
case 2:
$compras->ver_carro(); /*aqui es donde me da el error : Aviso: Undefined property: carritoCompras :: $ ver_carro en C:*/
}
}
?>
Hermano de verdad gracias por tu colaboración ojala puedas ayudarme con esto