Foros del Web » Creando para Internet » Diseño web »

recoger datos de un formulario

Estas en el tema de recoger datos de un formulario en el foro de Diseño web en Foros del Web. hola, tengo 1 formulario para enviar 2 opciones de voto a una encuesta, sí/no: echo "<form onclick=\"cargarResultados(); return false\" name=frmencuesta>"; echo "Está de acuerdo con ...
  #1 (permalink)  
Antiguo 13/04/2007, 00:32
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años, 7 meses
Puntos: 15
recoger datos de 1 formulario

hola, tengo 1 formulario para enviar 2 opciones de voto a una encuesta, sí/no:

echo "<form onclick=\"cargarResultados(); return false\" name=frmencuesta>";

echo "Está de acuerdo con ...?";

echo "<input type=hidden name=cod value=$id>";

echo "<input type='image' src='../compartido/ko.jpg' name='opcion' value='1'>No";

echo "<input type='image' src='../compartido/ok.jpg' name='opcion' value='2'>Sí";

echo "</form>";


ok, ahora quiero saber (recoger) en cuál de las 2 opciones ha hecho click, son 2 botones con imagen, con lo siguiente no me funciona:

opcion=document.getElementById('opcion').value;
  #2 (permalink)  
Antiguo 13/04/2007, 00:34
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años, 7 meses
Puntos: 15
recoger datos de un formulario

hola, tengo 1 formulario para enviar 2 opciones de voto a una encuesta, sí/no:

echo "<form onclick=\"cargarResultados(); return false\" name=frmencuesta>";

echo "Está de acuerdo con ...?";

echo "<input type=hidden name=cod value=$id>";

echo "<input type='image' src='../compartido/ko.jpg' name='opcion' value='1'>No";

echo "<input type='image' src='../compartido/ok.jpg' name='opcion' value='2'>Sí";

echo "</form>";


ok, ahora quiero saber (recoger) en cuál de las 2 opciones ha hecho click, son 2 botones con imagen, con lo siguiente no me funciona:

opcion=document.getElementById('opcion').value;
  #3 (permalink)  
Antiguo 13/04/2007, 00:51
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Re: recoger datos de un formulario

Hola:

Veo un onclick en una etiqueta form que me parece que no es correcto.

Sobre las imágenes, podrías ponerle nombres distintos, y los datos que se envían son las coordenadas donde pinches, pero por delante de ellas se pone el nombre de la imagen pinchada... deberías indicar con que lenguaje recibes los datos y reportarlo al foro adecuado.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 13/04/2007, 01:00
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años, 7 meses
Puntos: 15
Re: recoger datos de un formulario

recibo los datos con JS, el onclick me funciona bien (creo) pq recibo 1 de las opciones (la opción "No"), siempre recibo la misma, es decir q siempre recoge la primera opción ¿?, pero al menos recoge algo...
  #5 (permalink)  
Antiguo 13/04/2007, 01:20
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Re: recoger datos de un formulario

Cita:
Iniciado por humanista Ver Mensaje
recibo los datos con JS, el onclick me funciona bien (creo) pq recibo 1 de las opciones (la opción "No"), siempre recibo la misma, es decir q siempre recoge la primera opción ¿?, pero al menos recoge algo...
¿Donde los recibes?

No veo declarado ningún action...

No se si sabes que los input type="image" hacen submit... tal como lo tienes, supongo que recarga la página... y en la url debería indicarse la opción pulsada. (y sus coordenadas)

Sigo pensando que lo tienes mal, pero es tu código y sabrás como y porqué lo has hecho.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 13/04/2007, 01:22
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 19 años, 2 meses
Puntos: 49
Re: recoger datos de 1 formulario

vienen de la base de datos ? o del formulario por lo que entiendo tonces explicamos...

si es del form debes enviar por un metodo ocupamos POST en este caso ok... tonces solo debes hacer un if

if ($opcion1 == $_POST[si])
{
mustro si
}
else
{
no
}

obiemnte debes depurarlo esta a modo de ej. saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #7 (permalink)  
Antiguo 13/04/2007, 04:35
 
Fecha de Ingreso: abril-2007
Mensajes: 19
Antigüedad: 17 años, 7 meses
Puntos: 1
Re: recoger datos de un formulario

como dice el compañero un formulario no es un objeto sobre el que puedes realizar un evento, osea, que de onclick nada.

lo que hace un formulario es agrupar datos.

si quieres rellenas los datos.
le pones en vez de onclick ="funcion", action="./pagina_siguiente.php"

para que envie datos necesitas tener un input type="submit" es lo mismo que un type="button" pero que navega a la pagina indicada en el action del formulario.

si quieres saber que imagen clicka, pone un onclick en la imagen y una variable que se carga en un funcion.

Saludos.
  #8 (permalink)  
Antiguo 13/04/2007, 04:58
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años, 7 meses
Puntos: 15
Re: recoger datos de un formulario

a ver, quizás no me he explicado lo suficiente.

estoy utilizando AJAX, he puesto un formulario con 2 botones que votan ok o ko (sí/no) a un artículo, en función si les ha gustado o no. los botones son 2 imágenes en las que aparecen un "bien" y una "cruz" (mal).

el tema es que tengo que pasar desde ese formulario a una función javascript que es la q recoge los datos.

después va todo el procedimiento AJAX q para esto ya no interesa
  #9 (permalink)  
Antiguo 13/04/2007, 05:16
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años, 7 meses
Puntos: 15
Re: recoger datos de un formulario

- si le pongo la llamada a la función js cargarResultados(); en el action... m funcionará???, pero sigo teniendo el problema de enviar y luego recibir los datos, es decir saber q botón ha pinchado...

- no puedo recoger los datos con $_POST pq los debo recoger dentro de una función de js

- si pongo onclick en cada botón de imagen, como envío la $id del artículo q ahora tengo como "hidden"???

bufff...
  #10 (permalink)  
Antiguo 13/04/2007, 05:18
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Re: recoger datos de un formulario

Hola:

Como te he puesto antes, los input type=image hacen submit, son una especie de variante de los botones submit...

Si quieres llamar a una función desde una imagen, lo más fácil es usar el evento click de la imagen, y darle parámetros:
<img src="ok.jpg" alt="Ok" onclick="cargarResultados(1)" />
<img src="ko.jpg" alt="No" onclick="cargarResultados(2)" />

Si a la vez quieres poner algún dato en el formulario o cualquier otra cosa, enlazas las acciones que quieras separándolas por ";"

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #11 (permalink)  
Antiguo 13/04/2007, 05:34
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años, 7 meses
Puntos: 15
Re: recoger datos de un formulario

ah, parece buena idea, lo prueba y te digo, pq...

podría hacer:

<img src="ok.jpg" alt="Ok" onclick="cargarResultados(1, $id)" />
<img src="ko.jpg" alt="No" onclick="cargarResultados(2, $id)" />

para pasarle la id del artículo no? (antes estaba como hidden)
  #12 (permalink)  
Antiguo 13/04/2007, 07:11
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años, 7 meses
Puntos: 15
Re: recoger datos de un formulario

muchas gracias caricatos!!!, q grande eres!!!, funciona!!!
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 17:31.