Foros del Web » Programando para Internet » PHP »

Formulario que permite ir seleccionando el producto correcto

Estas en el tema de Formulario que permite ir seleccionando el producto correcto en el foro de PHP en Foros del Web. Hola queria consultar si me pueden dar algunas ideas o pautas sobre cómo llegar a hacer esto en PHP La idea es tener 15 preguntas ...
  #1 (permalink)  
Antiguo 19/05/2010, 17:32
 
Fecha de Ingreso: mayo-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
Formulario que permite ir seleccionando el producto correcto

Hola queria consultar si me pueden dar algunas ideas o pautas sobre cómo llegar a hacer esto en PHP

La idea es tener 15 preguntas con las respuestas en checkbox. Cada pregunta en una página diferente y se va avanzando con un botón de "siguiente"

El tema es que al finalizar todas las preguntas segun las respuestas obtenidas se muestra un producto de entre 6

lo que necesito es una idea o pauta a seguir para terminar haciendo el switch final que seleccione el producto que corresponde


Muchas gracias por la ayuda a todos

saludos
  #2 (permalink)  
Antiguo 19/05/2010, 18:16
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: Formulario que permite ir seleccionando el producto correcto

Dependiendo del $_POST recogido muestras el producto que tengas ingresado según el resultado
  #3 (permalink)  
Antiguo 19/05/2010, 19:02
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Respuesta: Formulario que permite ir seleccionando el producto correcto

Lo que vas a tener que ir haciendo es almacenar los resultados en una sessión, para evitar que se pierdan los registros por cualquier "problema" que surga cuando se está respondiendo las preguntas.

Yo lo haría de esa forma, almacenaría los datos recibidos por $_GET o $_POST en sessiones distintas, así de ésa forma, cuando necesitás mostrar el resultado final, ya sabés que hacer.

Y si de esas casualidades, hay alguna sessión que se encuentra vacía porque no se contestó o por algún motivo, lo podrías verificar con ISSET.

Cualquier cosa busca en la Web de php, o bien en el foro para tener idea de como se utilizan, pero no te preocupes porque son cosas sencillas de aplicar.

Saludos.
__________________
Freelance - Aplicaciones Web
  #4 (permalink)  
Antiguo 19/05/2010, 19:09
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
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
  #5 (permalink)  
Antiguo 20/05/2010, 07:31
 
Fecha de Ingreso: mayo-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
Respuesta: Formulario que permite ir seleccionando el producto correcto

Hola, muchas gracias a todos por responder.

El tema de pasar entre página y página y almacenar las respuestas, no hay problema.

Mi consulta apunta mas al como sé que resultado mostrar en la página final.

Porque no es que las personas eligen un producto y finalmente muestro todas las opciones que fué eligiendo;
sino que según las respuesta que fué dando el usuario tengo que mostrar uno de entre varios productos que existen.

Se me ocurre poner que cada resuesta tenga un puntaje, y segun lo que sumen todas las respuestas seleccionar un producto u otro, pero son tantas respuestas que no sé si lo voy a poder lograr.

Se les ocurre otra forma?

Mi consulta va más a la idea de cómo poder desarrollarlo

Muchisimas gracias
  #6 (permalink)  
Antiguo 20/05/2010, 11:25
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Formulario que permite ir seleccionando el producto correcto

<!--
Bueno no elije un producto, pero elije una respuesta... La base es la misma.
Desarrollar algo asi lleva su tiempito, que sin dinero no se hace (no es una indirecta).
Simplemente de las primeras 15 pregunats se elije una
(si usas radiobotones, pero tu usas chekbox por lo que se podran elegir varias)
en la primer pagina conviertes a $_SESSION['ses_respuestas'] en un array
se envian las variables a la proxima pagina, se almacenan en la variable de session $_SESSION['ses_respuestas']; y asi...
ojo: tu quieres un valor final, pero si no vas almacenando de pagina en pagina,
no existira ningun valor final
-->

<!-- Llama a este script mini2.php -->

<?
@session_start();
if($_GET['borrar'] != ""){
$_SESSION['ses_respuestas'] ='';
}
?>
<h3>Elige color</h3>
<form action="mini3.php" method="post">
Rojo: <input type="checkbox" name="rojo" value="rojo"><br />
Verde: <input type="checkbox" name="verde" value="verde"><br />
Azul: <input type="checkbox" name="azul" value="azul"><br />
Amarillo: <input type="checkbox" name="amarillo" value="amarillo"><br />
<input type="submit" name="boton" value="Enviar"><br />
</form>
<?
if(!is_array($_SESSION['ses_respuestas'])){
$_SESSION['ses_respuestas'] = array();
}
?>


