Sunday, January 8, 2017

Bab 8. PHP/MySQL Untuk Pemula (Bagian 2)


File dan Direktori (Bagian 2)


Menamai-Ulang File Dan Direktori
Di sini, Anda akan menamai-ulang sebuah file atau direktori. Anda akan menggunakan fungsi PHP rename().

<?php
// namai_ulang.php
// menetapkan nama file/direktori lama dan baru
$fileLama = "citra/103.jpg";
$fileBaru = "citra/103a.jpg";

// memeriksa apakah file/direktori ada atau tidak
// jika ada, namai-ulang
if (file_exists($fileLama)) {
    rename ($fileLama, $fileBaru)
        or die("Tidak dapat menamai-ulang file '$fileLama'");
    echo "File/direktori berhasil dinamain-ulang.";
} else {
    die ("Tidak dapat menemukan '$fileLama'");
}
?>


Mengurutkan File
Anda akan mengurutkan sebuah daftar file. Anda akan menyimpan daftar file ke dalam suatu array, dan kemudian menggunakan fungsi array_multisort() untuk mengurutkannya.

<?php
// urut_file.php
// mendefinisikan direktori
$dir = "./citra";

// memeriksa kevalidan direktori
if (!is_dir($dir)) { die("Argumen '$dir' bukan direktori!"); }

// membuka direktori
$dh = opendir($dir) or die ("Tidak dapat membuka direktori '$dir'!");

// beriterasi pada tiap file di dalam direktori
while (($file = readdir($dh)) !== false) {
    // membuang "." dan ".."
    if ($file != "." && $file != "..") {
          // menambah suatu entri ke dalam daftar file
        $daftarFile[] = array("nama" => $file, "ukuran" =>
        filesize("$dir/$file"), "tanggal" => filemtime("$dir/$file"));
    }
}

// menutup direktori
closedir($dh);

// semua elemen dengan kunci sama
// di tempatkan ke dalam array sendiri-sendiri
foreach ($daftarFile as $kunci=>$nilai) {
    $nama[$kunci] = $nilai['nama'];
    $ukuran[$kunci] = $nilai['ukuran'];
    $tanggal[$kunci] = $nilai['tanggal'];
}

// sekarang mengurutkan satu atau lebih kunci
// berdasarkan nama
array_multisort($nama, $daftarFile);
print_r($daftarFile);

// mengurutkan berdasarkan tanggal dan kemudian
// berdasarkan ukuran
array_multisort($tanggal, $ukuran, $daftarFile);
print_r($daftarFile);
?>


Mencari File Dalam Direktori
Anda akan mencari semua file yang cocok dengan pola nama tertentu, dimulai dari direktori pencarian level-atas. Anda akan menuliskan sebuah fungsi rekursif untuk melakukan pencarian pada direktori dan semua anaknya.

<?php
// cari_file.php
// function to recursively search
// directories for matching filenames
function cariRekursif($dir, $pola) {
    // memeriksa apakah argumen adalah direktori yang valid
    if (!is_dir($dir)) { die("Argumen '$dir' bukan direktori!"); }

      // mendeklarasikan array untuk memuat semua kecocokan
    global $daftarCocok;

    // membuka direktori
    $dh = opendir($dir) or die ("Tidak dapat membuka direktori '$dir'!");

      // beriterasi pada tiap file dalam direktori
    while (($file = readdir($dh)) !== false) {
        // mengabaikan "." dan ".."
        if ($file != "." && $file != "..") {
            if (is_dir("$dir/$file")) {
                // ini adalah subdirektori
                // proses secara rekursif
                cariRekursif("$dir/$file", $pola);
            } else {
                // ini adalah file
                // periksa kecocokan
                // tambahkan ke $daftarCocok jika ditemukan
                if (preg_match("/$pola/", $file)) {
                    $daftarCocok[] = "$dir/$file";
                }
            }
        }
    }

      // menghasilkan daftar akhir
    return $daftarCocok;
}

// mencari nama-nama file yang memuat "ini"
$daftarFile = cariRekursif("c:/windows", "ini");
print_r($daftarFile);
?>


