Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    17

    inserimento di dati in tre tabelle da form

    Buongiorno a tutti, mi occorre il vostro aiuto.


    Ho un form di invio dati che una volta compilato deve inviare tutto a indirizzi mail e tutto nella tabella del database e fino a qui tutto bene


    Nel form ho una select es.


    <td align="left">Reparto</td>
    <td align="left"><select name="reparto">
    <option value="generico" selected="selected">Info generiche
    </option>
    <option value="commerciale">Commerciale
    </option>
    <option value="tecnico">Assistenza tecnica
    </option>
    </select>


    quello non riesco a fare è che in base alla scelta della select mi inserisse i dati o in una tabella o in un altra.
    Grazie a tutti.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Codice PHP:
    if( $_POST['reparto'] == 'generico' )
    {
        
    // fai l'insert nella tabella per il reparto generico
    }
    else if( 
    $_POST['reparto'] == 'commerciale' )
    {
        
    // fai l'insert nella tabella per il reparto commerciale
    }
    else if( 
    $_POST['reparto'] == 'tecnico' )
    {
        
    // fai l'insert nella tabella per il reparto tecnico

    Ultima modifica di Alhazred; 27-09-2021 a 16:45

  3. #3
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Codice PHP:
    if( $_POST['reparto'] == 'generico' )
    {
        
    // fai l'insert nella tabella per il reparto generico
    }
    else if( 
    $_POST['reparto'] == 'commerciale' )
    {
        
    // fai l'insert nella tabella per il reparto commerciale
    }
    else if( 
    $_POST['reparto'] == 'tecnico' )
    {
        
    // fai l'insert nella tabella per il reparto tecnico

    Corretto.

    SOLO per informazione potrebbe anche modificare la select html, inserendo come valore delle opzioni i nomi delle tabelle del db, e a quel punto creerà la query parametrizzando la tabella di destinazione (stando comunque MOLTO attenti a "pulire" i dati di ingresso, sia con una soluzione che con l'altra...sql injection dietro l'angolo :-D ).
    Concettualmente quindi sarà qualcosa del genere
    codice:
    [sezione_html]
    <select name="reparto"> 
    <option value="nome_tabella_generico" selected="selected">Info generiche
    </option> 
    <option value="nome_tabella_commerciale">Commerciale
    </option> 
    <option value="nome_tabella_tecnico">Assistenza tecnica
    </option> 
    </select>
    [/sezione_html]
    
    [codice_php]
    // Funzioni/metodi di pulizia dei valori POST per evitare injection ecc
    $this->pulisci_input($_POST);
    // Costruzione della query
    $sql = "insert into '{$_POST["reparto"]}' ....";
    // Esecuzione della insert
    $this->db->execute($sql);
    [codice_php]
    Dipende tutto dal livello di astrazione del programma e da quanto sia implementato a oggetti, ovviamente, ma per quanto possibile è sempre preferibile tenere le logiche del db separate dalle logiche di input/elaborazione grezza dei dati.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.