Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/02/2011, 18:48
matajazz
 
Fecha de Ingreso: abril-2010
Mensajes: 52
Antigüedad: 14 años, 7 meses
Puntos: 0
varios registros a base de datos

Buenas a todos los amigos del foro.


Tengo un carrito de la compra del que quiero enviar datos a la base de datos una vez el usuario ha confirmado los datos.
El problema es que solo se inserta el último producto añadido al carro. No consigo añadir todas las lineas.

Aqui los datos del carrito recogidos para la confirmación:

<form action="resumen3.php" method="post">

<p><table width="94%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td colspan="7" bgcolor="#CCCCCC"><strong>Estos son los datos de Tu pedido:</strong></td>
</tr>
<td colspan="7">&nbsp;</td>
<tr>

<td width="7%" bgcolor="#666"><strong>ref</strong></td>
<td width="10%" bgcolor="#666"><strong>familia</strong></td>
<td width="29%" bgcolor="#666"><strong>poblacion</strong></td>
<td width="7%" align="left" bgcolor="#666"><strong>precio</strong></td>
<td width="19%" align="center" bgcolor="#666"><strong>participantes</strong></td>
<td width="16%" align="right" bgcolor="#666"><div align="center"><strong>total</strong></div></td>
</tr>
<?php

if(isset($_SESSION['carrito'])){
$total=0;
for($i=0;$i<=count($carrito_mio)-1;$i ++){
if($carrito_mio[$i]!=NULL){
?>

<tr>

<td valign="left" bgcolor="#999"><? print $carrito_mio[$i]['ref']; ?></td>
<td align="left" valign="top" bgcolor="#999"><? print $carrito_mio[$i]['familia']; ?></td>
<td align="left" valign="top" bgcolor="#999"><? print $carrito_mio[$i]['poblacion']; ?></td>
<td align="left" valign="top" bgcolor="#999"><? print $carrito_mio[$i]['precio']; ?></td>
<td align="center" valign="top" bgcolor="#999"><? print $carrito_mio[$i]['cantidad']; ?></td>
<td align="right" valign="top" bgcolor="#999"><div align="center">
<? print $carrito_mio[$i]['precio'] * $carrito_mio[$i]['cantidad']; ?>
</div></td>
</tr>
<?
$total=$total + ($carrito_mio[$i]['precio'] * $carrito_mio[$i]['cantidad']);
}
}
}
?>
<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>
<td><strong>total:</strong></td>
<td align="right"><?
if(isset($_SESSION['carrito'])){
print $total;
}
?> Euros </td>
</tr>
<tr>


<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td align="right"><input type="submit" name="Submit" value="Enviar pedido a PayPal" /></td>
</tr>
</table>
</p></form>


Aqui el envio de los datos a la base de datos:


$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

$insertSQL = sprintf("INSERT INTO tabla (numeroPedido, ref, familia, totalPedido, precio, cantidad, nombreUsuario, pagado) VALUES (%s, %s, %s, %s, %s, %s, %s, %s)",
GetSQLValueString($numPedido, "int"),
GetSQLValueString($ref, "int"),
GetSQLValueString($familia, "text"),
GetSQLValueString($total, "int"),
GetSQLValueString($precio, "int"),
GetSQLValueString($cantidad, "int"),
GetSQLValueString($nombreUsuario, "text"),
GetSQLValueString('n', "text"));

mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error());


Y Solo se inserta la última fila del carrito.


Os agradezco de antemano cualquier ayuda y sugerencia para solucionar mi problema.

Saludos,