Как вставить данные в БД MySQL?
Помогите разобраться. Хочу вставить данные из формы в 3 связанные таблицы. в 1 таблице есть 2 поля, куда поставляются id из других таблиц.
$model = $_POST['model'];
$number = $_POST['number'];
$name_brigade = $_POST['name_brigade'];
require 'configDB.php';
$sql ="INSERT INTO auto_model(model) VALUES(:model);
INSERT INTO auto(idAutoModel) VALUES(LAST_INSERT_ID());
INSERT INTO brigade(name_brigade) VALUES(:name_brigade);
INSERT INTO auto(idBrigade) VALUES(LAST_INSERT_ID());
INSERT INTO auto(number) VALUES(:number)";
$query = $pdo->prepare($sql);
$query->execute(['model'=> $model, 'name_brigade'=>$name_brigade, 'number'=>$number]);
вот то что я написал, но после отправки формы, данные добавляется только в 1 таблицу
Ответы (1 шт):
Автор решения: Игорь Петров
→ Ссылка
Сделал так. Вдруг кому понадобится.
$sql ="INSERT INTO auto_model(model) VALUES(:model);
SET @lastID1 := LAST_INSERT_ID();
INSERT INTO brigade(nameBrigade) VALUES(:name_brigade);
SET @lastID2 := LAST_INSERT_ID();
INSERT INTO auto(idAutoModel,idBrigade,number) VALUES(@lastID1,@lastID2,:number)";
$query = $pdo->prepare($sql);
$query->execute(['model'=> $model, 'name_brigade'=>$name_brigade, 'number'=>$number]);