108 lines
3.6 KiB
PHP
108 lines
3.6 KiB
PHP
<?php
|
|
session_start();
|
|
// Cek apakah pengguna sudah login
|
|
if (!isset($_SESSION['loggedin']) || $_SESSION['loggedin'] !== true) {
|
|
header('Location: ../auth/login.php');
|
|
exit;
|
|
}
|
|
|
|
// Include file koneksi ke database
|
|
include '../config/database.php';
|
|
|
|
// Cek jika data dikirim dari form
|
|
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|
// Ambil data dari form
|
|
$kegiatan_id = isset($_POST['kegiatan_id']) ? intval($_POST['kegiatan_id']) : 0;
|
|
$kegiatan_nama = mysqli_real_escape_string($conn, $_POST['kegiatan_nama']);
|
|
$kegiatan_keterangan = mysqli_real_escape_string($conn, $_POST['kegiatan_keterangan']);
|
|
$kegiatan_tglmulai = mysqli_real_escape_string($conn, $_POST['kegiatan_tglmulai']);
|
|
$kegiatan_tglakhir = mysqli_real_escape_string($conn, $_POST['kegiatan_tglakhir']);
|
|
|
|
// Variabel untuk gambar
|
|
$gambar_baru = null;
|
|
$gambar_lama = '';
|
|
|
|
if (isset($_FILES['kegiatan_gambar']) && $_FILES['kegiatan_gambar']['error'] == 0) {
|
|
// Proses upload gambar
|
|
$target_dir = "../assets/img/kegiatan/";
|
|
$target_file = $target_dir . basename($_FILES["kegiatan_gambar"]["name"]);
|
|
$uploadOk = 1;
|
|
$imageFileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION));
|
|
|
|
// Cek jika file gambar valid
|
|
$check = getimagesize($_FILES["kegiatan_gambar"]["tmp_name"]);
|
|
if ($check !== false) {
|
|
$uploadOk = 1;
|
|
} else {
|
|
$uploadOk = 0;
|
|
}
|
|
|
|
// Cek jika file sudah ada
|
|
if (file_exists($target_file)) {
|
|
$uploadOk = 0;
|
|
}
|
|
|
|
// Cek ukuran file
|
|
if ($_FILES["kegiatan_gambar"]["size"] > 500000) {
|
|
$uploadOk = 0;
|
|
}
|
|
|
|
// Cek format gambar
|
|
if ($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" && $imageFileType != "gif") {
|
|
$uploadOk = 0;
|
|
}
|
|
|
|
// Cek jika $uploadOk == 0 berarti ada kesalahan
|
|
if ($uploadOk == 0) {
|
|
echo "Maaf, gambar tidak dapat diunggah.";
|
|
} else {
|
|
if (move_uploaded_file($_FILES["kegiatan_gambar"]["tmp_name"], $target_file)) {
|
|
$gambar_baru = basename($_FILES["kegiatan_gambar"]["name"]);
|
|
} else {
|
|
echo "Maaf, terjadi kesalahan saat mengunggah gambar.";
|
|
}
|
|
}
|
|
|
|
// Dapatkan nama gambar lama dari database
|
|
$query = "SELECT kegiatan_gambar FROM kegiatan WHERE kegiatan_id = $kegiatan_id";
|
|
$result = mysqli_query($conn, $query);
|
|
if ($result && mysqli_num_rows($result) > 0) {
|
|
$row = mysqli_fetch_assoc($result);
|
|
$gambar_lama = $row['kegiatan_gambar'];
|
|
}
|
|
}
|
|
|
|
// Query untuk update data kegiatan
|
|
$query = "UPDATE kegiatan SET
|
|
kegiatan_nama = '$kegiatan_nama',
|
|
kegiatan_keterangan = '$kegiatan_keterangan',
|
|
kegiatan_tglmulai = '$kegiatan_tglmulai',
|
|
kegiatan_tglakhir = '$kegiatan_tglakhir'";
|
|
|
|
if ($gambar_baru) {
|
|
$query .= ", kegiatan_gambar = '$gambar_baru'";
|
|
// Hapus gambar lama jika ada
|
|
if ($gambar_lama) {
|
|
$old_image_path = "../assets/img/kegiatan/" . $gambar_lama;
|
|
if (file_exists($old_image_path)) {
|
|
unlink($old_image_path);
|
|
}
|
|
}
|
|
}
|
|
|
|
$query .= " WHERE kegiatan_id = $kegiatan_id";
|
|
|
|
if (mysqli_query($conn, $query)) {
|
|
header('Location: kelolakegiatan.php?status=success');
|
|
} else {
|
|
echo "Error updating record: " . mysqli_error($conn);
|
|
}
|
|
|
|
// Tutup koneksi
|
|
mysqli_close($conn);
|
|
} else {
|
|
// Jika tidak POST, redirect ke halaman kelola kegiatan
|
|
header('Location: kelolakegiatan.php');
|
|
}
|
|
?>
|