Mudah membuat scan file directory dengan PHP


Tanggal  17 Desember 2017 diadakan Symposium & Workshop ditempat saya bekerja. Beberapa minggu sebelum acara dimulai rapat pun diadakan untuk membahas masalah teknis, konsumsi, tempat, konsep dll. dalam rapat tersebut setiap divisi dibagi tugas sesuai divisi masing masing. perlengkapan bertugas menyiapkan tempat dan perlengkapan untuk mendukung jalanya acara. konsumsi dipegang oleh divisi atau installasi gizi, untuk dokumentasi spanduk dll ada divisi humas & pemasaran. Saya berada di divisi IT hanya bertugas memastikan internet saat acara berlangsung aman, dan standby jika ada permasalahan dengan proyektor, laptop, dll. kemudian saya ditunjuk untuk menyediakan penyimpanan cloud, yang difungsikan sebagai media menyimpan materi secara dloud, sehingga peserta dapat download materi di lain waktu  tidak perlu membagikan materi ditempat cara secara manual dengan flasdisk atau media penyimpanan lainya.

Ada beberapa penyimpanan cloud yang ada di internet, diantaranya google drive, dropbox dll. Tapi untuk memasarkan website tempat saya bekerja, mungkin lebih baik saya letakan materi di website dalam bentuk postingan atau active directory.

Materi simposium & workshop yang cukup banyak dan ukuranya pun cukup besar, serta terdapat beberapa video, sehingga tidak memungkinkan jika harus ditampilkan dalam bentuk postingan.  mungkin lebih baik dalam bentuk active directory.

PERMASALAHAN
Karna keamanan yang cukup baik pada CMS Joomla yang digunakan diwebsite, tidak memungkinkan untuk membuat folder atau directory tambahan karna tidak akan bisa di tampilkan pada website.


Tampilan pada gambar diatas adalah tampilan jika mengakses direktory yang dituju, dan ternyata .htaccess tidak membolehkan akses ke directory yang tidak terdapat file index.php / index.html. Solusinya adalah dengan menghapus file .htaccess. Akan tetapi dari segi keamanan sangat tidak dianjurkan. Dikarnakan keamanan website sangat penting sehingga jika kita menghapus file .htaccess pada CMS Joomla postingan-postingan pada website tidak akan ditampilkan.

SOLUSI
Setelah saya searching dan bertanya-tanya kepada teman, saya menemukan cara untuk mengatasi permasalahan diatas. yaitu dengan membuat scan file atau scan directory dengan menggunakan PHP. file PHP yang saya buat dinamakan index.php sehingga directory yang terdapat file index.php dapat di akses pada website

UJI COBA
Pertama saya coba membuat directory download dimana directory tersebut diperuntukan untuk menyimpan materi-materi simposium & workshop. saya isi directory download dengan file index.php, isi  file index.php dengan codingan sederhana yaitu menampilkan hello word, hanya untuk menguji apakah directory download dapat di akses.

Ternyata directory download dapat diakses.  Lalu bagaimana menampilkan materi-materi pada directory download tersebut? seperti yang sudah dibahas diatas, yaitu dengan menggunakan teknik scan file atau directory dengan PHP. 

Langkah kedua membuat folder / directory di dalam directory download, namakan directory tersebut dengan nama "folder", directory "folder" ini akan digunakan untuk menyimpan file-file materi simposium & workshop.

Langkah ketiga isi codingan pada file index.php yang tadi telah dibuat dengan codingan dibawah ini.

<html>
<title>Download Materi</title>
<link rel="stylesheet" type="text/css" href="style.css">
<home><center>
    <h1>DOWNLOAD MATERI SIMPOSIUM & WORKSHOP </h1>
<?php
$dir    = 'folder/';
$files = scandir($dir);


foreach ($files as $key => $value) {
if($value!='.' AND $value!='..'){
    echo "<a  class='link' href='folder/".$value."'>*&nbsp;$value</a><br>";
    }
}
?>
</center>
</home>
</html>

Saya menambahkan file css untuk sedikit mempercantik tampilan, saya namakan file tersebut dengan nama style.css. Berikut isi file style.css

.link{
    color: black;
        font-size: 15pt;
        text-decoration:none
}
.link:hover{
    color:green;
    text-decoration:underline;
}
.link:visited{
    color:red;
    text-decoration:none
}


Langkah keempat mengupload file materi ke directory "folder", dan mencobanya untuk mendownload.

KESIMPULAN
Dari uji coba diatas, saya menyimpulkan bahwa:
1. Kita dapat membuat penyimpanan cloud sederhana di website sendiri. 
2. Untuk keamanan alangkah baiknya tidak menghapus .htaccess pada CMS. 
3. Pada CMS joomla, jika htaccess dihilangkan maka postingan tidak dapat ditampilkan. 

Terimakasih, semoga bermanfaat

TEGUH DUMADI 

Posting Komentar