Mencari File Dalam Path Pencarian Default PHP
Anda akan memeriksa apakah file tertentu terdapat dalam path pencarian default PHP. Anda akan menggunakan fungsi PHP real_path().

<?php
// cari_file_default.php
// fungsi untuk mencari sebuah file
// dalam include path PHP
function cariIncludePath($file) {
    // mendapatkan daftar dari semua direktori
    // dalam include path
    $daftarPencarian = explode(";", ini_get('include_path'));

      // beriterasi pada daftar
    // memeriksa file
    // menghasilkan path jika ditemukan
    foreach ($daftarPencarian as $dir) {
        if (file_exists("$dir/$file")) { return realpath("$dir/$file"); }
    }
    return false;
}

// mencari file "DB.php"
$hasil = cariIncludePath('DB.php');
echo $hasil ? "File ditemukan pada $hasil" : "File tidak ditemukan";
?>


Mengubah Ekstensi File
Anda akan mengubah semua atau beberapa ekstensi file pada suatu direktori. Anda akan menggunakan fungsi PHP glob() dan rename().

<?php
// ubah_ekstensi_file.php
// mendefinisikan path direktori
$dir = './citra';

// mendefinisikan ekstensi lama dan baru
$eksBaru = "jpg";
$eksLama = "jpeg";

// melakukan pencarian file
$hitung = 0;
foreach (glob("$dir/*.$eksLama") as $file) {
    $hitung++;
    // mengekstrak nama file (tanpa ekstensi)
    $name = substr($file, 0, strrpos($file, "."));

      // menamai-ulang file menggunakan nama dan ekstensi baru
    rename ($file, "$name.$eksBaru")
        or die ("Tidak dapat menamai-ulang file '$file'!");
}
echo "Sejumlah $hitung file dinamai-ulang.";
?>


Projek: Membuat Galeri Foto

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Menciptakan Galeri Foto</title>
  </head>
  <style type="text/css">
  ul {
      list-style-type: none;
  }
 
  li {
      float: left;
      padding: 10px;
      margin: 10px;
      font: bold 10px Verdana, sans-serif;
  }
 
  img {
      display: block;
      border: 1px solid #333300;
      margin-bottom: 5px;
  }
  </style>
  <body>
    <h2>Projek: Menciptakan Galeri Foto</h2>
    <ul>
<?php
// mendefinisikan lokasi citra
// ini harus lokasi yang dapat diakses oleh pemilik skript
$dirFoto = './foto';

// mendefinisikan ekstensi file
$ekstensiFoto = array('gif', 'jpg', 'jpeg', 'tif', 'tiff', 'bmp', 'png');

// menginisialisasi array untuk memuat nama-nama file citra
$daftarFoto = array();

// membaca isi direktori
// membuat daftar foto
if (file_exists($dirFoto)) {
    $dp = opendir($dirFoto) or die ('ERROR: Tidak dapat membuka direktori');
    while ($file = readdir($dp)) {
        if ($file != '.' && $file != '..') {
            $fileData = pathinfo($file);
            if (in_array($fileData['extension'], $ekstensiFoto)) {
                $daftarFoto[] = "$dirFoto/$file";
            }
        }
    }
    closedir($dp);
} else {
    die ('ERROR: Direktori tidak ada.');
}

// beriterasi pada tiap foto
// menampilkan tiap citra dan nama file
if (count($daftarFoto) > 0) {
    for ($x=0; $x<count($daftarFoto); $x++) {
?>
      <li>
        <img height="150" width="200"
           src="<?php echo $daftarFoto[$x]; ?>" />
        <?php echo basename($daftarFoto[$x]); ?><br/>
        <?php echo round(filesize($daftarFoto[$x])/1024) . ' KB'; ?>
      </li>
<?php
    }
} else {
    die('ERROR: Tidak ada citra dalam direktori');
}
?>
    </ul>
  </body>
</html>




