Enviar pedido de carrito PHP vía mail
Necesito mucho tu ayuda en esta ocasión... Tengo un carrito de compras en mi web con lo cual tengo varios problemas, y necesito tu ayuda con el mayor de todos...
Enviar los pedidos a mi casilla mail
Según estuve leyendo, cada articulo que se selecciona, se agrega en una matriz. "OJO... No conozco mucho de como se almacenan los datos dentro de una matriz y asumo que es la matriz la que debo enviar a mi mail..."
este es mi archivo (agregar.php)
<?php
session_start();
extract($_REQUEST);
$tot_productos=0;
$conexion= mysql_connect("", "", "") or die (mysql_error());
mysql_select_db("productos", $conexion) or die ("fracaso la seleccion de la db productos_pyd");
if(!isset($cantidad)){$cantidad=1;}
$tot_productos=$tot_productos+1;
$qry=mysql_query("select * from forest where id='".$id."'");
$row=mysql_fetch_array($qry);
if(isset($_SESSION['carro']))
$carro=$_SESSION['carro'];
$carro[md5($id)]=array('identificador'=>md5($id),'cantidad'=>$cantidad,'nombre'=>$row['nombre'],'costo'=>$row['costo'],'id'=>$id);
$_SESSION['carro']=$carro;
header("Location:catalogo.php?".SID);
?>
Este es un resumen de todo el archivo, copie lo que creí necesario, solo las lineas PHP, así que no te alarmes si ves que algo no esta mal escrito, ya que el archivo completo está ok, y funciona bien...
<?php
session_start();
error_reporting(E_ALL);
@ini_set('display_errors', '1');
if(isset($_SESSION['carro']))
$carro=$_SESSION['carro'];else $carro=false;
$contador=0;
$suma=0;
$subtol=0;
$productos=0;
if($carro){
$color=array("#ffffff","#F0F0F0");
foreach($carro as $k => $v){
//PARA QUE ES FOREACH? Y que significan "$k => $v"............y porque luego de esto todos los campos llevan $v al inicio?, por ejemplo:$v['costo']
$subto1=$v['cantidad']*$v['costo'];;
$suma=$suma+$subto1;
$contador++;
?>
<form name="a<?php echo $v['identificador'] ?>" method="post" action="agregacar.php?<?php echo SID ?>" id="a<?php echo $v['identificador']; ?>">
<?php
echo $color[$contador%2];
echo $v['nombre'];
$productos=$v['nombre'];
echo $v['costo'];
echo $v['id']
$subtotal=$v['cantidad']*$v['costo'];;
echo number_format($subtotal,2);
}
echo count($carro);
echo number_format($suma,2);
?>
<form action="enviar.php" method="post" name="Formulario" id="Formulario">
<input name=" name" type="text" class="texto_ng" size="40" />
<input name="email" type="text" class="texto_ng" size="40" />
<input name="phone" type="text" class="texto_ng" size="40" id="phone" />
<textarea name="comments" cols="40" rows="6" class="texto_ng"></textarea></td>
<input type="submit" value="Enviar" />
<input type="hidden" name="productos" id="productos" value="<? Echo $productos; ?>" />
// en este caso almacene el valor de $v['nombre'] en ==== $productos y estoy enviando a mi archivo ENVIAR.PHP (que realiza el envio mail) el valor almacenado en productos... OJO, el valor si llega, pero solo el último articulo seleccionado...
<input type="reset" value="Limpiar" />
</form>
<?php }else{ ?>
<a href="prod_plan_01.php?<?php echo SID;?>"><img src="../images/next.png" width="48" height="48" border="0" alt="Volver al catálogo" title="Volver al Catálogo" />
<?php
}
?>
ESTE ES MI ARCHIVO (ENVIAR.PHP)
<?php
$to = "[email protected]";
$sub = "Pedido enviado";
$subject = "\r\nName: ".$_REQUEST["name"]
." \r\nEmail: ". $_REQUEST["email"]
."\r\nPhone: ".$_REQUEST["phone"]
."\r\nProductos: ".$_REQUEST["productos"]
//OJO, el valor de productos si llega, pero solo el último articulo seleccionado...
." \r\n\r\n"
."Comments: ".$_REQUEST["comments"]
."\r\n";
$headers = "From: ".$_REQUEST["email"]."\r\n";
if (@mail($to,$sub,$subject,$headers)){
//print "Su pedido se realizó con éxito";
echo("
<script language='JavaScript' type='text/JavaScript'>");
echo("alert('Su pedido se realizó con éxito');");
echo("</script>
");
echo "
<script>window.location='vercarrito.php'</script>
";
}else
{
//print "Se produjo un error al enviar su pedido";
echo("
<script language='JavaScript' type='text/JavaScript'>");
echo("alert('Se produjo un error al enviar su pedido');");
echo("</script>
");
echo "
<script>window.location='vercarrito.php'</script>
";
}
echo $returning;
?>
//COMO LE HAGO PARA QUE LLEGUE TODO EL PEDIDO????????
En esta ocasión necesito resolver esto con mucha URGENCIA.
Enviar los pedidos a mi casilla mail
Según estuve leyendo, cada articulo que se selecciona, se agrega en una matriz. "OJO... No conozco mucho de como se almacenan los datos dentro de una matriz y asumo que es la matriz la que debo enviar a mi mail..."
este es mi archivo (agregar.php)
<?php
session_start();
extract($_REQUEST);
$tot_productos=0;
$conexion= mysql_connect("", "", "") or die (mysql_error());
mysql_select_db("productos", $conexion) or die ("fracaso la seleccion de la db productos_pyd");
if(!isset($cantidad)){$cantidad=1;}
$tot_productos=$tot_productos+1;
$qry=mysql_query("select * from forest where id='".$id."'");
$row=mysql_fetch_array($qry);
if(isset($_SESSION['carro']))
$carro=$_SESSION['carro'];
$carro[md5($id)]=array('identificador'=>md5($id),'cantidad'=>$cantidad,'nombre'=>$row['nombre'],'costo'=>$row['costo'],'id'=>$id);
$_SESSION['carro']=$carro;
header("Location:catalogo.php?".SID);
?>
Este es un resumen de todo el archivo, copie lo que creí necesario, solo las lineas PHP, así que no te alarmes si ves que algo no esta mal escrito, ya que el archivo completo está ok, y funciona bien...
<?php
session_start();
error_reporting(E_ALL);
@ini_set('display_errors', '1');
if(isset($_SESSION['carro']))
$carro=$_SESSION['carro'];else $carro=false;
$contador=0;
$suma=0;
$subtol=0;
$productos=0;
if($carro){
$color=array("#ffffff","#F0F0F0");
foreach($carro as $k => $v){
//PARA QUE ES FOREACH? Y que significan "$k => $v"............y porque luego de esto todos los campos llevan $v al inicio?, por ejemplo:$v['costo']
$subto1=$v['cantidad']*$v['costo'];;
$suma=$suma+$subto1;
$contador++;
?>
<form name="a<?php echo $v['identificador'] ?>" method="post" action="agregacar.php?<?php echo SID ?>" id="a<?php echo $v['identificador']; ?>">
<?php
echo $color[$contador%2];
echo $v['nombre'];
$productos=$v['nombre'];
echo $v['costo'];
echo $v['id']
$subtotal=$v['cantidad']*$v['costo'];;
echo number_format($subtotal,2);
}
echo count($carro);
echo number_format($suma,2);
?>
<form action="enviar.php" method="post" name="Formulario" id="Formulario">
<input name=" name" type="text" class="texto_ng" size="40" />
<input name="email" type="text" class="texto_ng" size="40" />
<input name="phone" type="text" class="texto_ng" size="40" id="phone" />
<textarea name="comments" cols="40" rows="6" class="texto_ng"></textarea></td>
<input type="submit" value="Enviar" />
<input type="hidden" name="productos" id="productos" value="<? Echo $productos; ?>" />
// en este caso almacene el valor de $v['nombre'] en ==== $productos y estoy enviando a mi archivo ENVIAR.PHP (que realiza el envio mail) el valor almacenado en productos... OJO, el valor si llega, pero solo el último articulo seleccionado...
<input type="reset" value="Limpiar" />
</form>
<?php }else{ ?>
<a href="prod_plan_01.php?<?php echo SID;?>"><img src="../images/next.png" width="48" height="48" border="0" alt="Volver al catálogo" title="Volver al Catálogo" />
<?php
}
?>
ESTE ES MI ARCHIVO (ENVIAR.PHP)
<?php
$to = "[email protected]";
$sub = "Pedido enviado";
$subject = "\r\nName: ".$_REQUEST["name"]
." \r\nEmail: ". $_REQUEST["email"]
."\r\nPhone: ".$_REQUEST["phone"]
."\r\nProductos: ".$_REQUEST["productos"]
//OJO, el valor de productos si llega, pero solo el último articulo seleccionado...
." \r\n\r\n"
."Comments: ".$_REQUEST["comments"]
."\r\n";
$headers = "From: ".$_REQUEST["email"]."\r\n";
if (@mail($to,$sub,$subject,$headers)){
//print "Su pedido se realizó con éxito";
echo("
<script language='JavaScript' type='text/JavaScript'>");
echo("alert('Su pedido se realizó con éxito');");
echo("</script>
");
echo "
<script>window.location='vercarrito.php'</script>
";
}else
{
//print "Se produjo un error al enviar su pedido";
echo("
<script language='JavaScript' type='text/JavaScript'>");
echo("alert('Se produjo un error al enviar su pedido');");
echo("</script>
");
echo "
<script>window.location='vercarrito.php'</script>
";
}
echo $returning;
?>
//COMO LE HAGO PARA QUE LLEGUE TODO EL PEDIDO????????
En esta ocasión necesito resolver esto con mucha URGENCIA.
1 Respuesta
Respuesta de davidcortesb
1