Coding

Panduan Lengkap: Cara Menulis Path PHP yang Benar untuk Include File (Header, Sidebar, Footer, dan Koneksi)

Dipublikasikan: 27 Oct 2025
⏱️ Estimasi waktu baca: 5 menit

 

Artikel ini cocok untuk pemula yang baru belajar PHP dan ingin memahami cara menghubungkan file antar-folder tanpa error.

1. Kenapa Perlu Pisahkan File di PHP?

Saat kamu membuat website dengan PHP, biasanya kamu ingin agar struktur kode lebih rapi dan mudah dikelola.
Misalnya, kamu tidak ingin menulis ulang bagian yang sama (seperti header, sidebar, atau footer) di setiap halaman.

Baca juga:
Cara Membuat Backend Node.js + Express dengan Struktur Manual
Belajar Coding Bagian 6: Membuat Link dan Navigasi dalam HTML

Contohnya:

  • header.php → berisi bagian atas website (<head>, judul, CSS)
  • sidebar.php → berisi menu navigasi
  • footer.php → berisi bagian bawah (tulisan hak cipta, script JS)
  • koneksi.php → berisi koneksi ke database MySQL

Dengan cara ini, setiap halaman hanya perlu mengambil file yang diperlukan menggunakan include atau require.

2. Struktur Folder Contoh

Kita buat contoh struktur sederhana seperti ini:

public_html/ │ ├─ config/ │   └─ koneksi.php │ ├─ includes/ │   ├─ header.php │   ├─ sidebar.php │   └─ footer.php │ ├─ audit/ │   └─ kebersihantangan.php │ └─ login.php 

Artinya:

  • File utama website kamu ada di public_html
  • File koneksi.php disimpan di folder config
  • Bagian layout (header, sidebar, footer) disimpan di folder includes
  • Halaman seperti audit atau laporan disimpan di folder masing-masing

3. Cara Menghubungkan File di PHP

Untuk menghubungkan file, PHP menyediakan empat fungsi utama:

include 'file.php'; require 'file.php'; include_once 'file.php'; require_once 'file.php';

Perbedaannya:

  • include → kalau file tidak ada, PHP hanya memberi peringatan (warning).
  • require → kalau file tidak ada, PHP akan berhenti total (fatal error).
  • include_once / require_once → memastikan file hanya dimuat sekali, walaupun dipanggil berulang.

👉 Jadi paling aman pakai require_once untuk file penting seperti koneksi atau header.

4. Mengenal Path (Jalur Folder)

Masalah paling sering saat pakai include adalah:

“File tidak ditemukan.”

Itu biasanya karena path (jalur folder) yang salah.

Ada dua cara menulis path di PHP:

Jenis PathContohPenjelasan
Path Relatif../koneksi.phpMenghitung lokasi berdasarkan posisi file saat ini
Path Absolut$_SERVER['DOCUMENT_ROOT'] . '/config/koneksi.php'Mengarah langsung ke root folder utama website

5. Path Relatif (Menghitung Folder Secara Manual)

Contoh:

public_html/ ├─ config/koneksi.php └─ audit/kebersihantangan.php

Karena kebersihantangan.php berada di folder audit/,
kamu perlu naik satu tingkat (../) untuk mencapai config/.

<?php include_once __DIR__ . '/../config/koneksi.php';

Penjelasan:

  • __DIR__ = menunjukkan folder tempat file ini berada (audit/)
  • ../ = naik satu folder ke atas (public_html)
  • /config/koneksi.php = masuk ke folder config

👉 Jadi PHP akan membuka:
/home/namauser/public_html/config/koneksi.php

6. Path Absolut (Cara Profesional & Aman)

Kalau website kamu sudah punya banyak folder,
lebih baik gunakan path absolut dengan variabel bawaan PHP:
$_SERVER['DOCUMENT_ROOT'].

Contohnya:

<?php include_once $_SERVER['DOCUMENT_ROOT'] . '/config/koneksi.php';