Projek: Menampilkan Semua File Dalam Direktori
Berikut adalah kode dengan nama tampil_file.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Menampilkan File Dalam Direktori </title>
  </head>
  <body>
    <h2>Projek: Menampilkan File Dalam Direktori </h2>
<?php
$Dir = "citra";
$BukaDir = opendir($Dir);

while ($FileSkrg = readdir($BukaDir)) {
    if ((strcmp($FileSkrg, '.') != 0) &&
        (strcmp($FileSkrg, '..') != 0))
        echo "<a href=\"fi les/" . $FileSkrg . "\">" .
            $FileSkrg . "</a><br />\n";
    }
closedir($BukaDir);
?>





Projek: Menampilkan Semua File Dalam Direktori Dengan Fungsi scandir()
Berikut adalah kode dengan nama tampil_fileA.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Menampilkan File Dalam Direktori </title>
  </head>
  <body>
    <h2>Projek: Menampilkan File Dalam Direktori </h2>
<?php
$Dir = "citra";
$EntriDir = scandir($Dir);

foreach ($EntriDir as $Entri) {
    if ((strcmp($Entri, '.') != 0) &&
        (strcmp($Entri, '..') != 0))
        echo "<a href=\"fi les/" . $Entri . "\">" . $Entri .
             "</a><br />\n";
}
?>


Projek: Menampilkan Semua File Dalam Direktori Dengan Detil
Berikut adalah kode dengan nama tampil_fileB.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Menampilkan File Dalam Direktori </title>
  </head>
  <body>
    <h2>Projek: Menampilkan File Dalam Direktori </h2>
<?php
$Dir = "citra";
$EntriDir = scandir($Dir);
echo "<table border='1' width='100%' >\n";
echo "<tr><th colspan='4'>Informasi direktori
<strong>" . htmlentities($Dir) . "</strong></th>
</tr>\n";

echo "<tr>";
echo "<th><strong><em>Nama</em></strong></th>";
echo "<th><strong><em>ID Pemilik</em></strong></th>";
echo "<th><strong><em>Ijin</em></strong>
</th>";
echo "<th><strong><em>Ukuran</em></strong></th>";
echo "</tr>\n";
foreach ($EntriDir as $Entri) {
    if ((strcmp($Entri, '.') != 0) && (strcmp($Entri, '..') != 0)) {
        $NamaLengkapEntri=$Dir . "/" . $Entri;
        echo "<tr><td>";
        if (is_file($NamaLengkapEntri))
            echo "<a href=\"$NamaLengkapEntri\">" .
            htmlentities($Entri). "</a>";
        else
            echo htmlentities($Entri);
                 
        echo "</td><td align='center'>" .
            fileowner($NamaLengkapEntri);
        if (is_file($NamaLengkapEntri)) {
            $arrayIjin = fileperms($NamaLengkapEntri);
            $arrayIjin = decoct($arrayIjin % 01000);
            echo "</td><td align='center'>0$arrayIjin";
            echo "</td><td align='right'>" .
              number_format(filesize($NamaLengkapEntri), 0) .
              " byte";
        }
        else
            echo "</td><td colspan='2'
                  align='center'>&lt;DIR&gt;";
            echo "</td></tr>\n";
    }
}
echo "</table>\n";
?>
  </body>
</html>



Projek: Menampilkan Komentar Pengunjung Situs
Berikut adalah kode dengan nama komentar_pengunjung.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Komentar Pengunjung </title>
  </head>
  <body>
    <h2>Projek: Komentar Pengunjung </h2>
