Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/04/2011, 00:43
Avatar de jlomss
jlomss
 
Fecha de Ingreso: diciembre-2008
Mensajes: 38
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: enviar textbox dinamico a correo carrito de compras

Hola Claus0618 la verdad es que saque un carrito de una muestra de programacionweb.net que acontinuacion te mostrare, ya lo adapte bien a mi pagina, y el problema es cuando mando los valores de la lista por correo, como lo son "cantidad, precio, producto", si los manda, solo que cuanto crece esa lista a otro renglon ya no me manda por correo esas filas nuevas. quizas no estoy haciendo bien el post con un foreach...

ese formulario se va llenando de forma dinamica

/////////// carrito
<form id="form2" name="form2" method="post" onSubmit="return checkFields();" action="envio_compra_carrito.php">
<fieldset>
<legend> </legend>
<h1 align="center">Carrito</h1>
<?php
if($carro){
//si el carro no est&aacute; vac&iacute;o,
//mostramos los productos
?>
<table width="720" border="0" align="center" cellpadding="0" cellspacing="0" id="t1">
<tr bgcolor="#333333" class="tit">
<td width="105">Producto</td>
<td width="207">Precio</td>
<td colspan="2" align="center">Cantidad de Unidades</td>
<td width="100" align="center">Borrar</td>
<td width="159" align="center">Actualizar</td>
</tr>

<?php
$color=array("#ffffff","#F0F0F0");
$contador=0;
//las 2 l&iacute;neas anteriores
//sirven s&oacute;lo para hacer
//una tabla con colores
//alternos
$suma=0;
//antes de recorrer todos
//los valores de la matriz
//$carro, ponemos a cero la
//variable $suma, en la que
//iremos sumando los subtotales
//del costo de cada item por la
//cantidad de unidades que se
//especifiquen
foreach($carro as $k => $v){
//recorremos la matriz que tiene
//todos los valores del carro,
//calculamos el subtotal y el
// total
$subto=$v['cantidad']*$v['precio'];
$suma=$suma+$subto;
$contador++;
//este es el contador que usamos
//para los colores alternos
?>
<tr bgcolor="<?php echo $color[$contador%2]; ?>" class='prod'>
<td bgcolor="<?php echo $color[$contador%2]; ?>"><?php echo $v['producto'] ?>
<input name="producto" type="text" id="producto" value="<?php echo $v['producto'] ?>" size="20"></td>
<td><?php echo $v['precio'] ?>
<input name="precio" type="text" id="precio" value="<?php echo $v['precio'] ?>" size="8"></td>
<td width="43" align="center"><?php echo $v['cantidad'] ?></td>
<td width="136" align="center"><input name="cantidad[]" type="text" id="cantidad" value="<?php echo $v['cantidad'] ?>" size="8">
<input name="id" type="hidden" id="id" value="<?php echo $v['id'] ?>"></td>
<td align="center"><a href="borracar.php?<?php echo SID ?>&id=<?php echo $v['id'] ?>"><img src="trash.gif" alt="1" width="12" height="14" border="0"></a></td>
<td align="center"><input name="imageField" type="image" src="actualizar.gif" width="20" height="20" border="0"></td>
</tr>
<?php
//por cada item creamos un
//formulario que submite a
//agregar producto y un link
//que permite eliminarlos
}
?>
</table>
<div align="center"><span class="prod">Total de Art&iacute;culos: <?php echo count($carro);
//el total de items va a ser igual
//a la cantidad de elementos que
//tenga la matriz $carro, valor
//que obtenemos con la funci&oacute;n
//count o con sizeof
?></span></div>
<br>
<div align="center"><span class="prod">Total: $<?php echo number_format($suma,2);
//mostramos el total de la variable
//$suma formate&aacute;ndola a 2 decimales
?></span></div>
<br>
<div align="center"><span class="prod">Continuar la selecci&oacute;n de productos</span> <a href="catalogo.php?<?php echo SID;?>"> <img src="continuar.gif" alt="1" width="13" height="13" border="0"></a></div>
<?php }else{ ?>
<p align="center"> <span class="prod">No hay productos seleccionados</span> <a href="catalogo.php?<?php echo SID;?>"> <img src="continuar.gif" alt="1" width="13" height="13" border="0"></a>
<?php }?>
</p>
<p align="center" class="prod">Nota: Para enviar el pedido, es necesario llenar los siguientes campos.</p>
<span class="prod">
<legend>Datos del Cliente</legend>
</span>
<p>
<span class="prod">
<label>Nombre Completo </label>
<input name="nombre" type="text" id="nombre" size="50" />
*
</span></p>
<p>
<span class="prod">
<label>Domicilio
<input name="direccion" type="text" id="domicilio" size="60" />
* </label>
(Calle, Numero, Colonia, C.P.)</span></p>
<p>
<span class="prod">
<label>Ciudad
<input name="ciudad" type="text" id="ciudad" />
</label>
*</span></p>
<p>
<span class="prod">
<label>Estado
<input name="estado" type="text" id="estado" />
</label>
*</span></p>
<p>
<span class="prod">
<label>Tel&eacute;fono
<input name="tel" type="text" id="tel" />
</label>
*</span></p>
<p>
<span class="prod">
<label>E-Mail
<input name="email" type="text" id="email" />
</label>
*</span></p>
<p>
<span class="prod">
<script language="JavaScript" type="text/javascript">

