Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/03/2009, 07:51
Xematick
 
Fecha de Ingreso: octubre-2008
Mensajes: 180
Antigüedad: 15 años, 6 meses
Puntos: 1
Necesito ideas

Hola.
Llevo tiempo detrás de esto.
Ya he preguntado sobre esto más de una vez en este foro pero no he conseguido hacer lo que quiero todavia.
El caso es que tengo un carro de la compra que me genera una tabla con lo que se ha ido seleccionando.
Llegados a este punto, no tengo ningún Form que me meta los productos seleccionados en una BD, con por ejemplo, un nombre que podría ser un campo del Form a rellenar.

Os pongo la tabla que se genera con echos, la cuestión es
¿cómo podría convertir esto en un form que me meta las arrays en una bd? (hay que tener en cuenta que pueden haber muchos arrays, no vale que meta solo el último)

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;
        echo 
'<table border=1 cellpadding="3">
              <tr>
                <td><b>Nombre producto</b></td>
                <td><b>Precio</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>" $this->array_precio_prod[$i] . "</td>";
                echo 
"<td><a href='eliminar_producto.php?linea=$i'>Eliminar producto</td>";
                echo 
'</tr>';
                
$suma += $this->array_precio_prod[$i];
            }
        }
        
//muestro el total
        
echo "<tr><td><b>TOTAL:</b></td><td> <b>$suma</b></td><td>&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();
}
?>