Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/05/2005, 11:33
Avatar de tyo100
tyo100
 
Fecha de Ingreso: febrero-2005
Ubicación: Monterrey, NL
Mensajes: 475
Antigüedad: 19 años, 2 meses
Puntos: 1
Pregunta Comparar productos productos favoritos(tipo carrito)

Necesito hacer una seccion en una web, para que agreguen productos a un tipo de carrito, para despues compararlos o simplemente para que haga una lista de los productos que mas le gustan, pueda enviarlos por correo o descargar un PDF ya que no es para ventas en linea, utilice el carrito que mencionan en http://www.desarrolloweb.com/manuales/56/ todo perfecto le hice unos cambios, quite precio y agregue mercado(exportacion o nacional).


Todo muy bien, puedo enviar la lista por correo, ya pude generar el PDF gracias a fpdf, pero lo que quiero es que solo puedan agregar una vez el producto, pues si le doy click a agregar producto, se agrega y se le vuelvo a dar click se vuelve a agregar y pues tendria productos repetidos.

Alguna recomendacion o algun codigo que hayan visto que haga esto de comparar productos o productos favoritos.

Código PHP:
<?
class carrito {
    
//atributos de la clase
       
var $num_productos;
       var 
$array_id_prod;
       var 
$array_secc_prod;
       var 
$array_merc_prod;
       var 
$array_nombre_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,$secc_prod,$merc_prod,$nombre_prod){
        
$this->array_id_prod[$this->num_productos]=$id_prod;
        
$this->array_secc_prod[$this->num_productos]=$secc_prod;
        
$this->array_merc_prod[$this->num_productos]=$merc_prod;
        
$this->array_nombre_prod[$this->num_productos]=$nombre_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] . "-" $this->array_id_prod[$i] . "</td>";
                echo 
"<td><a href='eliminar_producto.php?linea=$i'>Eliminar producto</td>";
                echo 
'</tr>';
            }
        }
        
//muestro el total
        
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();
}
?>
uso de este codigo

http://www.desarrolloweb.com/articul....php?manual=56