2010-04-27 7 views
5

È possibile avere due moduli con due pulsanti di invio in modo tale che quando faccio clic sul pulsante si salvano i campi di input in entrambe le forme?Come utilizzare due moduli e inviare una volta?

Sto cercando di risolvere questo in PHP/MySQL.

ho cercato la mia strada:

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

No, non è possibile, si può presentare un solo modulo alla volta. – Salil

+0

sì, so che posso creare un modulo, ma devo usare due forme diverse, e queste forme non sono rispettive –

+1

Mac, Can U specificare il principio principale usando due moduli e devi inviarli con un clic .. se questa soluzione mi sembra più comprensibile ... –

risposta

4

No, puoi inviare solo un modulo alla volta.

Se è necessario utilizzare due moduli, l'unico modo per farlo sarebbe quello di clonare i campi del secondo modulo nel primo utilizzando jQuery. Tuttavia, non funzionerà quando JS è spento.

Vedi Copying from form to form in jQuery

Perché avete bisogno di due forme?

+0

in realtà dovrei usare due forme, perché gli script originali, con cui lavoro, richiedono due forme diverse e non posso combinarli in un'unità, come è il modo in jquery! ? –

+0

Perffect ........ –

+0

* (nitpicking) * non è necessario jQuery per combinare i moduli. Può essere fatto anche con JavaScript da solo;) – Gordon

0

Si potrebbe presentare entrambe le forme, allo stesso tempo tramite Ajax, ma il vostro script php potrebbe ricevere solo una forma alla volta. Meglio solo convertire i 2 moduli in un'unica grande forma se hai bisogno di tutti gli input che vanno a uno script

0

Per quanto ne so, è possibile presentare un solo modulo alla volta. Potresti provare a confezionarli in un'unica forma.

0

Un pulsante di invio invia solo i campi del modulo in cui risiede. Se è necessario il contenuto di entrambi i moduli, sarà necessario copiare i campi da un altro modulo in un campo nascosto nel modulo in cui è stato fatto clic sul pulsante di invio. Questo può essere fatto facilmente in JavaScript.

3

Se si dispone di un problema come questo, il design è difettoso.

È possibile inviare solo un modulo alla volta per un motivo.

Modificare il disegno per utilizzare solo un modulo; fare soluzioni alternative per presentarne due è comunque una pratica orribile che sarebbe meglio evitare.

1

Un modo per ottenere risultati simili sarebbe associare i due moduli in uno solo e avere 2 pulsanti di invio con valori diversi e lo stesso 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 
} 
?> 
Problemi correlati