Как вставить данные в несколько таблиц MYSQL phpadmin через PHP?
Столкнулся с проблемой. Имеются несколько таблиц department (id, discription), employee (id, first_name, last_name), person (passport_id, serial, number). Как сделать запрос чтобы через Insert сразу в несколько таблиц шла вставка?
вот мой пример, но ко второй таблице employee не вставляются данные , только айди увеличивается в таблице department, хотя указаны и переменные и сама таблица конкретная.
<?php
include 'db.php';
$discription = $_POST['discription'];
// Create Department
if (isset($_POST['add'])) {
$sql = "INSERT INTO department (`discription`)
VALUES ('".$discription."')";
$query = $conn->query($sql);
if($query){
header("Location: ". $_SERVER['HTTP_REFERER']);
}
}
// Create1 Employee
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
if (isset($_POST['add'])) {
$sql = "INSERT INTO employee (`first_name`, `last_name`)
VALUES ('".$first_name."','".$last_name."')";
$query = $conn->query($sql);
if($query){
header("Location: ". $_SERVER['HTTP_REFERER']);
}
}
Кто сможет подскажите пожалуйста. Спасибо.
Ответы (1 шт):
Автор решения: user466307
→ Ссылка
Если это учебный пример, то проблема в том, что после первой вставки происходит header("Location: ". $_SERVER['HTTP_REFERER']); и дальше операции не идут.
Пробуйте такой код:
<?php
include 'db.php';
$discription = $_POST['discription'];
if (isset($_POST['add'])) {
// Create Department
$sql = "INSERT INTO department (`discription`)
VALUES ('".$discription."')";
$query = $conn->query($sql);
if($query){
// header("Location: ". $_SERVER['HTTP_REFERER']);
}
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$sql_2 = "INSERT INTO employee (`first_name`, `last_name`)
VALUES ('".$first_name."','".$last_name."')";
$query_2 = $conn->query($sql_2);
if($query_2){
header("Location: ". $_SERVER['HTTP_REFERER']);
}
}
НО! повторюсь это очень "грязный" код!!