Creare due action diverse per un form

Recentemente ho avuto la necessità di creare due action diverse per un unico form, le quali puntano rispettivamente a 2 iframe separati (in cui visualizzare i risultati di una query eseguita mediante PHP/SQL).

Per fare una cosa di questo tipo è stato necessario utilizzare due pulsanti di submit, ad ognuno dei quali, mediante javascrip, è stata assegnata una action ed un target specifico.

XHTML

Ma bando alle ciance ed ecco il codice:

<form name="filtro" id="filtro" method="post">

<strong>da:</strong><input type="text" name="datain" tabindex="1" id="datain"/>

<strong>a:</strong> <input type="text" name="datafin" tabindex="2" id="datafin"/>

<p align="center"><input type="submit" name="filtra" id="filtra" value="Filtra i ricavi" onclick="javascrip:filtro.action='ris_ricavi.php'; filtro.target='frame1'" tabindex="3" /></p>

<p align="center"><input type="submit" name="filtra" id="filtra" value="Filtra i costi" onclick="javascrip:filtro.action='ris_costi.php'; filtro.target='frame2'" tabindex="4" /></p>

<iframe name="frame1" id="frame1" src ="ris_ricavi.php" align="middle" width="750" height="300">

<iframe name="frame2" id="frame2" src ="ris_costi.php" align="middle" width="750" height="300">

</form>

Per qualunque chiarimento contattatemi.

A presto.

Creare due action diverse per un formultima modifica: 2011-08-23T15:23:45+02:00da nazarenolatella
Reposta per primo quest’articolo

2 pensieri su “Creare due action diverse per un form

  1. Non ho capito una cosa. I due pulsanti bisogna “spingerli” entrambi?
    Il mio form richiede due azioni:
    a) fornire la pagina richiesta dall’utente
    b) spedirmi in mail la specifica pagina che quell’utente mi ha richiesto (inciso: ho provato a scrivere un file di testo o a fare una tabella con le richieste fatte dall’utente nel form ma il server non mi dà il permesso).

    Quindi, una volta che l’utente mi ha spinto un tasto, viene REDIREZIONATO verso la pagina richiesta. E certo non può spingere l’altro tasto (tra l’altro non sarebbe nemmeno opportuno chiedere la spinta dei due tasti).

    Come posso risolvere secondo te?

    Grazie per il tuo tempo.

  2. Ciao Vincenzo,
    come puoi notare i due pulsanti puntano a due action differenti quindi non si devono pigiare entrambi. Se ne pigi uno avrai un risultato, se pigi l’altro avrai un altro risultato.

    Buona giornata.

I commenti sono chiusi.