MYSQL Загрузка информации о посещаемости в один ряд - PullRequest
0 голосов
/ 01 июля 2019

У меня есть CSV-файл с этой информацией:

ID | Name | Date     |Time  | State          | 
1  | Karl | 7/2/2019 |07:00 | OverTime In    |
1  | Karl | 7/2/2019 |16:00 | OverTime Out   |

Я хочу вставить эту информацию в таблицу посещаемости, чтобы получить следующий результат:

ID | Name | Date     | OverTime In | OVerTime Out |
1  | Karl | 7/2/2019 | 07:00       | 16:00        |

Теперь я могу загрузить файл на посещаемость с указанием времени входа, но у меня возникают проблемы с обновлением времени в той же строке, когда он обнаруживает, что в таблице уже существует та же дата. На моем столе только 00:00.

$handle = fopen($temp_name, 'r');
while (($myData = fgetcsv($handle, 1000, ',')) != FALSE) {

    $id = $myData[0];
    $timestamp = $myData[3];
    $splitTimeStamp = explode(" ",$timestamp);
    $date = $splitTimeStamp[0];
    $time = $splitTimeStamp[1];
    $state = $myData[5];
    $newdate = str_replace('/', '-', $date);
    $gooddate = date('Y-m-d',strtotime($newdate));


    $sql = "SELECT * FROM for_approval WHERE employee_id = '$id' AND date_overtime = '$gooddate'";
    $query = $conn->query($sql);
    $srow = $query->fetch_assoc();


    if($query->num_rows == 0 && $state = 'OverTime In' ){
        $query = "INSERT INTO for_approval (employee_id,overtime_in,date_overtime) VALUES ('$id','$time','$gooddate')";
        $conn->query($query);

    }else if($query->num_rows > 0 && $state = 'OverTime Out'){

        $query = "UPDATE for_approval SET overtime_out ='' WHERE date_overtime";
        $conn->query($query);
    }else{
        $_SESSION['error'] = 'Employee OT for the day exist';
    }

}

if($conn->query($query)){
    $_SESSION['success'] = 'File uploaded successfully';
}else{
    $_SESSION['error'] = $conn->error;
}

Я хочу вставить состояние, имеющее значения OverTime Out, в строки с одинаковой датой и значением OverTime In

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