Foros del Web » Programando para Internet » PHP »

Enviar datos de carrito via mail

Estas en el tema de Enviar datos de carrito via mail en el foro de PHP en Foros del Web. Hola a todos, esto haciendo un carrito con un script que baje de una web y necesito que los datos cargados en el carrito puedan ...
  #1 (permalink)  
Antiguo 25/08/2010, 13:31
 
Fecha de Ingreso: febrero-2009
Mensajes: 202
Antigüedad: 15 años, 10 meses
Puntos: 3
Enviar datos de carrito via mail

Hola a todos,
esto haciendo un carrito con un script que baje de una web y necesito que los datos cargados en el carrito puedan enviarse por mail, pero no me doy cuenta como hacerlo, les dejo el código del carro:

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 
'<br><br><strong><span style="font-size: 20px;color:#4547DF;">Has añadido al carrito:</span></strong><br><br><table width="700" border=0 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>";
        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();
}
?>
Eso es lo que muestra el carrito cuando le mandas un link como este por ejemplo:
mete_producto.php?id=*&nombre=***&precio=***

No se me ocurre como llamar a esa información que se va agregando al carro como para que llegue un email de "X" quiere comprar tal y tal producto...


Gracias!!!
  #2 (permalink)  
Antiguo 26/08/2010, 07:29
Avatar de catpaw  
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años, 7 meses
Puntos: 23
Respuesta: Enviar datos de carrito via mail

Checa este ejemplo, igual te de una idea mas clara de lo que quieres hacer... a mi me sirvio mucho ese carrito Xd...

http://www.programacionweb.net/artic...iculo/?num=354

Suerte
  #3 (permalink)  
Antiguo 26/08/2010, 08:27
 
Fecha de Ingreso: febrero-2009
Mensajes: 202
Antigüedad: 15 años, 10 meses
Puntos: 3
Respuesta: Enviar datos de carrito via mail

Gracias!, ya conseguí hacer lo que pedía en el 1º mensaje. Tengo otra pregunta, tengo una función así:

Código PHP:
    function imprime_carrito(){
        
$suma 0;
        for (
$i=0;$i<$this->num_productos;$i++){
            if(
$this->array_id_prod[$i]!=0){
                echo 
"<textarea name='Comments' style='visibility:hidden'>" $this->array_nombre_prod[$i] . "</textarea>";
                echo 
"<div class='producto'>" $this->array_nombre_prod[$i] . "</div>";
                
$suma += $this->array_precio_prod[$i];
            }

        }

    } 
La idea de echo "<textarea name='Comments' style='visibility:hidden'>" . $this->array_nombre_prod[$i] . "</textarea>"; es que me lea los productos para mandarlos por mail, pero el tema es que al estar adentro del ciclo no va porque se genera 1 textarea para cada producto y solo me llegaría el último. Necesitaría recopilar toda la info que está en el ciclo y ahi si ponerla adentro del textarea, ¿cómo puedo hacer eso?

Gracias!

Etiquetas: carrito, enviar, mail
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:14.