Foros del Web » Programando para Internet » PHP »

dos formularios en la misma página

Estas en el tema de dos formularios en la misma página en el foro de PHP en Foros del Web. hola, tengo dos formularios en una misma página. El primero tiene un select con dnis de personas En el segundo quiero mostrar los datos de ...
  #1 (permalink)  
Antiguo 03/02/2010, 05:05
 
Fecha de Ingreso: julio-2007
Mensajes: 48
Antigüedad: 16 años, 9 meses
Puntos: 0
dos formularios en la misma página

hola,
tengo dos formularios en una misma página.
El primero tiene un select con dnis de personas
En el segundo quiero mostrar los datos de la persona a la q corresponda el dni elegido en el select.
¿Cómo cojo el dato dni del primer formulario?

Código PHP:
<form name="eligeDni" method="post" action=""> 
//primer formulario
<table align="center" cellspacing="10px">
 <tr align="center">
  <td>Dni:</td>
  <td><select name="dni">
           <option selected
    <?php
          
include("../auxi/conexionbd.php");
          
$conexion conectaBD();
          
$sql "select dni from socio";
          
$resultado mysql_query($sql,$conexion);
          while (
$row=mysql_fetch_array($resultado)){
             
printf ("<option>%s</option>",$row["dni"]);
           }
    
?>
   </select></td>
  </tr>
</table>
</form>

<?php
  
// quiero recoger el dato dni del select anterior    
  // NO FUNCIONA --> $dni = $_POST['dni'];
  //recojo resultados
  
$sql "select * from persona where dni='".$dni."'";
  
$resultado mysql_query($sql,$conexion);
  if (
$row=mysql_fetch_array($resultado)){
    
$nombre $row["nombre"];
    
$ape1 $row["apellido1"];
  }
?>
//segundo formulario (dnd muestro los resultados obtenidos)
<form name="modSocio" method="post"> 
  <table align="center" cellspacing="10px">
    <tr align="center">
      <td>Nombre:</td>
      <td><input type="text" name="nombre" value="<?php echo "$nombre" ?>"></td>
    </tr>
    <tr align="center">
      <td>Apellido 1:</td>
      <td><input type="text" name="apellido1" value="<?php echo "$ape2" ?>"></td>
    </tr>
    <tr>
      <td colspan="2" align="center"><input type="submit" name="enviar" value="Modificar socio"><input type="reset" name="cancelar" value="Cancelar"></td>
    </tr>
  </table>
</form>
  #2 (permalink)  
Antiguo 03/02/2010, 05:15
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
Respuesta: dos formularios en la misma página

El tema es que no estas enviando el primer formulario, php necesita actualizar la página.

Tienes dos opciones:

- Enviar el primer formulario mediante metodos o bien get o post usando php.
- Usar ajax para mostrarlos sin actualizar.
  #3 (permalink)  
Antiguo 03/02/2010, 05:19
 
Fecha de Ingreso: julio-2007
Mensajes: 48
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: dos formularios en la misma página

la idea q tenía era mandar el formulario cuando se cambie el select:

<form name="eligeDni" method="post" action="modSocio.php">
...
<select name="dni" onChange="submit();">
...

mosSocio.php es la página en la q estoy.

xo lo he probado y tampoco funciona...
  #4 (permalink)  
Antiguo 03/02/2010, 05:24
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
Respuesta: dos formularios en la misma página

En el código que has puesto no tienes ni definido el action ni definido el submit, quizas sea alguno de los dos, o bien que no haces bien el submit con javascript o que el action no esta definidio.

Mira ver si cuando haces el onchange actualiza la pagina actualiza.

Sino prueba asi:

<select name="dni" onChange="document.eligeDNI.submit();">
  #5 (permalink)  
Antiguo 03/02/2010, 05:25
 
Fecha de Ingreso: julio-2007
Mensajes: 48
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: dos formularios en la misma página

respecto al mensaje anterior, el problema está en que no funciona con el primer dni de la lista, con los demás sí. Se les ocurre algo?
voy a intentar solucionarlo...
  #6 (permalink)  
Antiguo 03/02/2010, 05:29
Avatar de karlic0s  
Fecha de Ingreso: abril-2007
Ubicación: Cartagena (Murcia)
Mensajes: 241
Antigüedad: 17 años
Puntos: 18
Respuesta: dos formularios en la misma página

Cita:
Iniciado por tecla2 Ver Mensaje
respecto al mensaje anterior, el problema está en que no funciona con el primer dni de la lista, con los demás sí. Se les ocurre algo?
voy a intentar solucionarlo...
Entonces tu problema esta en el javascript, si no cambias el primer dni de la lista, porque sale por defecto no funcionara el onchange.

Tiens dos opciones, o poner otro evento o hacer que el primer campo del select este vacio para asi tener la obligacion de cambiarlo al seleccionarlo

Etiquetas: dos, 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 02:16.