Visualizzazione dei risultati da 1 a 7 su 7

Visualizzazione discussione

  1. #1

    Insert multiple a partire da form html

    Ciao,
    ho la seguente esigenza: a partire dalla pagina form.html che contiene i campi: nome, articolo e quantità, posso creare più righe e tramite una submit, invio alla pagina insert.php che ha il compito di inserire nella tabella tbl_articoli le righe definite nella form.html

    Esempio:
    Nella pagina form.html posso creare dinamicamente ( a seconda delle esigenze) due o tre righe. Cliccando sul pulsante submit, invio tramite _POST i valori dei campi nome, articolo, quantità alla pagina insert.php. Quindi nella tabella mi aspetto due o tre righe.

    Il campo Codice deve essere ripetuto uguale per tutte le righe inserite.
    Attualmente, lo script sembra andare a buon fine, ma non inserisce nulla nella tabella mysql e non segnala nemmeno errori.

    Pagina form.html

    codice HTML:
    <head>
        <script type="text/javascript" src="js/script.js"></script> 
    </head>
    <body>    
        <form action="insert.php" method="POST">
    
                <p> 
                    <input type="button" value="Add Passenger" onClick="addRow('dataTable')" /> 
                    <input type="button" value="Remove Passenger" onClick="deleteRow('dataTable')"  /> 
                </p>
               <table id="dataTable" border="1">
                  <tbody>
                    <tr>
                        <td>
                            <label>Codice</label>
                            <input type="text" name="mx_codice" value="425882258">
                         </td>
                        <td>
                            <label>Nome</label>
                            <input type="text" name="mx_Nome[]">
                         </td>
                         <td>
                        <td>
                            <label>articolo</label>
                            <input type="text"  name="mx_articolo[]">
                         </td>
                        <td>
                            <label>quantità</label>
                            <input type="text"  name="mx_qta[]">
                         </td>                     
                    </tr>
                    </tbody>
                </table>
            <input class="submit" type="submit" value="Confirm" />
        </form>
    </body>
    Pagina insert.php
    Codice PHP:
    <?
    $insert 
    = array();
    for(
    $i=0$i count($_POST['mx_codice']); $i++)
    {
        
    $mx_codice = isset($_POST['mx_codice'][$i]) ? $_POST['mx_codice'][$i] : '';
        
    $mx_Nome = isset($_POST['mx_Nome'][$i]) ? $_POST['mx_Nome'][$i] : '';
        
    $mx_articolo = isset($_POST['mx_articolo'][$i]) ? $_POST['mx_articolo'][$i] : '';
        
    $mx_qta = isset($_POST['mx_qta'][$i]) ? $_POST['mx_qta'][$i] : '';
        ...
        
    $insert[] = "({$mx_codice}{$mx_Nome}{$mx_articolo}{$mx_qta})";
    }
    $values implode(', '$insert);
    $query "INSERT INTO tbl_test VALUES $values";
    //execute it
    ?>
    Come posso modificare la Insert affinchè inserisca i valori ricevuti nelle variabili _POST su più righe contemporaneamente?


    Grazie
    Ultima modifica di azocomposto; 02-08-2015 a 18:30

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.