Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/05/2010, 19:09
Avatar de wiwi74
wiwi74
 
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 2 meses
Puntos: 10
Respuesta: Formulario que permite ir seleccionando el producto correcto

Lo que tu quieres es la base de los carritos de compra e-comers nada mas ni nada menos.



Mira, te envio dos script, uno para cada pagina:




Llama a este script
pagina1.php




<?php
session_start();
?>

<form action='pagina2.php' method='post'>
Producto:<br />
<select name='producto'>
<option value=""></option>
<option value="produc1">produc1</option>
<option value="produc2">produc2</option>
<option value="produc3">produc3</option>
<option value="produc4">produc4</option>
<option value="produc5">produc5</option>
</select>


<p />Cantidad:<br />
<select name='cantidad'>
<option value=""></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>

<br />
Vaciar el carro:
<br />
<input type="checkbox" name="delete" value="true" />

<br /><input type='submit' value='Enviar' name='submited'><br />
</form>


<!--
Fin del primer script
-->




Ahora llama a este script
pagina2.php




<?php
session_start();

//vaciamos el carro
if($_POST['delete'] == true){
$_SESSION['ses_productos']='';
echo "Ha vaciado su carro...!<br />";
echo '<a href="pagina1.php">Volver</a>';
exit();
}


//almacenamos los pedidos: Nota el operador +=
$_SESSION['ses_productos'][$_POST['producto']] += $_POST['cantidad'];


/* NOTA:
$_SESSION['ses_productos'] Terminara siendo un array asociativo cuyos indices seran los productos seleccionados, y sus valores la cantidad seleccionada (como los indices no se repiten en un array, si pides mas de un mismo producto, el valor actual se le sumara al anterior)
Puedes ver el array en si haciendo un var_dump();
echo "<pre>";
var_dump($_SESSION['ses_productos']);
echo "</pre>";
*/


//recorremos el carrito. Uso un while, pero se puede usar un foreach etc
while(list($k, $v) = each($_SESSION['ses_productos'])){
echo $k ." => ". $v ."<br />";
}


?>

<a href="pagina1.php">Volver</a>



<!--
Fin del segundo script
-->





<!--

Lo que tu pides es muy similar...

Ojo: Esta simple y faltarian algunos filtros. La advertencia queda hecha. Por si critican.

Saludos...!

-->

Última edición por wiwi74; 19/05/2010 a las 19:24