Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Inserimento dati da due o più form

    Salve a tutti.
    Come da titolo, vorrei memorizzare nel database i dati (Nome, Cognome, Email etc.) inseriti attraverso due form distinti contenuti nella stessa pagina.
    La situazione è aggiunta di un nucleo familiare: 1° form "Inserimento primo componente", 2°form "Inserimento secondo componente" bottone per salvataggio o link per aggiungere altro form.
    La pagina dei form è questa
    codice HTML:
      <div class="form-bottom">
                                <div class="row">
                                    <h3 class="form-title"><span>Registrazione primo componente</span></h3>
                                    <button type="button" class="btn btn-previous abs">Indietro</button>                                  
                                    <div class="col-xs-12 col-sm-6 col-md-6 col-lg-3">
                                        <label for="form-nome">Nome</label>
                                        <input type="text" name="form-nome" class="form-control field" id="form-nome" />                                    
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-6 col-lg-3">
                                        <label for="form-cognome">Cognome</label>
                                        <input type="text" name="form-cognome" class="form-control field" id="form-cognome" />                                    
                                    </div>                                        
                                    <div class="col-xs-12 col-sm-6 col-md-6 col-lg-3">
                                        <label for="form-cfiscale">Codice fiscale</label>
                                        <input type="text" name="form-cfiscale" class="form-control field" id="form-cfiscale" />                                        
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-6 col-lg-3">
                                        <label for="form-datanascita">Data di nascita</label>
                                        <input type="text" name="form-datanascita" placeholder="GG/MM/AAAA" class="form-control field" id="form-datanascita" />                                        
                                    </div>
                                </div>
                                <div class="row">
                                    <div class="col-xs-12 col-sm-3 col-md-3 col-lg-2">
                                        <label for="form-sesso">Sesso</label>
                                        <input type="text" name="form-sesso" placeholder="es. M/F" class="form-control field" id="form-sesso" />                                        
                                    </div>                                 
                                    <div class="col-xs-12 col-sm-5 col-md-4 col-lg-2">
                                        <label for="form-soccupazionale">Stato occupazionale</label>
                                        <select name="form-soccupazionale" class="form-control field" id="form-soccupazionale">
                                            <option value="0">Inoccupato</option>
                                            <option value="1">Occupato</option>
                                            <option value="2">Occupato</option>
                                            <option value="3">Altro...</option>
                                        </select>                                                                   
                                    </div>
                                    <div class="col-xs-12 col-sm-4 col-md-5 col-lg-3">
                                        <label for="form-cfiscale">Cittadinanza</label>
                                        <input type="text" name="form-cittadinanza" class="form-control field" id="form-cittadinanza" />                                        
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-6 col-lg-2">
                                        <label for="form-telefono">Telefono</label>
                                        <input type="text" name="form-telefono" placeholder="+39" class="form-control field" id="form-telefono" />                                        
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-6 col-lg-3">
                                        <label for="form-email">E-mail</label>
                                        <input type="text" name="form-email" placeholder="es. paolo.rossi@gmail.com" class="form-control" id="form-email" />                                        
                                    </div>
                                    <div class="col-xs-12">
                                        <label for="form-email">Note aggiuntive</label>
                                        <textarea class="form-control low-hight" cols="4" rows="4"></textarea>
                                    </div>
                                </div>  
                                <div class="row components">
                                    <h3 class="form-title"><span>Ruolo componente</span></h3>
                                    <div class="col-xs-12 col-sm-6 col-md-4 col-lg-2">
                                        <div class="input-group">
                                            <input type="radio" value="choice" tabindex="1" id="radio-choice-1" name="radio-choice" />                                    
                                            <label>Padre</label>
                                        </div>                                   
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-4 col-lg-2">
                                        <div class="input-group">
                                            <input type="radio" value="choice" tabindex="2" id="radio-choice-2" name="radio-choice" />
                                            <label>Madre</label>
                                        </div>                                    
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-4 col-lg-2">
                                        <div class="input-group">
                                            <input type="radio" value="choice" tabindex="3" id="radio-choice-3" name="radio-choice" />
                                            <label>Figlio</label>
                                        </div>                                    
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-4 col-lg-2">
                                        <div class="input-group">
                                            <input type="radio" value="choice" tabindex="4" id="radio-choice-4" name="radio-choice" />
                                            <label>Figlia</label>
                                        </div>                                    
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-4 col-lg-2">
                                        <div class="input-group">
                                            <input type="radio" value="choice" tabindex="5" id="radio-choice-5" name="radio-choice" />
                                            <label>Nonno/Nonna</label>
                                        </div>                                    
                                    </div>
                                    <div class="col-xs-12 col-sm-6 col-md-4 col-lg-2">
                                        <div class="input-group">
                                            <input type="radio" value="choice" tabindex="6" id="radio-choice-6" name="radio-choice" />
                                            <label>Zio/Zia</label>
                                        </div>                                    
                                    </div>                                      
                                </div>                      
                             
                           <div class="btn-components">
                                    <div class="left-wrap">
                                        <a href="#">Aggiungi altro componente</a>
                                    </div>
                                    <div class="right-wrap">
                                        <button type="button" class="btn btn-next btn-single">Salva e procedi</button>
                                    </div>
                                    <br class="clearer" />
                                </div>      
    Il codice postato indica un solo form a causa del limite di caratteri ma in realtà sono due (codice uguale).
    Che suggerimenti potreste darmi?

  2. #2
    Quote Originariamente inviata da jumpy83 Visualizza il messaggio
    Che suggerimenti potreste darmi?
    Dovresti usare un unico form ed impostare i campi in questa maniera

    codice:
    <input name="nome[]">
    <input name="cognome[]">
    <input name="sesso[]">
    
    <input name="nome[]">
    <input name="cognome[]">
    <input name="sesso[]">
    
    <input name="nome[]">
    <input name="cognome[]">
    <input name="sesso[]">


    poi recuperi i dati con un loop

    Codice PHP:
    foreach($_POST['nome'] as $index=>$nome){
        
    $cognome=$_POST['cognome'][$index];
        
    $sesso=$_POST['sesso'][$index];
        
    //$nome è già valorizzata nel foreach


  3. #3
    Quote Originariamente inviata da lucavizzi Visualizza il messaggio
    Dovresti usare un unico form ed impostare i campi in questa maniera

    codice:
    <input name="nome[]">
    <input name="cognome[]">
    <input name="sesso[]">
    
    <input name="nome[]">
    <input name="cognome[]">
    <input name="sesso[]">
    
    <input name="nome[]">
    <input name="cognome[]">
    <input name="sesso[]">


    poi recuperi i dati con un loop

    Codice PHP:
    foreach($_POST['nome'] as $index=>$nome){
        
    $cognome=$_POST['cognome'][$index];
        
    $sesso=$_POST['sesso'][$index];
        
    //$nome è già valorizzata nel foreach

    Il recupero lo faccio nella query in modo simile al seguente (ma con il codice che mi hai postato) giusto?
    Codice PHP:
    $query "INSERT INTO tabella (
               carttemp_name,
             carttemp_citynum)
                  VALUES "
    ;
    //ciclo foreach nella query
      
    foreach ($myCheck as $key => $value) {
      
    $query .= "('$value', '$key') ,"
      } 

    EDIT: dimenticavo di dire che gli input sono già all'interno di un unico form
    Ultima modifica di jumpy83; 11-03-2016 a 17:54

  4. #4
    Quote Originariamente inviata da jumpy83 Visualizza il messaggio
    Il recupero lo faccio nella query in modo simile al seguente (ma con il codice che mi hai postato) giusto?
    Codice PHP:
    $query "INSERT INTO tabella (
               carttemp_name,
             carttemp_citynum)
                  VALUES "
    ;
    //ciclo foreach nella query
      
    foreach ($myCheck as $key => $value) {
      
    $query .= "('$value', '$key') ,"
      } 

    EDIT: dimenticavo di dire che gli input sono già all'interno di un unico form

    Ti ho mostrato come inviare e ricevere i campi, l'inserimento nel db dipende da come hai strutturato le tabelle.

  5. #5
    Quote Originariamente inviata da lucavizzi Visualizza il messaggio
    Ti ho mostrato come inviare e ricevere i campi, l'inserimento nel db dipende da come hai strutturato le tabelle.
    Il mio db consiste in una tabella "soggetti" in cui memorizzo i dati inseriti attraverso i form.
    Dapprima ho provato con form singolo e sono riuscito a salvare con successo tutti i dati.
    Poi ho voluto "complicare" la cosa aggiungendo un secondo form e cercando di memorizzare.

    Le colonne del mio db sono
    IDSoggetto, Nome,Cognome,DataNascita,CodiceFiscale,Cittadinanz a,IDStatoOccupazionale,Telefono,Email,IDRuoloFamig lia,Sesso,Note)

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.