Ver Mensaje Individual
  #7 (permalink)  
Antiguo 21/07/2012, 14:16
Avatar de oscard41
oscard41
 
Fecha de Ingreso: mayo-2012
Ubicación: Caracas
Mensajes: 288
Antigüedad: 12 años
Puntos: 8
Respuesta: carrito de compras

Cita:
Iniciado por pateketrueke Ver Mensaje
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
  1. $query="SELECT * FROM productos";
  2. $consulta=mysql_query($query);
  3. if($consulta==true)
  4.      {
  5.        $num=mysql_num_rows($consulta);
  6.        for($i=0;$i<$num;$i++){
  7.                $valor=mysql_fetch_array($consulta);
  8.  
  9. /*aqui es donde inprime el los productos*/
  10.                 echo"
  11.                 <td> ".$valor['nombre']." </td>
  12.                 <td> ".$valor['codigo']." </td>
  13.                 <td> ".$valor['precio']." </td>
  14.                 <form action='cargar_carro.php' method='post'/>
  15.                 <input type='hidden' value='".$valor['id']."' name='producto'/>
  16.                 <td><input type='submit' value='agregar'/></form></td>  
  17.                 </tr></div>";}/*fin del for*/
  18.            }/*fin de consulta*/
  19.  
  20. /*aparte tengo un submit que es para ver el estado del carro*/
  21.  
  22.                           </table><br><br><br>
  23.                   <form action='carro.php' method='post'>
  24.                  <input type='hidden' name='ver_carro'/>
  25.                      <input type='submit' value='ver carro'/>
  26.                   </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 original
  1. if(isset($_REQUEST['producto']) and $_REQUEST['producto']!="")
  2.      {  
  3.          include('conexion.php');
  4.          $query="SELECT nombre , precio,id FROM productos WHERE id=".$_REQUEST['producto'];
  5.          $consulta=mysql_query($query);
  6.          
  7.          echo"<br><table id='table' >";
  8.            echo"<tr id='cabecera'>
  9.                <td>Nombres de Productos </td>
  10.                <td>precio</td>
  11.                <td>cantidad</td>
  12.                <tr>";
  13.          if($consulta==true)
  14.          {
  15.             $valor=mysql_fetch_array($consulta);
  16.             echo" <form action='carro.php' method='post'><tr>
  17.                    <td>".$valor['nombre']."</td>
  18.                    <td>".$valor['precio']."</td>
  19.                    <td><input type='text'       name='cantidad'style='width:50px;'/>
  20.                    <input type='hidden'value='".$valor['id']."'name='producto'/>
  21.                    <input type='hidden' value='".$valor['nombre']."' name='nombre'/>
  22.                    <input type='hidden' value='".$valor['precio']."' name='precio'/>
  23.                    <input type='submit' value='cargar'/></td>
  24.                    </table></form>";
  25.          }
  26.      }

y esta ultima es cuando el usuario ya dice la cantidad y se carga al carro:
Código PHP:
Ver original
  1. class carritoCompras{
  2. var $total;
  3. var $carro=array();
  4.  
  5. /* inicializo mi array carro con los datos pasado del catalogo de productows */
  6.  
  7.    function cargar_carro($precio, $cantidad,$producto,$nombre){
  8.      $this->total=$precio*$cantidad;
  9.      $this->carro[md5($producto)]=array('nombre'=>$nombre,'precio'=>$precio,
  10.          'total'=>$this->total,'cantidad'=>$cantidad);
  11.    }
  12.    
  13. /* los objetos que se an cargado al carro*/  
  14.    function ver_carro()
  15.    {
  16.      echo"<table id='table'>";
  17.      print_r($this->carro);  
  18.           foreach($this->carro as $car)
  19.           {
  20.              {
  21.                echo"<tr><td>".$car['nombre']."total".$car['total']."cantidad".$car['cantidad']."</td></tr>";
  22.              }
  23.           }
  24.           echo"</table>";
  25.    }
  26. }  /*fin de la calse*/
  27.      if (isset($_SESSION['usuario']))
  28.      {
  29.      /*creo mi objeto carritoCompras*/
  30.         $compras = new carritoCompras;
  31.            if(isset($_REQUEST['cantidad']))
  32.               $op=1;
  33.            if(isset($_REQUEST['ver_carro']))
  34.               $op=2;
  35.              
  36.         switch ($op) {
  37.            
  38.          case 1:           
  39.                 $compras->cargar_carro($_REQUEST['cantidad'],$_REQUEST['precio'],$_REQUEST['producto'],$_REQUEST['nombre']);
  40.          case 2:       
  41.                 $compras->ver_carro();   /*aqui es donde me da el error : Aviso: Undefined property: carritoCompras :: $ ver_carro en C:*/
  42.                     }
  43.      }
  44. ?>

Hermano de verdad gracias por tu colaboración ojala puedas ayudarme con esto