Проблема вставки базы данных с внешним ключом - PullRequest
0 голосов
/ 14 января 2019

Я хочу научиться создавать свою собственную форму, и по образцу я сделал форму. В базе данных (компании) у меня есть 3 таблицы: сотрудник (employee_id, имя, адрес, дата рождения), bill_rates (bill_id, bill) и последний проект (project_name, start_date).

В проекте есть один или несколько сотрудников. и счета также связаны с проектом.

Нужно ли указывать в проекте bill_id и employee_id в качестве внешних ключей?

Вот моя база данных.

employee table

bill_rates

project

Что я и сделал. Я создаю внешние ключи bill_id и employee_id для таблицы проекта.

В моей форме я пытался вставить из базы данных. журнал успешно указывает в URL, но в базе данных он только вставляет в таблицу сотрудников и оплачивает, но ничего в таблице проектов.

Вот скриншот моей формы и процесса. Php

Company

и это мой код процесса вставки данных

<?php
if(isset($_POST['submit'])){
    include_once 'dbConnect.php';
    //employees
    $employee_id =  mysqli_real_escape_string($conn, $_POST['employee_id']);
    $project_id =   $_POST['project_id'];
    $bill_id = $_POST['bill_id'];
    $name = mysqli_real_escape_string($conn, $_POST['name']);
    $address = mysqli_real_escape_string($conn, $_POST['address']);
    $birthdate = mysqli_real_escape_string($conn, $_POST['birthdate']);
    //project employee_id, bill_id
    $project_name = mysqli_real_escape_string($conn, $_POST['project_name']);
    $start_date = mysqli_real_escape_string($conn, $_POST['start_date']);
    //bill
    $bill = mysqli_real_escape_string($conn, $_POST['bill']);

    if(empty($name) || empty($address) || empty($birthdate) || empty($project_name) || empty($start_date)  || empty($bill) ){
        header("Location: index.php?register=empty");
        exit();
    }else{
        //to the DB we gow
        $sql = "INSERT INTO employee (name, address, birthdate) VALUES ('$name','$address','$birthdate');";
        mysqli_query($conn,$sql);
        $sql2 = "INSERT INTO project (`project_name`, `start_date`) VALUES ('$project_name','$start_date');";
        mysqli_query($conn,$sql2);
        $sql3 = "INSERT INTO billing_rates (bill) VALUES ('$bill');";
        mysqli_query($conn,$sql3);
        echo '<p class="text-danger">'.'Success!'.'</p>';
        header("Location: index.php?register=success");
    }

}


?>

Я хочу определить, какой запрос использовать, потому что я думаю, что мой подход неверен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...