Membuat Upload File Dengan PHP Dan MySQL

By 11:07 AM ,

Membuat Upload File Dengan PHP Dan MySQL

Membuat Upload File Dengan PHP Dan MySQL – Upload file adalah salah satu yang terpenting di dalam membuat sistem aplikasi. khususnya aplikasi berasaskan web. Ini kerana ada kalanya kita perlu membuat upload file, yang mana boleh upload file laporan, atau mungkin upload file gambar seperti pada facebook contoh nya. di facebook terdapat ruang untuk mengupload gambar untuk di jadikan gambar profile

Pada tutorial kali ini saya akan share tutorial cara Membuat Upload File Dengan PHP Dan MySQL. dan menyimpan data gambar nya ke database. di tutorial ini kita akan belajar tentang cara membuat upload file dengan php. dan kemudian nama dari file tersebut akan kita simpan dalam database.

Persiapan Membuat Upload File Dengan PHP

Untuk persiapan nya. apa yang perlu kita buat adalah create :
  • index.php
  • uploadpros.php
  • config.php
  • folder bernama file
Membuat Upload File Dengan PHP Dan MySQL

Akan saya jelaskan sedikit kegunaan-kegunaan dari file-file yang telah di buat di atas. pada file index.php kita akan membuat form upload file gambar nya. pada file uploadpros.php kita akan membuat proses dari form upload file. jadi file yang di upload dari index.php akan di proses di file uploadpros.php. kemudian pada file config.php kita akan membuat penyambungan/connect ke database php dan mysql. Seterusnya yang terakhir folder yang bernama file akan kita gunakan sebagai folder yang menyimpan file gambar yang di upload. jadi file gambar yang di upload akan tersimpan ke folder file ini.


Membuat Upload File Dengan PHP Dan MySQL

Kita mulakan dengan membuat penyambungan dengan database terlebih dahulu.

config.php
<?php
mysql_connect("localhost","root","xxx");
mysql_select_db("sukacoding");
?>

Anda boleh sesuaikan password dan yg lainnya. di sini kita menggunakan database dengan nama “sukacoding”.

sila:
Create Database: `sukacoding`

CREATE TABLE IF NOT EXISTS `upload` (
  `id_file` int(11) NOT NULL AUTO_INCREMENT,
  `nama_file` varchar(100) NOT NULL,
  PRIMARY KEY (`id_file`)
)

seterusnya masukkan kod berikut pada file index.php. kerana kita akan membuat form upload file di file index.php ini.

index.php
<!DOCTYPE html>
<html>
<head>
<title>Membuat Upload File Dengan PHP Dan MySQL | www.malasngoding.com</title>
</head>
<body>
<h1>Membuat Upload File Dengan PHP Dan MySQL <br/>
www.rozitalib.com</h1>
<form action="uploadpros.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" name="upload" value="Upload">
</form>
</body>
</html>

ada ada perbezaan sedikit di sini pada form upload file dengan form biasa iaitu perhatikan pada element form di atas.

<form action="uploadpros.php" method="post" enctype="multipart/form-data">
terdapat atribut enctype yang berfungsi untuk memberikan tahu pada php bahwa form ini berupa form untuk mengupload file.

enctype="multipart/form-data"
jadi gunakan atribut enctype ini untuk membuat upload file.


seterusnya di file uploadpros.php nya.

uploadpros.php
<!DOCTYPE html>
<html>
<head>
<title>Membuat Upload File Dengan PHP Dan MySQL | www.rozitalib.com</title>
</head>
<body>
<h1>Membuat Upload File Dengan PHP Dan MySQL <br/> www.rozitalib.com</h1>
<?php
include 'config.php';
if($_POST['upload']){
$ekstensi_diperbolehkan = array('png','jpg');
$nama = $_FILES['file']['name'];
$x = explode('.', $nama);
$ekstensi = strtolower(end($x));
$ukuran = $_FILES['file']['size'];
$file_tmp = $_FILES['file']['tmp_name'];

if(in_array($ekstensi, $ekstensi_diperbolehkan) === true){
if($ukuran < 1044070){
move_uploaded_file($file_tmp, 'file/'.$nama);
$query = mysql_query("INSERT INTO upload VALUES(NULL, '$nama')");
if($query){
echo 'FILE BERHASIL DI UPLOAD';
}else{
echo 'GAGAL MENGUPLOAD GAMBAR';
}
}else{
echo 'UKURAN FILE TERLALU BESAR';
}
}else{
echo 'EKSTENSI FILE YANG DI UPLOAD TIDAK DI PERBOLEHKAN';
}
}
?>

<br/>
<br/>
<a href="index.php">Upload Lagi</a>
<br/>
<br/>

<table>
<?php
$data = mysql_query("select * from upload");
while($d = mysql_fetch_array($data)){
?>
<tr>
<td>
<img src="<?php echo "file/".$d['nama_file']; ?>">
</td>
</tr>
<?php } ?>
</table>
</body>
</html>

saya terangkan sedikit proses upload nya. perhatikan pada file uploadpros.php di atas.

