Ver Mensaje Individual
  #17 (permalink)  
Antiguo 03/10/2006, 05:35
jprolando
 
Fecha de Ingreso: agosto-2006
Mensajes: 388
Antigüedad: 17 años, 8 meses
Puntos: 0
no; vuelvo a colocar todo el codigo

el proceso comienza en un archivo que envia id_prod, producto y cantidad, este es recibido por el siguiente archivo (codigo)

Código PHP:
<?
class carrito {
       var 
$num_productos;
       var 
$array_id_prod;
       var 
$array_nombre_prod;
       var 
$array_cantidad_prod;

    function 
carrito () {
           
$this->num_productos=0;
    }
    
    function 
introduce_producto($id_prod,$nombre_prod,$cantidad_prod){
        
$this->array_id_prod[$this->num_productos]=$id_prod;
        
$this->array_nombre_prod[$this->num_productos]=$nombre_prod;
        
$this->array_cantidad_prod[$this->num_productos]=$cantidad_prod;
        
$this->num_productos++;
    }
    
    
    
    function 
ver_compras(){
    
$id $this->array_id_prod;
    
$id2 implode ","$id );
    
$db mysql_pconnect "xxxx""xxxx""xxxx" );
    
mysql_select_db 'xxxx' );
    
            
$consulta "SELECT * FROM tblArticulos WHERE id_index IN ( $id2 )";
            
$result mysql_query $consulta );

            
$numeroderesult mysql_num_rows $result ); 
            if (
$numeroderesult 0){
                  while (
$fila=mysql_fetch_array($result)){ 
                  echo 
"ID de artículo: ".$fila['id_index']."<br/>"
                  echo 
"Precio de artículo: ".$fila['precio']."<br/>"
                  echo 
"Cantidad de cuotas: ".$fila['cuotas']."<br/>";
                echo 
"Cantidad: <input type='text' name='id' value='".$fila['cantidad']."><br/>";
                echo 
"Total: ".$fila['precio'] * $fila['cuotas']."<p>";
                } 
            } else {
                   echo 
"No hay resultados";
            }  
    }

    function 
ver_carrito(){
        
$suma 0;
        
$cantidad 0;
        echo 
'<table border=1 cellpadding="3">
              <tr>
                <td><b>Nombre producto</b></td>
                <td>&nbsp;</td>
              </tr>'
;
        for (
$i=0;$i<$this->num_productos;$i++){
            if(
$this->array_id_prod[$i]!=0){
                echo 
'<tr>';
                echo 
"<td>" $this->array_nombre_prod[$i] . "</td>";
                echo 
"<td><a href='eliminar_producto.php?linea=$i'>Eliminar producto</td>";
                echo 
'</tr>';
                
                
$cantidad++;
            }
        }
        echo 
"<tr><td><b>Total Articulos:</b></td><td> <b>$cantidad</b></td></tr>";
        echo 
"</table>";
    }
    

    
    function 
elimina_producto($linea){
        
$this->array_id_prod[$linea]=0;
    }

session_start();
if (!isset(
$_SESSION["ocarrito"])){
    
$_SESSION["ocarrito"] = new carrito();
}
?>
Si observamos vemos funciones, entre ella la funcion ver_compras y ver_carrito.
La funcion ver_carrito lo unico que muestra es el nombre del producto que se agrego al array de los productos.
La funcion ver_compras, tomando los id de los productos va hacia la tabla de articulos y trae los otros datos que preciso (como por ejemplo cuotas del producto).
Pues bien, ahora los datos que yo traigo de la tabla son el id, precio, cuotas y cantidad (que en la tabla tengo un campo con la cantidad en uno).

Todos estos datos los quiero almacenar en una nueva tabla llamada compras (que esta parte ya la tengo implementada).

Cual es el problema??? es aqui donde nos enloquecemos, la funcion ver compras me muestra todos los productos que fueron seleccionados en la sesion, pero tengo que darle la posibilidad de cambiar la cantidad y que el total tambien cambie.
Por eso es que coloco un input en el dato cantidad

Código PHP:
echo "Cantidad: <input type='text' name='id' value='".$fila['cantidad']."><br/>"
ademas deberia colocar la cantidad para que calcule el total

Código PHP:
echo "Total: ".$fila['precio'] * $fila['cuotas']."<p>"
Ahora bien, necesito un boton para actualizar los datos con esas nuevas cantidades (y es aqui donde se me presentan todos los problemas).

Bueno espero que haya quedado claro, miren que estoy mas que agradecido por todo lo que han ayudado, y es mas si alguien le parece que tiene una idea mejor de hacer todo, puede plantearla, bueno saludos