prepare($sql); $stmt->bindValue(':kto', $_SESSION['user_id'], PDO::PARAM_INT); $stmt->bindValue(':data', $_POST['date'], PDO::PARAM_STR); $stmt->execute(); $work = $stmt->fetch(PDO::FETCH_ASSOC); //sprawdź czy jest wpis w bazie dla danego dnia if($work === false) { $_SESSION['innfoError'] = "Brak danych o tym dniu"; header("Location: editDaySelect.php"); exit(); } //jeżeli statusy oznaczaWolne ustaw clearTime na true $sql = "SELECT * FROM statusy WHERE id = :id"; $stmt = $pdo->prepare($sql); $stmt->bindValue(':id', $_POST['status'], PDO::PARAM_INT); $stmt->execute(); $status = $stmt->fetch(PDO::FETCH_ASSOC); if($status['oznaczaWolne'] == 1) { $clearTime = true; } //jeżeli $status['oznaczaWolne'] == 0 to musi być ustawiony czas rozpoczęcia i zakończenia if($status['oznaczaWolne'] == 0 && $clearTime == true) { $_SESSION['innfoError'] = "Nie można ustawić czasu rozpoczęcia i zakończenia na NULL"; header("Location: editDaySelect.php"); exit(); } //sprawdź czy już jest zaakceptowane, takich nie można edytować if($work['zaakceptowane'] == 1) { $_SESSION['innfoError'] = "Nie można edytować już zaakceptowanego dnia"; header("Location: editDaySelect.php"); exit(); } //update $sql = "UPDATE obecnosc SET czasZaczecia = :czasZaczecia, czasKonca = :czasKonca, status = :status, zdalne = :zdalne WHERE kto = :kto AND data = :data"; $stmt = $pdo->prepare($sql); $stmt->bindValue(':kto', $_SESSION['user_id'], PDO::PARAM_INT); $stmt->bindValue(':data', $_POST['date'], PDO::PARAM_STR); $stmt->bindValue(':czasZaczecia', $_POST['start'], PDO::PARAM_STR); $stmt->bindValue(':czasKonca', $_POST['end'], PDO::PARAM_STR); $stmt->bindValue(':status', $_POST['status'], PDO::PARAM_INT); $stmt->bindValue(':zdalne', $zdalne, PDO::PARAM_INT); $stmt->execute(); //jeżeli clearTime jest true to ustaw czas rozpoczęcia i zakończenia na NULL if($clearTime) { $sql = "UPDATE obecnosc SET czasZaczecia = NULL, czasKonca = NULL WHERE kto = :kto AND data = :data"; $stmt = $pdo->prepare($sql); $stmt->bindValue(':kto', $_SESSION['user_id'], PDO::PARAM_INT); $stmt->bindValue(':data', $_POST['date'], PDO::PARAM_STR); $stmt->execute(); } $_SESSION['innfoError'] = "Dane zostały zaktualizowane"; header("Location: editDaySelect.php"); exit(); ?>