Akan terasa aneh apabila suatu CMS tidak dilengkapi dengan fasilitas untuk upload file. Tentu akan sangat repot kalau mengandalkan software FTP untuk mengupload gambar atau dokumen lain ke web server.
Belum lagi pengelolaannya pun kurang begitu praktis. Jadi alangkah baiknya kalau kita melengkapi aplikasi CMS dengan kemampuan untuk upload dan download melalui browser.
Kita tidak perlu repot-repot lagi untuk menginstall software FTP di komputer client. Selain itu apabila dikombinasikan dengan database, kita bahkan bisa menyimpan informasi yang berkaitan dengan file.
Jika sewaktu-waktu dibutuhkan, data-data file tersebut, misalnya nama file, ukuran, tipe, dan sebagainya bisa kita lihat dengan mudah melalui browser.
Pada artikel akan dibahas bagaimana cara upload dan download file menggunakan PHP dan MySQL.
Kebutuhan Sistem
Software yang diperlukan untuk membangun aplikasi ini adalah:
Web Server Apache
PHP
MySQL
Database MySQL akan kita pakai untuk menyimpan semua informasi yang berkaitan dengan file. Struktur Database Aplikasi yang akan kita bangun ini sangat sederhana. Kita hanya memerlukan satu buah tabel untuk penyimpanan data. Strukturnya adalah sebagai berikut:
CREATE TABLE upload (
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
deskripsi VARCHAR(200) NULL,
filetype VARCHAR(200) NULL,
filedata LONGBLOB NULL,
filename VARCHAR(200) NULL,
filesize BIGINT NULL,
PRIMARY KEY(id)
);
User Interface
Tag form adalah bagian dari dokumen HTML yang berisi beberapa elemen khusus yang disebut dengan control, seperti label, button, checkbox dan textarea.
Dengan elemen control inilah user bisa berinteraksi dengan form. Bentuk interaksinya pun bermacam-macam. Misalnya saja mengisikan data pada text input, memilih sesuatu pada tampilan select, mengklik button dan sebagainya.
Salah satu tipe elemen dari form yang akan kita pakai pada aplikasi ini adalah file. Tipe elemen ini sangat istimewa. Kenapa demikian? Karena bisa mengirimkan data biner yaitu file. Akan tetapi hal ini hanya bisa terjadi apabila encoding pada form tersebut adalah “multipart/form-data”.
(bersambung ke bagian 2)
Baca Lanjutannya