<?php
$Dir = "komentar";
if (is_dir($Dir)) {
    if (isset($_POST['simpan'])) {
        if (empty($_POST['nama']))
            $StringSimpan = "Pengunjung tak dikenal\n";
        else
            $StringSimpan = stripslashes($_POST['nama']) . "\n";
                 
        $StringSimpan .= stripslashes($_POST['email']) . "\n";
        $StringSimpan .= date('r') . "\n";
        $StringSimpan .= stripslashes($_POST['komentar']);
        $WaktuSkrg = microtime();
        $ArrayWaktu = explode(" ", $WaktuSkrg);
        $StempelWaktu = (float)$ArrayWaktu[1] + (float)$ArrayWaktu[0];

            /* Nama file adalah " komentar.detik.mikrodetik.txt" */
        $NamaFileSimpan = "$Dir/komentar.$StempelWaktu.txt";

            if (file_put_contents($NamaFileSimpan,$StringSimpan)>0)
            echo "File \"" . htmlentities ($NamaFileSimpan) .
                 "\" berhasil disimpan.<br />\n";
        else
            echo "Terjadi error dalam menyimpan file \"" . htmlentities($NamaFileSimpan) .
                 "\".<br />\n";
    }
}
?>
    <h2>Komentar Pengunjung</h2>
    <form action="komentar_pengunjung.php" method="POST">
      Nama Anda: <input type="text" name="nama" /><br />
      Your email: <input type="text" name="email" /><br />
      <textarea name="komentar" rows="6" cols="100"></textarea><br />
      <input type="submit" name="simpan"
        value="Kirim komentar Anda" /><br />
    </form>
  </body>
</html>



Berikut adalah kode dengan nama tampil_fileC.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Menampilkan File Dalam Direktori </title>
  </head>
  <body>
    <h2>Projek: Menampilkan File Dalam Direktori </h2>
<?php
$Dir = "komentar";
$EntriDir = scandir($Dir);
echo "<table border='1' width='100%' >\n";
echo "<tr><th colspan='4'>Informasi direktori
<strong>" . htmlentities($Dir) . "</strong></th>
</tr>\n";

echo "<tr>";
echo "<th><strong><em>Nama</em></strong></th>";
echo "<th><strong><em>ID Pemilik</em></strong></th>";
echo "<th><strong><em>Ijin</em></strong>
</th>";
echo "<th><strong><em>Ukuran</em></strong></th>";
echo "</tr>\n";
foreach ($EntriDir as $Entri) {
    if ((strcmp($Entri, '.') != 0) && (strcmp($Entri, '..') != 0)) {
        $NamaLengkapEntri=$Dir . "/" . $Entri;
        echo "<tr><td>";
        if (is_file($NamaLengkapEntri))
            echo "<a href=\"$NamaLengkapEntri\">" .
            htmlentities($Entri). "</a>";
        else
            echo htmlentities($Entri);
                 
        echo "</td><td align='center'>" .
            fileowner($NamaLengkapEntri);
        if (is_file($NamaLengkapEntri)) {
            $arrayIjin = fileperms($NamaLengkapEntri);
            $arrayIjin = decoct($arrayIjin % 01000);
            echo "</td><td align='center'>0$arrayIjin";
            echo "</td><td align='right'>" .
              number_format(filesize($NamaLengkapEntri), 0) .
              " byte";
        }
        else
            echo "</td><td colspan='2'
                  align='center'>&lt;DIR&gt;";
            echo "</td></tr>\n";
    }
}
echo "</table>\n";
?>




Projek: Menampilkan Umpan-Balik Pengunjung
Berikut adalah kode dengan nama umpan_balik.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Umpan Balik Pengunjung </title>
  </head>
  <body>
    <h2>Projek: Umpan Balik Pengunjung </h2>
<?php
$Dir = "komentar";
if (is_dir($Dir)) {
    $FileKomentar = scandir($Dir);
    foreach ($FileKomentar as $NamaFile) {
        if (($NamaFile != ".") && ($NamaFile !="..")) {
            echo "Dari <strong>$NamaFile</strong><br />";
            echo "<pre>\n";
            $Komentar = file_get_contents($Dir . "/" .$NamaFile);
            echo $Komentar;
            echo "</pre>\n";
            echo "<hr />\n";
        }
    }
}
?>
  </body>
</html>



Projek: Menampilkan Komentar Pengunjung Situs dengan fungsi fopen(), fwrite(), dan fclose()
Berikut adalah kode dengan nama komentar_pengunjungA.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Komentar Pengunjung </title>
  </head>
  <body>
    <h2>Projek: Komentar Pengunjung </h2>
