From c33deeace9ab97ef5d7c82bfff427078f2f45571 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 9 Jun 2026 17:54:45 +0700 Subject: [PATCH] fix : error db tidak connect --- 01/Dockerfile | 23 +++++++++++++++++++++++ 01/koneksi.php | 28 ++++++++++------------------ 2 files changed, 33 insertions(+), 18 deletions(-) create mode 100644 01/Dockerfile diff --git a/01/Dockerfile b/01/Dockerfile new file mode 100644 index 0000000..3e6ede8 --- /dev/null +++ b/01/Dockerfile @@ -0,0 +1,23 @@ +# Menggunakan cetak biru resmi PHP versi 8.2 yang terintegrasi dengan Apache +FROM php:8.2-apache + +# Memperbarui manajer paket dan menginstal dependensi sistem dasar +RUN apt-get update && apt-get install -y \ + libmariadb-dev \ + && rm -rf /var/lib/apt/lists/* + +# Menginstal dan mengaktifkan ekstensi PDO MySQL agar file koneksi.php dapat berjalan +RUN docker-php-ext-install pdo pdo_mysql + +# Mengaktifkan modul rewrite pada Apache untuk manajemen URL (praktik keamanan standar) +RUN a2enmod rewrite + +# Menyalin seluruh berkas proyek (HTML, PHP) ke direktori root peladen web di dalam kontainer +COPY . /var/www/html/ + +# Mengatur hak kepemilikan dan perizinan berkas agar Apache dapat mengeksekusi skrip PHP +RUN chown -R www-data:www-data /var/www/html/ \ + && chmod -R 755 /var/www/html/ + +# Membuka porta 80 untuk menerima lalu lintas HTTP dari luar kontainer +EXPOSE 80 \ No newline at end of file diff --git a/01/koneksi.php b/01/koneksi.php index 8de47eb..697fb32 100644 --- a/01/koneksi.php +++ b/01/koneksi.php @@ -1,33 +1,25 @@ setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); - } catch (PDOException $kesalahan_sistem) { - // Menghentikan proses secara aman dan mengembalikan pesan kegagalan terformat JSON echo json_encode([ "status" => "error", - "message" => "Koneksi ke basis data gagal dilakukan: " . $kesalahan_sistem->getMessage() + "message" => "Koneksi basis data gagal: " . $kesalahan_sistem->getMessage() ]); exit; } -?> \ No newline at end of file +?> \ No newline at end of file