2016-04-06 13 views
1

Ich versuche, mehrere Zeilen von Daten in eine MySQL-Tabelle einzufügen, aber nur die erste Zeile wird eingefügt. Hier ist der Code in meinem Controller.Laravel mehrere Inserts zu MySQL

DB :: table("users_has_activities") -> insert 
(
array("usersID" => $userId, "activitiesID" => 1, "time" => $datetime, "value" => 1, 
"multiplier" => 1), 


array("usersID" => $userId, "activitiesID" => 2, "time" => $datetime, "value" => 1, 
"multiplier" => 1), 

array("usersID" => $userId, "activitiesID" => 3, "time" => $datetime, "value" => 1, 
"multiplier" => 1) 
); 

Ich kann es auf diese Weise tun, aber ich für eine bessere Art und Weise suchen.

DB :: table("users_has_activities") -> insert 
(
array("usersID" => $userId, "activitiesID" => 1, "time" => $datetime, "value" => 1, 
"multiplier" => 1) 
); 

    DB :: table("users_has_activities") -> insert 
(
array("usersID" => $userId, "activitiesID" => 2, "time" => $datetime, "value" => 1, 
"multiplier" => 1) 
); 


DB :: table("users_has_activities") -> insert 
(
array("usersID" => $userId, "activitiesID" => 3, "time" => $datetime, "value" => 1, 
"multiplier" => 1) 
); 

Antwort

1

Sie versuchen, ein Array zu übergeben, aber Sie vergessen array() hinzuzufügen:

DB::table("users_has_activities") -> insert(array(
array("usersID" => $userId, "activitiesID" => 1, "time" => $datetime, "value" => 1, 
"multiplier" => 1), 

array("usersID" => $userId, "activitiesID" => 2, "time" => $datetime, "value" => 1, 
"multiplier" => 1), 

array("usersID" => $userId, "activitiesID" => 3, "time" => $datetime, "value" => 1, 
"multiplier" => 1) 
));