<!-- Llama a este script mini3.php -->

<?
@session_start();
?>
<h3>Elige forma</h3>
<form action="mini4.php" method="post">
Redondo: <input type="checkbox" name="redondo" value="redondo"><br />
Cuadrado: <input type="checkbox" name="cuadrado" value="cuadrado"><br />
Cubico: <input type="checkbox" name="cubico" value="cubico"><br />
Esferico: <input type="checkbox" name="esferico" value="esferico"><br />
<input type="submit" name="boton" value="Enviar"><br />
</form>
<?
// 1 ES EL PUNTAJE DE LA RESPUESTA SELECCIONADA (obvio le pones el que desees)
if($_POST['rojo'])
$_SESSION['ses_respuestas'][$_POST['rojo']] += 1;
if($_POST['verde'])
$_SESSION['ses_respuestas'][$_POST['verde']] += 1;
if($_POST['azul'])
$_SESSION['ses_respuestas'][$_POST['azul']] += 1;
if($_POST['amarillo'])
//vamos mostrando el resultado (si no quieres no los muestras)
$_SESSION['ses_respuestas'][$_POST['amarillo']] += 1;
foreach($_SESSION['ses_respuestas'] as $k => $v){
echo "<li>". $k ." Puntaje => ". $v;
}
?>
<p /><a href="mini2.php">Volver</a>
<p /><a href="mini2.php?borrar=true">Borrar</a>


<!-- Llama a este script mini4.php -->

<?
@session_start();
if($_POST['redondo'])
$_SESSION['ses_respuestas'][$_POST['redondo']] += 1;
if($_POST['cuadrado'])
$_SESSION['ses_respuestas'][$_POST['cuadrado']] += 1;
if($_POST['cubico'])
$_SESSION['ses_respuestas'][$_POST['cubico']] += 1;
if($_POST['esferico'])
$_SESSION['ses_respuestas'][$_POST['esferico']] += 1;
echo '<h3>Resultado final:</h3>';
echo '<tt>Ya se puede hcer un switch de acuerdo a lo seleccionado</tt><br />';
foreach($_SESSION['ses_respuestas'] as $k => $v){
echo "<li>". $k ." Puntaje => ". $v;
}
?>
<p /><a href="mini2.php">Volver</a>
<p /><a href="mini2.php?borrar=true">Borrar</a>
  #7 (permalink)  
Antiguo 20/05/2010, 11:40
 
Fecha de Ingreso: mayo-2009
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
Respuesta: Formulario que permite ir seleccionando el producto correcto

Hola Wiwi74

Muchas gracias por la respuesta

Armé las tres paginas y lo probé, creo que puedo armar algo yendo por este lado.

Muchas gracias

Saludos
  #8 (permalink)  
Antiguo 20/05/2010, 17:41
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Formulario que permite ir seleccionando el producto correcto

ok, suerte...

Saludos...!
  #9 (permalink)  
Antiguo 26/07/2010, 16:17
 
Fecha de Ingreso: diciembre-2009
Mensajes: 4
Antigüedad: 14 años, 4 meses
Puntos: 0
De acuerdo Respuesta: Formulario que permite ir seleccionando el producto correcto

hola amigos.. soy nuevo en el foro y la verdad q me parece exelente!!
necesito su ayuda... el tema es tengo hecha una pagina en flash la cual vende productos.. hice los botones para agregar al carro y demas!! necesitaria ayuda de como colocar el carro en mi web.. mas precisamente que AS debo usar para q al presionar el boton de agregar al carro me lo agregue como asi el precio.. de la compra.. este luego ser enviado a un mail con la informacion del pedido y una copia al cliente para su mail asi el puede saber q compro!! disculpen la molestia soy novato en flash y programacion.. pero un trabajo es un trabajo.. eheheh ;) no hay q desaprovecharlo!! saludos y gracias ç

pD. no es necesario q tengan q pagar con tarjeta . estan manejando deposito para mas fiabilidad!! asi q solo seria q el carro junte la data y asi enviarla al mail..
estuve viendo algo de mysql obviamente es necesario pero si me diera una mano agradecido gente!! estoy trabajnd en flash cs4 y AS2.0 saludos nuevamente!

GASTON

Última edición por eltano_mag; 26/07/2010 a las 16:23

Etiquetas: correcto, permite, producto, formulario
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 12:08.