<?php
$Dir = "komentar";
if (is_dir($Dir)) {
    if (isset($_POST['simpan'])) {
        if (empty($_POST['nama']))
            $StringSimpan = "Pengunjung tak dikenal\n";
        else
            $StringSimpan = stripslashes($_POST['nama']) . "\n";
                 
        $StringSimpan .= stripslashes($_POST['email']) . "\n";
        $StringSimpan .= date('r') . "\n";
        $StringSimpan .= stripslashes($_POST['komentar']);
        $WaktuSkrg = microtime();
        $ArrayWaktu = explode(" ", $WaktuSkrg);
        $StempelWaktu = (float)$ArrayWaktu[1] + (float)$ArrayWaktu[0];

            /* Nama file adalah " komentar.detik.mikrodetik.txt" */
        $NamaFileSimpan = "$Dir/komentar.$StempelWaktu.txt";

            $fp = fopen($NamaFileSimpan,"wb");
        if ($fp === FALSE) {
            echo "Error dalam menciptakan file \"" .
            htmlentities($NamaFileSimpan) . "\".<br />\n";
        }
        else {
            if (fwrite($fp, $StringSimpan)>0)
                echo "Berhasil menulis file \"" .
                htmlentities($NamaFileSimpan) . "\".<br />\n";
            else
                echo "Error penulisan file \"" . htmlentities($NamaFileSimpan) .
                     "\".<br />\n";
            fclose($fp);
        }
    }
}
?>
    <h2>Komentar Pengunjung</h2>
    <form action="komentar_pengunjung.php" method="POST">
      Nama Anda: <input type="text" name="nama" /><br />
      Your email: <input type="text" name="email" /><br />
      <textarea name="komentar" rows="6" cols="100"></textarea><br />
      <input type="submit" name="simpan"
        value="Kirim komentar Anda" /><br />
    </form>
  </body>
</html>

Berikut adalah kode dengan nama tampil_fileD.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Menampilkan File Dalam Direktori </title>
  </head>
  <body>
    <h2>Projek: Menampilkan File Dalam Direktori </h2>
<?php
$Dir = "komentar";
$EntriDir = scandir($Dir);
echo "<table border='1' width='100%' >\n";
echo "<tr><th colspan='4'>Informasi direktori
<strong>" . htmlentities($Dir) . "</strong></th>
</tr>\n";

echo "<tr>";
echo "<th><strong><em>Nama</em></strong></th>";
echo "<th><strong><em>ID Pemilik</em></strong></th>";
echo "<th><strong><em>Ijin</em></strong>
</th>";
echo "<th><strong><em>Ukuran</em></strong></th>";
echo "</tr>\n";
foreach ($EntriDir as $Entri) {
    if ((strcmp($Entri, '.') != 0) && (strcmp($Entri, '..') != 0)) {
        $NamaLengkapEntri=$Dir . "/" . $Entri;
        echo "<tr><td>";
        if (is_file($NamaLengkapEntri))
            echo "<a href=\"$NamaLengkapEntri\">" .
            htmlentities($Entri). "</a>";
        else
            echo htmlentities($Entri);
                 
        echo "</td><td align='center'>" .
            fileowner($NamaLengkapEntri);
        if (is_file($NamaLengkapEntri)) {
            $arrayIjin = fileperms($NamaLengkapEntri);
            $arrayIjin = decoct($arrayIjin % 01000);
            echo "</td><td align='center'>0$arrayIjin";
            echo "</td><td align='right'>" .
              number_format(filesize($NamaLengkapEntri), 0) .
              " byte";
        }
        else
            echo "</td><td colspan='2'
                  align='center'>&lt;DIR&gt;";
            echo "</td></tr>\n";
    }
}
echo "</table>\n";
?>
  </body>
</html>



Projek: Menampilkan Komentar Pengunjung Situs dengan fungsi flock()
Berikut adalah kode dengan nama komentar_pengunjungB.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Komentar Pengunjung </title>
  </head>
  <body>
    <h2>Projek: Komentar Pengunjung </h2>
