Cara upload file dengan PHP | Dalam sebuah website atau aplikasi website biasanya kita perlu untuk menyertakan file, baik itu file gambar, foto, lagu, video, dokumen word, pdf dan lain sebagainya. Misalnya ketika ingin mengirim email dimana kita bisa menyertakan attachmen berupa file sebagai pelengkap email yang kita kirim, atau ketika posting di sosial media kita bisa memposting gambar atau video.
Untuk mengupload file ke server, kita bisa menggunakan PHP yang merupakan bahasa pemrograman server side.

Upload File (Image: zoho.com)
Pada tutorial kali Jurnalweb akan sedikit mengajarkan bagaimana caranya mengupload file server dengan menggunakan PHP, file yang diuplaod bisa berupa gambar, musik, video ataupun dokumen. Cara nya cukup mudah, scriptnya pun singkat, hanya perlu satu file saja dan tidak memerlukan database. Karena kita hanya akan belajar bagaimana cara upload file dengan PHP.
Buat Form
Pertama kita akan buat form dulu dengan menggunakan HTML, form ini tentu saja untuk mengambil daftar gambar yang ada di komputer, dan untuk menampilkan sebuah tombol untuk menguplaod.
Nama file: index.php
Keterangan:
- method=”POST” : Untuk menentukan motode pengiriman, apakah POST atau GET
- enctype=”multipart/form-data” : Untuk menentukan jenis dokumen yang akan di upload
- type = “file”: untuk memastikan bahwa kita membuat sebuah field untuk browse semua gambar yang ada di komputer.
Script Upload File dengan PHP
Setelah form dibuat, tentu saja tinggal membuat script untuk upload file yang ada ke direktori yang diinginkan, dalam tutorial ini gambar akan di upload ke folder yang bernama uploads.
Script ini ditaruh diatas script HTML tadi, tepatnya diatas tag <!DOCTYPE html>
.
Keterangan:
- $folder : untuk menentukan nama folder tempat gambar akan ditampung
- move_uploaded_files : adalah fungsi PHP untuk mengupload file ke lokasi tertentu.
- $img : untuk membuat nama file baru yang lebih unik (gabungan angka acak dan nama file).
- rand() : adalah fungsi PHP untuk mengacak angka, dengan begini maka setiap file yang Anda upload akan memiliki nama file yang unik nantinya.
Script Lengkap
Jadi jika digabungkan maka script lengkapnya adalah seperti ini, cukup satu file saja.
Semoga membantu…
Terima kasih gan. Sangat membantu sekali! :D
salam tutorial yang di berikan seharusnya juga di jelaskan tetang filter akan file yang di upload, sehingga jika ada yang menggunakna tutorial yang di berikan akan jauh lebih bermanfaat dan juga lebih aman tentunya
salam
saya hanya pengguna biasa mohon maaf kalo ada yang salah :)
Salam…, tidak ada keharusan apapun tentang apa yang hendak kami berikan atau kami tuliskan.
Namun untuk membantu kesulitan Anda, kami coba jawab sedikit tentang filter file.
Cara paling mudah adalah dengan memberikan atribut
accept
di tag htmlnya. Misalnya seperti ini.[input type="file" name="myImage" accept="image/x-png,image/gif,image/jpeg" /]
Script diatas hanya menampilkan file png, gif, atau jpg ketika pengguna melakukan browse file di komputernya saat hendak upload.
Jika ingin semua file gambar saja yang diperbolehkan maka bisa menulis seperti berikut.
[input type="file" name="myImage" accept="image/*" /]
Dengan begitu maka file akan terfilder tanpa harus validasi dengan js atau php.
itu kan kalau gambar/image kalau pdf gimana mas?
Caranya sama saja, itu kan ‘file’ juga
Gan maap nih. btw kok script php nya yg dibagian hanya kode php dan dibagian script lengkap itu kode php nya beda ya gan
Hanya beda nama variable saja, terima kasih koreksinya sudah kami samakan.
Setelah ane coba ko muncul tampilan sepertin ini ya
( ! ) Warning: move_uploaded_file(uploads/91858-foto-rumah-minimalis-terbaru.jpg): failed to open stream: No such file or directory in C:\wamp64\www\Perlat8\index.php on line 7
Warning: move_uploaded_file(): Unable to move ‘C:\wamp64\tmp\php15FE.tmp’ to ‘uploads/91858-foto-rumah-minimalis-terbaru.jpg’ in C:\wamp64\www\Perlat8\index.php on line 7
mohon bantuannya gan , karna ane masih banyak belajar
buat folder ‘uploads’ nya terlebih dahulu
Mantap tutorialnya gan. Thankyou :)
Ditulisi dong jangan dipake untuk Production web. ini sama sekali gak ada proteksi sama sekali. yang anda berikan di komentar itu adalah filter berbasis client yang sangat mudah di spoof. Pantes aja kalo web banyak yang gampang di Deface. tutorialnya aja kayak gini. Tulis aja buat pemula.
Artikel ini tentang upload, bukan tentang security. Tantu untuk hal pengamanan perlu artikel lain secara terpisah.
artikelnya bagus , numpang ninggal jejak mas