Mysql
 sql >> Database >  >> RDS >> Mysql

Come inserire contemporaneamente i dati della riga della tabella dinamica nel database

Ci sono alcune cose qui che ti semplificheranno la vita se cambiate.

Gli elementi di input con lo stesso nome verranno inviati come un array, nell'ordine in cui appaiono. La procedura standard consiste nel layout del tuo html in questo modo (alcuni campi rimossi per brevità);

<td><td><input name=timestart><input name=timeend><input name=tasks></td></tr>
<td><td><input name=timestart><input name=timeend><input name=tasks></td></tr>
<td><td><input name=timestart><input name=timeend><input name=tasks></td></tr>
... etc

Questo ti darà una struttura del post come;

Array
(
[timestart] => Array
    (
        [0] => timestart 1
        [1] => timestart 2
        [2] => timestart 3
    )

[timeend] => Array
    (
        [0] => timeend 1
        [1] => timeend 2
        [2] => timeend 3
    )

[task] => Array
    (
        [0] => task 1
        [1] => task 2
        [2] => task 3
));

E inserisci con;

$timestart = $_POST['timestart'];
$timeend = $_POST['timeend'];
$task = $_POST['task'];

for($i=1 ; $i < count($timestart) ; $i++)
{
    $sql = "INSERT INTO TSTable VALUES($timestart[$i],$timeend[$i],$task[$i]);"
    ... more code goes here..
}