Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como inserir os dados da linha da tabela dinâmica no banco de dados de uma só vez


Há algumas coisas aqui que tornarão sua vida mais fácil se forem alteradas.

Elementos de entrada com o mesmo nome serão enviados como um array, na ordem em que aparecem. O procedimento padrão é fazer o layout do seu html assim (alguns campos foram removidos por questões de brevidade);
<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

Isso lhe dará uma estrutura de postagem como;
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 insira com;
$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..
}