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

Sådan indsætter du de dynamiske tabelrækkedata i databasen på én gang

Der er et par ting her, der vil gøre dit liv lettere, hvis det ændres.

Inputelementer med samme navn vil blive indsendt som et array i den rækkefølge, de vises. Standard procedure er at layoute din html sådan (nogle få felter fjernet for kortheds skyld);

<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

Dette vil give dig en poststruktur såsom;

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
));

Og indsæt med;

$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..
}



  1. Jeg forsøger at starte mysql-client i Docker, men jeg får adgang nægtet på grund af brugerfejl

  2. Hvordan konverteres menneskelig dato til unix tidsstempel i Mysql?

  3. Hvad er nyt i PostgreSQL 11

  4. Sådan gemmer du tom værdi som et heltalsfelt