Foros del Web » Programando para Internet » PHP »

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

Estas en el tema de Formulario que abra otro en esa página según lo elegido en el foro de PHP en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 19/08/2006, 03:31
Avatar de Batusai  
Fecha de Ingreso: enero-2005
Ubicación: Málaga -Andalucía- España
Mensajes: 130
Antigüedad: 19 años, 3 meses
Puntos: 1
Información Formulario que abra otro en esa página según lo elegido

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>
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>
Arriba ya habría puesto lo necesario para que compruebe si todos los campos han sido rellenados o no.
Código:
if (isset($procesa))
¿Alguien me ayuda?

Agradecido de antemano.

Batusai
  #2 (permalink)  
Antiguo 19/08/2006, 11:10
Avatar de Batusai  
Fecha de Ingreso: enero-2005
Ubicación: Málaga -Andalucía- España
Mensajes: 130
Antigüedad: 19 años, 3 meses
Puntos: 1
Me han dicho que para lo que quiero me podría ir bien usar AJAX y a primera vista creo que se ajusta a lo que pretendo. ¿Hay otra forma de hacerlo con PHP puro y duro? ¿Qué opinais del AJAX? (No hagais bromas con lo del equipo de fútbol )
  #3 (permalink)  
Antiguo 19/08/2006, 11:53
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 19 años, 5 meses
Puntos: 4
Creaa una funcion...

Hola lo que ami parecer debes hacer es crear una funcion argumentada, que cree el formulario, y en los argumentos, pasas los datos que quieras mostrar al formulario... y todo desde una pagina...
  #4 (permalink)  
Antiguo 19/08/2006, 13:47
Avatar de Batusai  
Fecha de Ingreso: enero-2005
Ubicación: Málaga -Andalucía- España
Mensajes: 130
Antigüedad: 19 años, 3 meses
Puntos: 1
Hola,

gracias por responder. ¿Te refieres a algo como ésto? Bueno, sería otra posibilidad más a tener en cuenta, pero no logro escribir el código correcto en ninguna.

En fin... ésto de no saber bien PHP tiene estas cosas.

Gracias de nuevo por el aporte. Saludos.
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 06:30.