Mobilitas menjadi kata kunci kehidupan modern. Apapun tidak ingin ‘tertinggal di rumah’, semua bisa ambil dimana saja, kapan saja, selama sambung internet.
Begitu juga halnya dengan fenomena narsis dan selfie sekarang ini. Kapanpun ingin diabadikan momennya dalam gambar, lalu gambar tersimpan otomatis di internet, sehingga kapan pun dan dimanapun butuh bisa dilihat melalui internet.
Tulisan ini menjelaskan bagaimana bisa mengirim gambar dari kamera langsung atau dari gambar tersimpan atau file gambar tersimpan pada folder tertentu ke internet sendiri (domain dan hosting sendiri).
Langkah-langkahnya sebagai berikut:
- Buatlah folder khusus di hosting dari domain sendiri, letakkan di atas /public_html/, misal /public_html/pictures
- Buatlah juga folder bernama “foto” di dalam folder “pictures”, misal /public_html/pictures/foto. Folder “foto” ini digunakan untuk menyimpan semua gambar yang diunggah.
- Buatlah file baru di folder “pictures” itu, misal dengan nama “unggah.php” dengan isi script berikut ini:
<html> <body> <form enctype="multipart/form-data" action="" method="POST"> Pilih file yang akan diupload:</br> <input name="userfile" type="file" /> <br /> <input type="submit" name="enter" value="Upload" /> </form> <?php if(isset($_POST["enter"])) { //ambil parameter-parameter file yang diupload: //nama, nama temp, ukuran dan type $file_name = $_FILES["userfile"]["name"]; $file_tmp_name = $_FILES["userfile"]["tmp_name"]; $file_size = $_FILES["userfile"]["size"]; $file_type = $_FILES["userfile"]["type"]; //definisikan variabel untuk menangani error saat upload $err_upload=0; //pada contoh berikut file gambar akan diupload ke direktori "foto" $dir_upload = "foto/"; //buat nama untuk file hasil upload $file_upload = $dir_upload . basename($file_name); //cek keberadaan file hasil upload di server if(file_exists($file_upload)) { echo "Maaf, File yang sama sudah ada pada server <br />"; $err_upload=1; } //buat batasan maksimal ukuran file yang boleh diupload (dalam byte) $max_size_upload=50000000; //cek apakah ukuran file yang diupload melebihi batas if($file_size > $max_size_upload) { echo "Maaf, Ukuran file yang diupload melebihi ".$max_size_upload." byte <br />"; $err_upload=1; } //cek hanya type JPG, GIF dan PNG saja yang diijinkan if(($file_type!="image/jpeg") && ($file_type!="image/gif") && ($file_type!="image/png")) { echo "Maaf, Hanya file JPG , GIF dan PNG saja yang diperbolehkan <br />"; $err_upload=1; } //tampilkan error jika terjadi kesalahan if($err_upload) { echo "Ada Error, proses upload file batal"; } //proses upload file jika semua benar else { if(move_uploaded_file($file_tmp_name,$file_upload)) { echo "Proses upload berhasil"; echo "</br>"; echo "</br>"; // Tampilkan Gambar echo "Uploaded File : <br> "; echo "<img src='$file_upload'>"; echo "</br>"; } else { echo "Proses upload gagal"; } } } ?> </body> </html>
- Pelajari dan modifikasi script di atas sesuai keinginan kita
- Simpanlah file unggah di atas dalam folder “pictures”.
- Akseslah file “unggah.php” di atas melalui browser internet dengan link “http://namadomain.com/pictures/unggah.php”, misal “http://kasmui.com/pictures/unggah.php”, baik melalui laptop maupun melalui smartphone/tablet, sehingga muncul tampilan seperti di bawah ini
- Pilihlah salah satu dari sumber gambar yang akan diupload, melalui Capture kamera langsung, atau Images atau Files gambar.
- Klik button Upload
- Jika sukses maka akan ada keterangan “Proses upload berhasil” dan di bawahnya akan otomatis muncul gambar yang baru diupload yang tersimpan di folder “foto”
- Jika hanya menggunakan script singkat di atas maka siapapun yang tahu tentang alamat file itu akan bisa mengupload file gambar, karena itu sebaiknya fitur upload gambar ini disertai fitur login supaya aman. Silahkan pelajari sendiri fitur login itu yang banyak tersebar di internet.
Bagaimana melihat semua gambar-gambar yang sudah tersimpan di folder “foto”? Langkahnya sebagai berikut:
- Buatlah file dengan nama “gambar.php” di folder “pictures” dengan isi script sebagai berikut:
<?php $folder = "foto"; //folder tempat gambar disimpan $handle = opendir($folder); echo '<table cellspacing="2" cellpadding="5">'; echo '<tr>'; $i = 1; while(false !== ($file = readdir($handle))){ if($file != '.' && $file != '..'){ echo '<td style="border:1px solid #000000;" align="center"> <img src="foto/'.$file.'" width="100px" height="100px" /><br /> '.$file.' </td>'; if(($i % 4) == 0){ echo '</tr><tr>'; } $i++; } } echo '</tr>'; echo '</table>'; ?>
- Simpan file tersebut di folder “pictures”
- Akseslah file “gambar.php” di atas melalui browser internet dengan link “http://namadomain.com/pictures/gambar.php”, misal “http://kasmui.com/pictures/gambar.php”, baik melalui laptop maupun melalui smartphone/tablet.
- Jika tidak ada error maka semua gambar akan ditampilkan semunya.
- Contoh tampilan gambar dapat dilihat di link http://kasmui.com/v1/?page_id=2633