MULTIMEDIA, Video digital, Grabación, Diseño gráfico, Diseño web, Programación > Webmasters - Diseño Web - Programación - Diseño gráfico

Formulario que abra otro en esa página según lo elegido

(1/1)

HuanManwe:
Hola,

he buscado todos los enlaces que hablan de formularios en estos foros pero no he encontrado lo que necesito.

Quiero hacer una página donde se vea un formulario con 4 opciones, y según la opción escogida que se vea debajo otro formulario para añadir texto. He pensado 2 posibilidades:

1ª.- Hacer una página con frames, y que según lo elegido en el frame de arriba aparezca uno abajo, pero eso de trabajar con marcos me parece un poco chapuza, aunque socorrido.

2ª.- Usar javascript. Que es lo más "bonito" pero de lo que menos sé, y además dependo de que el visitante tenga el Java instalado en su PC.

Por ahora lo que tengo es:


--- Código: ---<form action="formulario.php" method="post">
<input type="radio" name="grupo" value="verbo"> Verbo<br>
<input type="radio" name="grupo" value="sustantivo"> Sustantivo<br>
<input type="radio" name="grupo" value="adjetivo"> Adjetivo<br>
<input type="radio" name="grupo" value="otros"> Otros<br>
</form>
--- Fin del código ---
formulario.php es la propia página donde debería salir ese primer formulario, y según si elijo, por ejemplo "sustantivo" que salga abajo:

--- Código: ---<FORM action=formulario.php method=post>
<TABLE border=0>
  <TBODY>
  <TR bgColor=#cccccc>
    <TD width=90>Concepto</TD>
    <TD width=90>dato</TD>
  <TR>
    <TD>Palabra en alem&aacute;n</TD>
    <TD align=left><INPUT maxLength=45 size=45 name=deutsch></TD>
  <TR>
    <TD>Plural</TD>
    <TD align=left><INPUT maxLength=50 size=50 name=plural></TD>
  <TR>
    <TD>G&eacute;nero</TD>
    <TD align=left><INPUT maxLength=60 size=60 name=genero></TD>
  <TR>
    <TD>español</TD>
    <TD align=left><INPUT maxLength=60 size=60 name=spanisch></TD>
  <TR>
    <TD>Ejemplo</TD>
    <TD align=left><INPUT maxLength=120 size=120 name=beispiel></TD>
  <TR>
    <TD align=middle
  colSpan=5><INPUT type=submit value="Enviar palabra" name="procesa"></TD></TR></TBODY></TABLE></FORM>

--- Fin del código ---

Arriba ya habría puesto lo necesario para que compruebe si todos los campos han sido rellenados o no.

--- Código: ---if (isset($procesa))
--- Fin del código ---

¿Alguien me ayuda?  :redface:

Agradecido de antemano.


Huan Manwë

Gepetto:
Una alternativa a los frames o el javascript, podría ser utilizar una estructura de control 'SWITCH' en la misma página del formulario para que dependiendo de la opción elegida se incluya un formulario externo (con include(), por ejemplo). También tendrías que usar un botoncito para enviar los datos y un 'PHP_SELF' en el action, para que la página se llame a sí misma.

Navegación

[0] Índice de Mensajes

Ir a la versión completa