2010-04-27 44 views
5

¿Es posible tener dos formularios con dos botones de envío para que cuando haga clic en el botón, se guarden los campos de entrada en ambos formularios?¿Cómo usar dos formularios y enviar una vez?

Estoy preocupado por resolver esto en PHP/MySQL.

me trataron a mi manera:

if ((isset($_POST["form-1"])) && (isset($_POST["form-2"])) { 
    //SQL Insertion 
} 
+3

No, no es posible que pueda presentar sólo una forma a la vez. – Salil

+0

sí, sé que puedo hacer una forma de unidad, pero debo usar dos formularios diferentes, y estos formularios no son respectivos –

+1

Mac, ¿puede especificar el formato principal utilizando dos formularios y debe enviarlos con un clic ... si esto se vuelve una solución clara podría ser más completo ... –

Respuesta

4

No, solo puede enviar un formulario a la vez.

Si tiene que usar dos formularios, la única forma de hacerlo sería clonar los campos del segundo formulario en el primero usando jQuery. Sin embargo, no funcionará cuando JS esté apagado.

Ver Copying from form to form in jQuery

¿Por qué necesita dos formas?

+0

en realidad debería usar dos formularios, porque los guiones originales, estoy trabajando con, requieren dos formas diferentes y no puedo combinarlas en una unidad, ¿cómo está el camino en jquery! ? –

+0

Perffect ........ –

+0

* (nitpicking) * no necesita jQuery para combinar los formularios. También se puede hacer con JavaScript;) – Gordon

0

Usted podría presentar ambas formas al mismo tiempo, a través de Ajax, pero el script php sólo recibiría una forma a la vez. Es mejor simplemente convertir sus 2 formularios en una gran forma si necesita que todas las entradas vayan a un script

0

Por lo que sé, solo se puede enviar un formulario a la vez. Puedes intentar envolverlos en una forma.

0

Un botón enviar solo los campos del formulario en el que vive. Si necesita contenido de ambos formularios, deberá copiar los campos de otro formulario a un campo oculto en el formulario donde se hizo clic en el botón Enviar. Esto puede hacerse fácilmente en JavaScript.

3

Si tiene un problema como este, el diseño es defectuoso.

Puede enviar solo un formulario a la vez por un motivo.

Cambie el diseño para usar solo un formulario; hacer las pausas para enviar dos de todos modos es una práctica horrible que sería mejor evitar.

1

Una forma de lograr resultados similares sería agrupar las dos formas en una sola y tener 2 botones de envío con diferentes valores y el mismo campo name="submit".

toFoo.html:

<form action="doFoo.php"> 
    User <input type="text" name="username" /> 
    Pass <input type="password name="password" /> 

    <!-- Submit one --> 
    <input type="submit" name="submit" value="Create user" /> 

    <!-- some more of your fields or whatever --> 
    <input type="text" name="blah" value="bleh" /> 

    <!-- Submit two --> 
    <input type="submit" name="submit" value="Login user" /> 
</form> 

doFoo.php:

<?php 
if($_POST["submit"] == "Login user") { 
    //do login foo  
} 
if($_POST["submit"] == "Create user") { 
    //do signup foo 
} 
?> 
Cuestiones relacionadas