Ver Mensaje Individual
  #3 (permalink)  
Antiguo 20/03/2005, 10:42
Anio_pke
 
Fecha de Ingreso: noviembre-2003
Ubicación: Galicia
Mensajes: 10
Antigüedad: 20 años, 5 meses
Puntos: 0
a k te refieres a codigo de preferencia al codigo que quiero modificar??????
Código PHP:
<?
class carrito {
    
//atributos de la clase
       
var $num_productos;
       var 
$array_id_prod;
       var 
$array_nombre_prod;
       var 
$array_precio_prod;

    
//constructor. Realiza las tareas de inicializar los objetos cuando se instancian
    //inicializa el numero de productos a 0
    
function carrito () {
           
$this->num_productos=0;
    }
    
    
//Introduce un producto en el carrito. Recibe los datos del producto
    //Se encarga de introducir los datos en los arrays del objeto carrito
    //luego aumenta en 1 el numero de productos
    
function introduce_producto($id_prod,$nombre_prod,$precio_prod)
    {
        
$this->array_id_prod[$this->num_productos]=$id_prod;
        
$this->array_nombre_prod[$this->num_productos]=$nombre_prod;
        
$this->array_precio_prod[$this->num_productos]=$precio_prod;
        
$this->num_productos++;
    }

    
//Muestra el contenido del carrito de la compra
    //ademas pone los enlaces para eliminar un producto del carrito
    
function imprime_carrito(){
        
$suma 0;
        print(
"<span style=\"color: #333333;font-size: 25px;\">Carrito</span><br><hr>");
        print(
"<table border=0 cellpadding=\"3\" class=\"footer\">
              <tr height=20>
                <td class=\"footer\"><div class=\"texto\">Nombre producto</td>
                <td class=\"footer\"><div class=\"texto\">Precio</td>
                <td class=\"footer\"><div class=\"texto\">&nbsp;</td>
              </tr>"
);
        for (
$i=0;$i<$this->num_productos;$i++){
            if(
$this->array_id_prod[$i]!=0){
                echo 
'<tr>';
                echo 
"<td class=\"footer\">" $this->array_nombre_prod[$i] . "</td>";
                echo 
"<td class=\"footer\">" $this->array_precio_prod[$i] . " € </td>";
                echo 
"<td class=\"footer\"><a href='index.php?pag=carrito/eliminar_producto.php&linea=$i'>Eliminar producto</td>";
                echo 
'</tr>';
                
$suma += $this->array_precio_prod[$i];
            }
        }
        
//muestro el total
        
echo "<tr><td class=\"footer\"><div class=\"texto\">TOTAL:</td><td class=\"footer\"> <div class=\"texto\">$suma € </td><td class=\"footer\">&nbsp;</td></tr>";
        
//total más IVA
        
echo "</table>";
    }
    
    
//elimina un producto del carrito. recibe la linea del carrito que debe eliminar
    //no lo elimina realmente, simplemente pone a cero el id, para saber que esta en estado retirado
    
function elimina_producto($linea){
        
$this->array_id_prod[$linea]=0;
    }

//inicio la sesión
session_start();
//si no esta creado el objeto carrito en la sesion, lo creo
if (!isset($_SESSION["ocarrito"])){
    
$_SESSION["ocarrito"] = new carrito();
}
?>
este es el codigo adaptado a mi web, pero cada nuevo objeto que metes en el carrito le crea una nueva linea aunque este producto ya este introducido y lo que yo kiero es que sume uno en cantidad

y despues como puedo hacer un boton "Realizar compra" para pasar al formulario de los datos del cliente guardando todos los datos del carrito y poder pasarlos despues a la BD (cuando el cliente confirme que sus datos son correctos ahi en principio creo no hace falta ayuda)

El codigo original esta en el link k puse en el primer post :P

Última edición por Anio_pke; 20/03/2005 a las 10:43