<?php
include 'config.php';
   if($_POST['upload']){
$ekstensi_diperbolehkan = array('png','jpg');
$nama = $_FILES['file']['name'];
$x = explode('.', $nama);
$ekstensi = strtolower(end($x));
$ukuran = $_FILES['file']['size'];
$file_tmp = $_FILES['file']['tmp_name'];
if(in_array($ekstensi, $ekstensi_diperbolehkan) === true){
    if($ukuran < 1044070){
move_uploaded_file($file_tmp, 'file/'.$nama);
$query = mysql_query("INSERT INTO upload VALUES(NULL, '$nama')");
if($query){
echo 'FILE BERHASIL DI UPLOAD';
}else{
echo 'GAGAL MENGUPLOAD GAMBAR';
}
    }else{
echo 'UKURAN FILE TERLALU BESAR';
    }
       }else{
echo 'EKSTENSI FILE YANG DI UPLOAD TIDAK DI PERBOLEHKAN';
       }
    }
?>
pertama, oleh sebab kita menggunakan database. maka hubungkan dulu dengan file config.php. agar php terhubung dengan database mysql.

include 'config.php';
include berfungsi untuk memanggil satu-satu file.

dan memasukkan detail dari data yang di upload ke masing-masing variable

$ekstensi_diperbolehkan = array('png','jpg');
$nama = $_FILES['file']['name'];
$x = explode('.', $nama);
$ekstensi = strtolower(end($x));
$ukuran = $_FILES['file']['size'];
$file_tmp = $_FILES['file']['tmp_name'];

perintah/kod di atas adalah perintah untuk mendapatkan data file yang di upload. contohnya seperti misalnya:

  • $_FILES[‘file’][‘name’] = berguna untuk mendapatkan nama file yang di upload.
  • $_FILES[‘file’][‘size’] = mendapatkan ukuran file yang di upload.
  • $_FILES[‘file’][‘tmp_name’] = untuk mendapatkan temporary file yang di upload (tmp).

pada variable $ekstensi_diperbolehkan saya memberikan nama-nama ekstensi file yang di perbolehkan untuk di upload. ini berguna untuk keselamatan. jadi user nantinya tidak boleh mengupload sembarangan file. jadi di sini kita hanya memperbolehkan untuk mengupload file gambar saja. dengan format png dan jpg. apa-apa pun kita boleh mengubahnya nanti mengikut kesesuaian. kerana di sini saya hanya membuat contoh dan penjelasannya saja tentang cara membuat upload file gambar dengan php dan mysql.

$ekstensi_diperbolehkan=array('png','jpg');

Proses Upload File Gambar

Dan yang paling penting di sini adalah di bagian ini.

if(in_array($ekstensi, $ekstensi_diperbolehkan) === true){
    if($ukuran < 1044070){
move_uploaded_file($file_tmp, 'file/'.$nama);
$query = mysql_query("INSERT INTO upload VALUES(NULL, '$nama')");
if($query){
echo 'FILE BERHASIL DI UPLOAD';
}else{
echo 'GAGAL MENGUPLOAD GAMBAR';
}
     }else{
echo 'UKURAN FILE TERLALU BESAR';
     }
}else{
    echo 'EKSTENSI FILE YANG DI UPLOAD TIDAK DI PERBOLEHKAN';
}

di sini kita memeriksa ekstensi file yang di upload dengan menyemak adakah ekstensi file yang di upload sesuai dengan nama ekstensi yang telah kita tetapkan di variable array $ekstensi_diperbolehkan tadi. jika tidak maka tidak akan di upload dan di paparkan alert bahwa ekstensi file yang di upload tidak di perbolehkan.


kemudian memeriksa ukuran file yang di upload. kita menetapkan ukuran maksimalnya sebesar 1 mb.

if($ukuran < 1044070){

jika file yang di upload lebih besar dari 1 mb maka akan di paparkan alert “ukuran file terlalu besar”. jika ukuran file nya sesuai maka proses upload akan di teruskan lagi.

move_uploaded_file($file_tmp, 'file/'.$nama);
$query = mysql_query("INSERT INTO upload VALUES(NULL, '$nama')");
if($query){
echo 'FILE BERHASIL DI UPLOAD';
}else{
echo 'GAGAL MENGUPLOAD GAMBAR';
}

di sini lah inti upload file dengan php dan mysql nya. fungsi atau function move_uploaded_file() berfungsi untuk mengupload. atau dengan kata lain dengan fungsi ini lah yang bertugas untuk memindahkan file yang di upload tadi dari temporary file menuju ke folder file. dan memberikan nama file nya sesuai yang kita tentukan.

move_uploaded_file($file_tmp, 'file/'.$nama);

jadi di sini kita boleh menentukan tujuan file upload nya ke mana. maksudnya di simpan ke mana file yang di upload. kerana di sini kita telah menyediakan folder “file” untuk menyimpan gambar nya maka kita tujukan ke folder file.

dan terakhir kita insert data nama file yang di upload ke database.

$query = mysql_query("INSERT INTO upload VALUES(NULL, '$nama')");

Pilih fail gambar dengan klik pada Choose File

 Klik butang Upload setelah file dipilih.


Kelihatan gambar berjaya diupload dia paparkan.


Sekian dulu tutorial kali ini... semoga barjaya.

Anda Mungkin Juga Meminati

1 comments