ekarang mari kita mulai membuat kode-kodenya
Pada contoh kode-kode berikut, belum ada authentication halaman, supaya contohnya lebih sederhana dan bisa dicoba. Jika anda coba di hosting anda, jangan lupa untuk di kasih proses authentication, artikel membuat authentication dengan $_SESSION ada di sini
Membuka dan Membaca Isi Direktori
Untuk membuka isi suatu direktori dan membaca isinya kita menggunakan kode berikut :
$handle = opendir("..".$dir)
$file = readdir($handle)
Fungsi opendir
berguna untuk membuka suatu direktori, pada contoh di atas, saya
membuka direktori yang diawali titik dua "..", yang artinya parent direktori,
file browser.php ini kita letakkan di dalam folder filemanager
sedangkan folder yang ingin diakses adalah folder parentnya maka
kita selalu gunakan "..".$file = readdir($handle)
Membuat Link Parent Direktori
Seperti kita ketahui, bahwa titik dua ".." adalah parent direktori, tetapi untuk alasan keamanan kita menghindari penggunaan titik dua, karena user akan bisa masuk ke root direktori, bayangkan jika user mengetik dir=/www/folder1/../../../, user bisa masuk ke root direktori.
Misalnya direktori yang sedang kita buka adalah
/folder1/folder2/folder3
Nah, parent direktori dari direktori di atas adalah
/folder1/folder2
kode berikut untuk membuat link ke parent direktori tanpa menggunakan titik dua "..".
if($file == ".."){
if($dir!=""){
$dirx = explode("/",$dir);
$diry = "";
for($i=0;$i<(count($dirx)-1);$i++){
$diry = $diry.$dirx[$i]."/";
}
$diry = substr($diry,0,-1);//untuk mendapatkan parent direktori
if($diry == ""){
echo "UP";
}else{
echo "UP";
}
}
}
Menampilkan Isi Suatu Direktoriif($dir!=""){
$dirx = explode("/",$dir);
$diry = "";
for($i=0;$i<(count($dirx)-1);$i++){
$diry = $diry.$dirx[$i]."/";
}
$diry = substr($diry,0,-1);//untuk mendapatkan parent direktori
if($diry == ""){
echo "UP";
}else{
echo "UP";
}
}
}
Suatu direktori bisa berisi file-file atau juga direktori-direktori, di sini kita ingin memisahkan link dan icon antara file dan direktori. Untuk mengecek apakah isi suatu direktori berupa direktori kita menggunakan kode :
if(is_dir("../".$dir."/".$file)){//untuk mengetahui apakah file berupa direktori
$folder[] = "$file\n";
}else{
$filenya[] = "$file\n";
}
Kode di atas kita membuat link isi suatu
direktori, di mana link antara file dan direktori berbeda. Pada kode di
atas kita sementara menyimpan isi suatu direktori ke variabel array
$folder[] dan $filenya[], supaya nanti kita bisa menyusun yang bertipe
direktori di print terlebih dahulu (di taruh paling atas), baru setelah
itu print yang bertipe file, seperti kode berikut :$folder[] = "$file\n";
}else{
$filenya[] = "$file\n";
}
//kita tampilkan yang berupa folder-folder terlebih dahulu
for($i=0;$i
Mendelete, Mengupload dan Membuat Folderfor($i=0;$i
Untuk mendelete file :
unlink($xfile);
Untuk mendelete direktori :
rmdir($xfile);
Untuk mengupload multiple file :
foreach($_FILES['f']['name'] as $key =>$value){
if($value){
$tmp_name = $_FILES["f"]["tmp_name"][$key];
$up = move_uploaded_file($tmp_name, "$folder/$value");
}
}
Untuk membuat folder :
if($value){
$tmp_name = $_FILES["f"]["tmp_name"][$key];
$up = move_uploaded_file($tmp_name, "$folder/$value");
}
}
mkdir("..".$dir."/".$folder, 0775);
Kode Lengkapnya
Setelah bingung melihat penjelasan di atas, berikut kode PHP untuk program file manager kita, browser.php
1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
6 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
16 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
17 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
18 | DRZ File Manager V1.0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
19 | Path : | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
21 | $dir = $_GET['dir']; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
22 | if(!$dir){ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
23 | echo "."; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24 | }else{ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
25 | echo $dir; | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
26 | } | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
27 | //kode di atas hanya untuk menampilkan path yang lagi dibuka | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
28 | ?> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29 | "#999999">"; "; \n"; \n";
|
Tidak ada komentar:
Posting Komentar