modificare form dinamicamente

paskuale

Nuovo Utente
23 Nov 2013
7
0
0
Salve a tutti ho provato a cercare un po ovunque ma senza esito, ho una pagina di registrazione utenti ma avendo diverse tipologie di utenti devo stabilire che utente registrare e quindi chiedere informazioni diverse in base al tipo di utente, la prima voce del form è un campo select in cui chiedo che tipo di user registrare, ora, quello che voglio è che in base alla scelta fatta dalla select il form che si trova sotto si modifichi automaticamente con i campi giusti.
E' possibile farlo senza dover inviare il form e ricaricare la pagina?

grazie mille
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao e benvenuto,
dovrai usare un po di javascript
ti posto un esempio semplice di come potresti fare
HTML:
<?php
if (isset($_POST['invia'])) {
    var_dump($_POST);
}
?>
<style>
    form {
        display:none;
    }
</style>
<script>
    function user_type(select) {
        var id = select.options[select.selectedIndex].value;
        document.getElementById("normale").style.display = "none";
        document.getElementById("utonto").style.display = "none";
        document.getElementById("smanetta").style.display = "none";
        document.getElementById(id).style.display = "block";
    }
</script>

tipo utente :
<select name="type" onchange="user_type(this)">
    <option value="normale">normale</option>
    <option value="utonto">utonto</option>
    <option value="smanetta">smanetta</option>
</select>
<form id="normale" method="post">
    <input type="text" name="nome" value="utente normale"/>
    <input type="submit" name="invia" value="invia"/>
</form>
<form id="utonto" method="post">
    <input type="text" name="nome" value="utente utonto"/>
    <input type="submit" name="invia" value="invia"/>
</form>
<form id="smanetta" method="post">
    <input type="text" name="nome" value="utente smanetta"/>
    <input type="submit" name="invia" value="invia"/>
</form>
non ci ho ragionato molto, è giusto per darti un idea
 

paskuale

Nuovo Utente
23 Nov 2013
7
0
0
Ciao e benvenuto,
dovrai usare un po di javascript
ti posto un esempio semplice di come potresti fare
HTML:
<?php
if (isset($_POST['invia'])) {
    var_dump($_POST);
}
?>
<style>
    form {
        display:none;
    }
</style>
<script>
    function user_type(select) {
        var id = select.options[select.selectedIndex].value;
        document.getElementById("normale").style.display = "none";
        document.getElementById("utonto").style.display = "none";
        document.getElementById("smanetta").style.display = "none";
        document.getElementById(id).style.display = "block";
    }
</script>

tipo utente :
<select name="type" onchange="user_type(this)">
    <option value="normale">normale</option>
    <option value="utonto">utonto</option>
    <option value="smanetta">smanetta</option>
</select>
<form id="normale" method="post">
    <input type="text" name="nome" value="utente normale"/>
    <input type="submit" name="invia" value="invia"/>
</form>
<form id="utonto" method="post">
    <input type="text" name="nome" value="utente utonto"/>
    <input type="submit" name="invia" value="invia"/>
</form>
<form id="smanetta" method="post">
    <input type="text" name="nome" value="utente smanetta"/>
    <input type="submit" name="invia" value="invia"/>
</form>
non ci ho ragionato molto, è giusto per darti un idea

Grazie mille funziona quasi bene, ha solo un difetto, quando apri la pagina la select ha già una voce scelta e se la riscegli non compare il rispettivo form, mentre se scegli una voce diversa dalla prima e poi scegli la prima voce il forma compare.
Non so se mi sono spiegato.

Ciao
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Per non cambiare molto potresti provare così.
HTML:
<?php
if (isset($_POST['invia'])) {
    var_dump($_POST);
}
?>
<style>
    form[id='utonto'],form[id='smanetta'] {
        display:none;
    }
</style>
<script>
    function user_type(select) {
        var id = select.options[select.selectedIndex].value;
        document.getElementById("normale").style.display = "none";
        document.getElementById("utonto").style.display = "none";
        document.getElementById("smanetta").style.display = "none";
        document.getElementById(id).style.display = "block";
    }
</script>

tipo utente :
<select name="type" onchange="user_type(this)">
    <option value="normale">normale</option>
    <option value="utonto">utonto</option>
    <option value="smanetta">smanetta</option>
</select>
<form id="normale" method="post">
    <input type="text" name="nome" value="utente normale"/>
    <input type="submit" name="invia" value="invia"/>
