Upload file merupakan kegiatan pengiriman file dari client (pengunjung web) ke server.
Kali ini saya akan membahas tentang upload file di PHP dengan library BULLETPROOF dan upload standar bawaan PHP, pada tutorial ini kita tidak menggunkan database MySQL. Oke langsung saja...
1. Langkah Pertama
Siapkan folder di local folder web server milik Anda dengan nama sesuai yang anda inginkan, setelah itu download file-file yang dibutuhkan disini
2. Langkah Kedua Ketiklah atau copy kode dibawah ini dan simpan dengan nama image.php
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta name="description" content=""> <meta name="author" content=""> <link rel="icon" href="favicon.webp"> <title>Upload Image PHP</title> <link href="css/bootstrap.min.css" rel="stylesheet"> <!-- Custom styles for this template --> <link href="css/style.css" rel="stylesheet"> </head> <body class="text-center"> <div class="container"> <div class="row"> <div class="col-sm-12 col-md-12 col-lg-4 col-xl-4"> <form class="form-upload" action="process_library.php" method="POST" enctype="multipart/form-data"> <img class="mb-4" src="favicon.webp" alt="" width="72" height="72"> <h1 class="h3 mb-3 font-weight-normal">Please select image</h1> <div class="form-group"> <label for="inputFile" class="sr-only">Upload</label> <input type="file" id="inputFile" name="image" class="form-control" required> </div> <div class="form-group"> <button class="btn btn-lg btn-primary btn-block" type="submit">UPLOAD</button> </div> <p class="mt-5 mb-3 text-muted">© 2019-2020</p> </form> </div> <div class="col-sm-12 col-md-12 col-lg-8 col-xl-8"> <table class="table table-striped table-bordered"> <tr> <th>Nama Gambar</th> <th>Gambar</th> <th>Hapus</th> </tr> <?php $files = glob("images/*.*"); for ($i = 0; $i < count($files); $i++) { $image = $files[$i]; $supported_file = array('gif','jpg','jpeg', 'png'); $ext = strtolower(pathinfo($image, PATHINFO_EXTENSION)); if (in_array($ext, $supported_file)) { ?> <tr> <td><?php echo basename($image);?></td> <td><img src="<?php echo $image;?>" alt="Random image" ,width=100px, height=100px /></td> <td><a href="unlink.php?image=<?php echo basename($image);?>" title="Hapus">Hapus</a></td> </tr> <?php } else { continue; } } ?> </table> </div> </div> </div> </body> </html>
3. Langkah Ketiga
Ketiklah atau copy kode dibawah ini dan simpan dengan nama process_library.php
<?php if(isset($_POST)): require_once "bulletproof/bulletproof.php"; $image = new Bulletproof\Image($_FILES); $image->setName(time()) ->setMime(["gif","jpg","png", "jpeg"]) ->setLocation(__DIR__ . "/images"); if($image["image"]){ if($image->upload()){ $image->getSize(); // size $image->getName(); // time $image->getMime(); // gif, png, jpg, jpeg $image->getLocation(); // avatars $image->getFullPath(); // avatars/samayo.gif $image->getWidth(); // get the image width in pixels $image->getHeight(); // get the image height in pixels $image->getLocation(); // get image location (folder where images are uploaded) $image->getFullPath(); // get the full image path. ex 'images/logo.webp' $image->getJson(); // get the json format value of all the above information } } endif; header('location:image.php'); ?>
Kode diatas merupakan kode upload file dengan library BULLETPROOF.
4. Langkah Keempat
Ketiklah atau copy kode dibawah ini dan simpan dengan nama process_standart.php
<?php // check untuk method post form if(isset($_POST)): function uploadFile ($file, array $legalTypes) { $tmpName = $file['tmp_name']; $name = $file['name']; $size = $file['size']; $error = $file['error']; if($error !== UPLOAD_ERR_OK){ //we could not upload the file, you can inspect $error for more info return "Failed to upload file"; } $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $tmpName); if(!in_array($mime, $legalTypes)){ //The file mime type is not in our allowed types. return "Uploaded file is not valid"; } $pictureName = time(). $name; $pictureName = htmlspecialchars($pictureName, ENT_QUOTES, 'UTF-8'); move_uploaded_file($tmpName, "images/".$pictureName); } $imageTypes = [ "image/jpeg", "image/jpg", "image/png", "image/gif" ]; uploadFile($_FILES['image'], $imageTypes); endif; header('location:image.php'); ?>
Kode ditasa merupakan kode upload file dengan PHP standar
5. Langkah Kelima
Buatlah file dengan nama unlink.php kemudian ketik atau copy kode dibawah ini
<?php unlink('images/'.$_GET['image']); // remove image from folder header('location:image.php');
Kode diatas berfungsi untuk menghapus file dari folder
6. Langkah Keenam
Jalankan program yang telah Anda buat, jika berhasil anda akan melihat tampilan seperti gambar dibawah ini. Untuk melakukan pergantian process pada form silahkan ganti pada action form dengan salah satu process diatas.
Jika Anda menginginkan file diatas bisa donwload pada disini
Sampai disini dulu tutorial dari kami, semoga tutorial ini bermanfaat bagi anda dan jika bermanfaat jangan lupa di share, atas segala kekuranganya mohon dimaafkan, jika ada yang ingin ditanyakan silahkan tinggalkan komentar.