<?php
$Dir = "komentar";
if (is_dir($Dir)) {
    if (isset($_POST['simpan'])) {
        if (empty($_POST['nama']))
            $StringSimpan = "Pengunjung tak dikenal\n";
        else
            $StringSimpan = stripslashes($_POST['nama']) . "\n";
                 
        $StringSimpan .= stripslashes($_POST['email']) . "\n";
        $StringSimpan .= date('r') . "\n";
        $StringSimpan .= stripslashes($_POST['komentar']);
        $WaktuSkrg = microtime();
        $ArrayWaktu = explode(" ", $WaktuSkrg);
        $StempelWaktu = (float)$ArrayWaktu[1] + (float)$ArrayWaktu[0];

            /* Nama file adalah " komentar.detik.mikrodetik.txt" */
        $NamaFileSimpan = "$Dir/komentar.$StempelWaktu.txt";

            $fp = fopen($NamaFileSimpan,"wb");
        if ($fp === FALSE) {
            echo "Error dalam menciptakan file \"" .
            htmlentities($NamaFileSimpan) . "\".<br />\n";
        }
        else {
            if (flock($fp, LOCK_EX)){
                if (fwrite($fp, $StringSimpan)>0)
                    echo "Berhasil menulis file \"" .
                    htmlentities($NamaFileSimpan) .
                    "\".<br />\n";
                else
                    echo "Error penulisan file \"" .
                    htmlentities($NamaFileSimpan) .
                    "\".<br />\n";
                flock($fp, LOCK_UN);
            }
            else
                echo "Error penulisan file \"" . htmlentities($NamaFileSimpan) .
                     "\".<br />\n";
            fclose($fp);
        }
    }
}
?>
    <h2>Komentar Pengunjung</h2>
    <form action="komentar_pengunjungB.php" method="POST">
      Nama Anda: <input type="text" name="nama" /><br />
      Your email: <input type="text" name="email" /><br />
      <textarea name="komentar" rows="6" cols="100"></textarea><br />
      <input type="submit" name="simpan"
        value="Kirim komentar Anda" /><br />
    </form>
  </body>
</html>

Berikut adalah kode dengan nama tampil_fileE.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <title>Projek: Menampilkan File Dalam Direktori </title>
  </head>
  <body>
    <h2>Projek: Menampilkan File Dalam Direktori </h2>
<?php
$Dir = "komentar";
$EntriDir = scandir($Dir);
echo "<table border='1' width='100%' >\n";
echo "<tr><th colspan='4'>Informasi direktori
<strong>" . htmlentities($Dir) . "</strong></th>
</tr>\n";

echo "<tr>";
echo "<th><strong><em>Nama</em></strong></th>";
echo "<th><strong><em>ID Pemilik</em></strong></th>";
echo "<th><strong><em>Ijin</em></strong>
</th>";
echo "<th><strong><em>Ukuran</em></strong></th>";
echo "</tr>\n";
foreach ($EntriDir as $Entri) {
    if ((strcmp($Entri, '.') != 0) && (strcmp($Entri, '..') != 0)) {
        $NamaLengkapEntri=$Dir . "/" . $Entri;
        echo "<tr><td>";
        if (is_file($NamaLengkapEntri))
            echo "<a href=\"$NamaLengkapEntri\">" .
            htmlentities($Entri). "</a>";
        else
            echo htmlentities($Entri);
                 
        echo "</td><td align='center'>" .
            fileowner($NamaLengkapEntri);
        if (is_file($NamaLengkapEntri)) {
            $arrayIjin = fileperms($NamaLengkapEntri);
            $arrayIjin = decoct($arrayIjin % 01000);
            echo "</td><td align='center'>0$arrayIjin";
            echo "</td><td align='right'>" .
              number_format(filesize($NamaLengkapEntri), 0) .
              " byte";
        }
        else
            echo "</td><td colspan='2'
                  align='center'>&lt;DIR&gt;";
            echo "</td></tr>\n";
    }
}
echo "</table>\n";
?>
  </body>
</html>


No comments:

Post a Comment