</form>
<form id="utonto" method="post">
    <input type="text" name="nome" value="utente utonto"/>
    <input type="submit" name="invia" value="invia"/>
</form>
<form id="smanetta" method="post">
    <input type="text" name="nome" value="utente smanetta"/>
    <input type="submit" name="invia" value="invia"/>
</form>
 

Mr. PHP

Utente Attivo
31 Gen 2013
141
0
0
Salve a tutti ho provato a cercare un po ovunque ma senza esito, ho una pagina di registrazione utenti ma avendo diverse tipologie di utenti devo stabilire che utente registrare e quindi chiedere informazioni diverse in base al tipo di utente, la prima voce del form è un campo select in cui chiedo che tipo di user registrare, ora, quello che voglio è che in base alla scelta fatta dalla select il form che si trova sotto si modifichi automaticamente con i campi giusti.
E' possibile farlo senza dover inviare il form e ricaricare la pagina?

grazie mille

Bisognerebbe usare Javascript/Jquery
 
Discussioni simili
Autore Titolo Forum Risposte Data
Merlina3377 [PHP] modificare file su form immagine thump PHP 1
M modificare xml con un form? PHP 3
M Modificare le variabili di un file php attraverso un form PHP 1
M Modificare form email affinchè mandi una copia BCC CMS (Content Management System) 1
M campo ordine da modificare con form PHP 2
M [cerco webmaster] sito web da modificare Offerte e Richieste di Lavoro e/o Collaborazione 0
G Come modificare un pdf in php PHP 1
napuleone modificare il valore dellascroll bar di webkit HTML e CSS 8
Shyson Modificare codice e creare link PHP 0
J Modificare panorami 360 ps 2020 Photoshop 0
napuleone modificare il contenitore di un div Javascript 2
napuleone modificare il contenitore di un div Javascript 1
D modificare questo codice per inserimento in text e non in tabella jQuery 1
C modificare sito in locale con dreamWeaver HTML e CSS 3
T Modificare ruolo utenti in fase di registrazione E-Commerce 0
M modificare un file .XML da database Sql PHP 13
S Modificare intestazione documento pdf con LO Draw Linux e Software 0
felino Radio button e Bootstrap: modificare il colore di default! HTML e CSS 1
Shyson Modificare funzione php PHP 15
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
F Modificare report di etichette di access con vba MS Access 0
D [PHP] Tabella: modificare direttamente i valori PHP 6
P [Woocommerce] Modificare il Bottone Checkout di Woocommerce in base alla categoria di prodotto E-Commerce 10
Q impossibile modificare un file ....... C/C++ 2
C [HTML] modificare la scritta della copyright HTML e CSS 2
G [PHP] MODIFICARE DATI TABELLA CONTESTUALMENTE PHP 6
Y [PHP] [HTML] Modificare i quadranti PHP 1
A [PHP] Modificare campo database in base alla scelta dell'utente PHP 2
W Non riesco più a modificare i dati di una tabella da phpmyadmin MySQL 0
V [WordPress] Come modificare link in tasto menu css WordPress 21
Y Modificare script php PHP 5
G Fullcalendar: modificare colore testo, backgroup e bordi per tutti gli eventi jQuery 3
paloppa Bootstrap.min.css modificare il file HTML e CSS 6
G [HTML] Modificare ordine dei div in mobile responsive HTML e CSS 5
pfranco [PHP] Modificare pagina web online PHP 9
Shyson Modificare codice jQuery 0
A [Javascript] modificare il contenuto della barra indirizzi di un browser Javascript 1
asevenx modificare lista elementi togliendo l'elemento selezionato jQuery 1
Kolop "Modificare HTML" HTML e CSS 13
K [ASP.Net] Utilizzare e modificare dati linq ASP.NET 0
G Modificare navbar in base allo scroll jQuery 6
R [Photoshop] Modificare luminosità dei bordi in una foto Photoshop 2
A come modificare gli elementi di una lista e gli editText? Sviluppo app per Android 0
A modificare .jar con classe personalizzata Java 9
Mer556 BLOCCATO nel modificare un sito HTML e CSS 3
T modificare un template html5 HTML e CSS 6
B Modificare sorgente di pagina HTML e CSS 10
napuleone Modificare attributi di una classe con js Javascript 2
C modificare un rss con php PHP 2
L Modificare dati tabella mysql PHP 2

Discussioni simili