Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

gestire $_POST di 2 form nella stessa pagina

226 views
Skip to first unread message

Treggi

unread,
May 30, 2011, 4:51:11 AM5/30/11
to
Nella stessa pagina .php ho 2 form distinti; formA e formB.

Il submit dei form e gestito dall'evento onchange di 2 distinte select ed il
rimando è, sempre per entrambi, alla stessa pagina.

Per ora stavo "agendo" con l'istruzione: onChange="javascript:
document.formA.submit();document.formB.submit();" inserinta in entrambe le
select pensando, in questa maniera, di fare il submit di tutti e 2 i form
ogni volta che agisco su una qualsiasi e quindi di poter leggere al
caricamente delle pagina i dati passati con qualcosa tipo:

if(empty($_POST["formA"])) {
....
} else {
....
}

if(empty($_POST["formB"])) {
....
} else {
....
}

So che sto commettendo qualche errore grossolano... ma non riesco a
trovarlo. :(

Qualche indizio?


MacMax

unread,
May 30, 2011, 5:22:02 AM5/30/11
to
Treggi <Tre...@nospam.no> wrote:

> So che sto commettendo qualche errore grossolano... ma non riesco a
> trovarlo. :(
>
> Qualche indizio?

Ti conviene inserire un campo hidden in ognuno dei due form che
specifichi quale dei due sta inviando il contenuto.
Nel form 1:
<input type="hidden" name="choice" value="form1" />

Nel form 2:
<input type="hidden" name="choice" value="form2" />

Quindi li verifichi via php prima di gestire il contenuto dei dati.

Max
--
http://www.maxori.it
L'Arte è la capacità di fare cose di nessun valore
e di riuscire a venderle
F. Zappa

Alessandro Pellizzari

unread,
May 30, 2011, 5:30:09 AM5/30/11
to
Il Mon, 30 May 2011 10:51:11 +0200, Treggi ha scritto:

> Nella stessa pagina .php ho 2 form distinti; formA e formB.
>
> Il submit dei form e gestito dall'evento onchange di 2 distinte select
> ed il rimando è, sempre per entrambi, alla stessa pagina.

> So che sto commettendo qualche errore grossolano... ma non riesco a
> trovarlo. :(

Si`: non puoi fare il submit di due form alla stessa pagina php.

Il suggerimento di MacMax e` ottimo, ma tieni conto che lo script PHP
verra` richiamato due volte, e avrai l'output solo del secondo
submittato,
col rischio che il secondo submit interrompa la connessione del primo, e
quindi che allo script PHP arrivino dati parziali.

L'alternativa e` fare il submit via AJAX, e prendere il risultato dalla
stessa pagina per farne qualcosa.

Bye.

Riccardo

unread,
May 30, 2011, 5:34:37 AM5/30/11
to
Il 30/05/2011 10.51, Treggi ha scritto:
> Nella stessa pagina .php ho 2 form distinti; formA e formB.
>
> Il submit dei form e gestito dall'evento onchange di 2 distinte select ed il
> rimando è, sempre per entrambi, alla stessa pagina.
>
> Per ora stavo "agendo" con l'istruzione: onChange="javascript:
> document.formA.submit();document.formB.submit();" inserinta in entrambe le
> select pensando, in questa maniera, di fare il submit di tutti e 2 i form
> ogni volta che agisco su una qualsiasi

Ciao,
non puoi fare una cosa dal genere:
onChange="javascript:document.formA.submit();document.formB.submit();"

Ovvero puoi fare il submit di un solo form, mai di due form
contemporaneamente.

Pertanto, puoi soltanto unire i due form distinti in un unico form e
procedere di conseguenza.

Riccardo
--
* JoWe.it - Sito Joomla! 1.6.3 Gratis
* http://www.jowe.it

Treggi

unread,
May 30, 2011, 5:44:42 AM5/30/11
to
> Ciao,
> non puoi fare una cosa dal genere:
> onChange="javascript:document.formA.submit();document.formB.submit();"

Ok, grazie a tutti.
Provvedo.


0 new messages