Penjelasan:

  • $_SERVER['DOCUMENT_ROOT'] otomatis menunjukkan lokasi utama website kamu (public_html di hosting).
  • Sehingga PHP tahu lokasi pasti tanpa bingung hitung ../.

Contoh lain:

include_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.php'; include_once $_SERVER['DOCUMENT_ROOT'] . '/includes/sidebar.php'; include_once $_SERVER['DOCUMENT_ROOT'] . '/includes/footer.php';

✅ Ini cara yang paling direkomendasikan untuk proyek besar.

7. Contoh Lengkap File-File Website

🔹 config/koneksi.php

<?php $servername = "localhost"; $username = "root"; $password = ""; $dbname = "ppi_database"; $conn = mysqli_connect($servername, $username, $password, $dbname); if (!$conn) {  die("Koneksi gagal: " . mysqli_connect_error()); } ?> 

🔹 includes/header.php

<?php if (session_status() === PHP_SESSION_NONE) session_start(); include_once $_SERVER['DOCUMENT_ROOT'] . '/config/koneksi.php'; ?> <!DOCTYPE html> <html lang="id"> <head>  <meta charset="utf-8">  <meta name="viewport" content="width=device-width, initial-scale=1">  <title>Dashboard PPI PHBW</title>  <link rel="stylesheet" href="/style.css"> </head> <body> <div class="layout">

🔹 includes/footer.php

</div> <!-- /layout --> <footer style="text-align:center; padding:20px; background:#f1f5fb;">  <p>&copy; 2025 PPI PHBW. All Rights Reserved.</p> </footer> </body> </html>

🔹 audit/kebersihantangan.php

<?php includeonce $_SERVER['DOCUMENT_ROOT'] . '/includes/header.php'; include_once $_SERVER['DOCUMENT_ROOT'] . '/includes/sidebar.php'; ?> <main>  <div class="container">    <h2>Audit Kepatuhan Kebersihan Tangan</h2>    <p>Selamat datang, <b>Administrator</b>! Ini halaman audit kebersihan tangan.</p>  </div> </main> <?php include_once $_SERVER['DOCUMENT_ROOT'] . '/includes/footer.php'; ?>

8. Tips Praktis Anti-Error

  1. Gunakan require_once untuk file penting (seperti koneksi atau header).
  2. Gunakan __DIR__ kalau file masih satu level atau dekat.
  3. Gunakan $_SERVER['DOCUMENT_ROOT'] kalau folder kamu berbeda-beda.
  4. Jika muncul halaman putih (blank), aktifkan debug:

     

  1. ini_set('display_errors', 1); error_reporting(E_ALL);
  1. Pastikan semua file punya izin akses (permission 0644) di hosting kamu.

9. Ringkasan Cepat

Kondisi FileContoh Path yang Benar
File di folder yang samainclude_once __DIR__ . '/koneksi.php';
File di folder atasinclude_once __DIR__ . '/../koneksi.php';
File di folder berbedainclude_once $_SERVER['DOCUMENT_ROOT'] . '/config/koneksi.php';
File di root public_htmlinclude_once $_SERVER['DOCUMENT_ROOT'] . '/koneksi.php';

10. Kesimpulan

Menulis path PHP memang terlihat sederhana,
tapi kalau salah sedikit saja, bisa bikin website tidak jalan.

Dengan memahami cara kerja path relatif dan absolut:

  • Kamu bisa membuat proyek yang modular, rapi, dan efisien
  • Setiap halaman bisa saling terhubung tanpa error
  • Dan kamu tidak perlu lagi bingung dengan pesan:

    Failed to open stream: No such file or directory

🌟 Penutup

Sekarang kamu sudah tahu cara menulis path PHP yang benar,
baik untuk file header, footer, sidebar, maupun koneksi.php.

Gunakan prinsip sederhana ini:

🔹 “Kalau foldernya dekat, pakai __DIR__. Kalau foldernya jauh, pakai $_SERVER['DOCUMENT_ROOT'].”

Dengan begitu, website kamu akan tetap rapi, profesional, dan bebas error!

🖊️ Ditulis oleh:
Admin
Portal blog

Chat Admin Sekarang //