<!-- Begin
function checkFields() {
missinginfo = "";
if (document.form2.nombre.value == "") {
missinginfo += "\n - Nombre";
}

if ((document.form2.email.value == "") ||
(document.form2.email.value.indexOf('@') == -1) ||
(document.form2.email.value.indexOf('.') == -1)) {
missinginfo += "\n - Email";
}
if(document.form2.confirma_correo.value != document.form2.email.value)
{
alert("El email ingresado no coincide");
document.form2.confirma_correo.value = ""; document.form2.confirma_correo.focus(); return false;
}
if(document.form2.direccion.value == "") {
missinginfo += "\n - Direccion";
}
if(document.form2.ciudad.value == "") {
missinginfo += "\n - Ciudad";
}
if(document.form2.estado.value == "") {
missinginfo += "\n - Estado";
}
if(document.form2.tel.value == "") {
missinginfo += "\n - tel";
}
if (missinginfo != "") {
missinginfo ="_____________________________\n" +
"Te ha faltado introducir los siguientes datos:\n" +
missinginfo + "\n_____________________________" +
"\n¡Por favor pulsa enter, rellena los datos y prueba de nuevo!";
alert(missinginfo);
return false;
}
else return true;
}
// End -->
</script>

<input type="checkbox" value="1" name="chVerTutoriales" onClick="btTutorial.disabled = !this.checked" />
<input type="submit" value="Enviar" name="btTutorial" disabled="disabled"/>
</span></p>
<p class="prod">Nota: todos los campos con * son obligatorios.</p>
</fieldset>
<?php
print_r($_POST);
?>
</form>
///////////// este es mi envio de carrito por correo, una parte

/// datos que si envia por correo (funciona)
$senderNombre = $_POST['nombre'];
$senderTel = $_POST['tel'];
$senderEmail = $_POST['email'];
$senderDireccion = $_POST['direccion'];
$senderCiudad = $_POST['ciudad'];
$senderEstado = $_POST['estado'];

///////////esto no funciona solo devuelve un solo registrio
$senderProducto = $_POST['producto'];
$senderPrecio = $_POST['precio'];


//$test=array($senderPrecio);
//foreach ($test as $x)
//echo $x;
$array1 = array ();
$array1[] = $senderPrecio;
$array1[] = $senderPrecio;

for ($i=0; $i<count($array1); $i++){
echo "indice Array" . $i . ":" . $array1[$i] . "<br>";
}

la fuente del carrito es de http://www.programacionweb.net/articulos/articulo/?num=329