Cara menggunakan php get file type

Pada tulisan ini saya coba share pengalaman saat pemrosesan upload file menggunakan PHP, dimana saya ingin mengetahui jenis ekstensi file tersebut. Mungkin sudah banyak para Master PHP yang menjelaskan hal ini, namun apa salahnya saya re-posting 🙂 setidaknya bisa bermanfaat bagi yang membutuhkan dan setidaknya untuk saya sendiri 🙂

Buat file form_upload.php

<form method=”post” action=”form_simpan.php” enctype=”multipart/form-data”>
<input type=”file” name=”file” id=”file”>
<input type=”submit” value=”upload”>
</form>

Lalu buat file form_simpan.php

<?

$filename = $_FILES[“file”][“name”];

//Cara  1. The “explode/end” approach
$ext1 = end(explode(‘.’, $filename));

// Cara 2. The “strrchr” approach
$ext2 = substr(strrchr($filename, ‘.’), 1);

// Cara 3. The “strrpos” approach
$ext3 = substr($filename, strrpos($filename, ‘.’) + 1);

// Cara 4. The “preg_replace” approach
$ext4 = preg_replace(‘/^.*\.([^.]+)$/D’, ‘$1’, $filename);

// Cara 5. The “never use this” approach
//   From: http://php.about.com/od/finishedphp1/qt/file_ext_PHP.htm
$exts = split(“[/\\.]”, $filename);
$n = count($exts)1;
$ext5 = $exts[$n];

echo “Hasil Cara 1 Menghasilkan Extensi .”.$ext1.”<br>”;
echo “Hasil Cara 2 Menghasilkan Extensi .”.$ext2.”<br>”;
echo “Hasil Cara 3 Menghasilkan Extensi .”.$ext3.”<br>”;
echo “Hasil Cara 4 Menghasilkan Extensi .”.$ext4.”<br>”;
echo “Hasil Cara 5 Menghasilkan Extensi .”.$ext5.”<br>”;

?>

Selamat mencoba dan semoga bermanfaat. 🙂

Sumber : http://cowburn.info/2008/01/13/get-file-extension-comparison/

Iklan

Share this:

  • Twitter
  • Facebook

Menyukai ini:

Suka Memuat...

Terkait

Upload File Menggunakan PHP dan MySQLi

PHPUpload File Menggunakan PHP dan MySQLi

Cara menggunakan php get file type

  • By Muzanni
  • 21 April 2020
  • PHP

Upload File Menggunakan PHP dan MySQLi – Hallo selamat datang di tutorial lengkap PHP dari malasngoding.com, pada materi kali ini kita akan coba membahas cara upload file menggunakan php dan mysqli.

Materi ini sebenarnya sudah pernah di bahas di seri php dan mysql dengan judul membuat upload file dengan php dan mysql. Oleh karena sekarang sudah menggunakan mysqli kami mecoba membantu sobat untuk mengupgrade kembali materi cara upload file menggunakan php dan mysqli.

Upload File Menggunakan PHP dan MySQLi

Upload file merupakan salah satu materi yang harus dikuasai dan sangat penting dalam materi belajar pemrograman khusunya web. Dikarenakan ada kalanya dalam membuat sebuah program kita perlu upload file baik berupa foto, document dan sebagainya. Contohnya saja pada foto profil, untuk foto didalam profil kita harus upload file foto terlebih dahulu.

Oke langsung ke materi pokok, ikut langkah-langkah berikut :

Siapkan Database

Langkah pertama yang harus ada dalam upload file yaitu database (tempat nama file nya nanti disimpan). Disini saya sudah memiliki database dengan nama tutorial, dan saya akan mengimplementasikan contoh aupload file berupa foto yang ada pada tabel user. Untuk struktur databasenya bisa dilihat di gambar berikut :

Cara menggunakan php get file type

Struktur Database

Atau silahkan import tutorial.sql berikut di phpmyadmin :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

-- phpMyAdmin SQL Dump

-- version 5.0.1

-- https://www.phpmyadmin.net/

--

-- Host: 127.0.0.1

-- Waktu pembuatan: 21 Apr 2020 pada 09.46

-- Versi server: 10.4.11-MariaDB

-- Versi PHP: 7.4.1

 

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";

SET AUTOCOMMIT = 0;

START TRANSACTION;

SET time_zone = "+00:00";

 

 

/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */;

/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */;

/*!40101 SET @[email protected]@COLLATION_CONNECTION */;

/*!40101 SET NAMES utf8mb4 */;

 

--

-- Database: `tutorial`

--

 

-- --------------------------------------------------------

 

 

--

-- Struktur dari tabel `user`

--

 

CREATE TABLE `user` (

  `user_id` int(11) NOT NULL,

  `user_nama` varchar(100) NOT NULL,

  `user_kontak` varchar(15) NOT NULL,

  `user_alamat` varchar(255) NOT NULL,

  `user_foto` varchar(255) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 

--

-- Indexes for dumped tables

--

 

 

--

-- Indeks untuk tabel `user`

--

ALTER TABLE `user`

  ADD PRIMARY KEY (`user_id`);

 

--

-- AUTO_INCREMENT untuk tabel yang dibuang

--

--

-- AUTO_INCREMENT untuk tabel `user`

--

ALTER TABLE `user`

  MODIFY `user_id` int(11) NOT NULL AUTO_INCREMENT;

COMMIT;

 

/*!40101 SET [email protected]_CHARACTER_SET_CLIENT */;

/*!40101 SET [email protected]_CHARACTER_SET_RESULTS */;

/*!40101 SET [email protected]_COLLATION_CONNECTION */;

Koneksi Databse dengan PHP

Setelah langkah pembuatan database sudah selesai, langkah selanjutnya yaitu membuat koneksi antara database dan php. Disini saya kasi nama filenya koneksi.php

1

2

3

4

5

<?php

// www.malasngoding.compact

// file penghubung antara database dengan php

$koneksi = mysqli_connect("localhost","root","","tutorial");

?>

Saya rasa disini tidak perlu saya jelaskan lebih detail bagaimana cara membuat koneksi, ini karena sudah kami bahas khusu di materi sebelumnya di sini.

Membuat Form Input File

Langkah yang ketiga yaitu membuat form input, form ini dimaksudkan untuk input file kedalam database. Pada input file ini saya kasi nama user_tambah.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

<!DOCTYPE html>

<html>

<head>

<title>www.malasngoding.com - Upload file menggunakan php mysqli</title>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">

</head>

<body>

<div class="container">

<h2 style="text-align: center;">Tambah Data Pegawai</h2>

<form action="user_act.php" method="post" enctype="multipart/form-data">

<div class="form-group">

<label>Nama :</label>

<input type="text" class="form-control" placeholder="Masukkan Nama" name="nama" required="required">

</div>

<div class="form-group">

<label>Kontak :</label>

<input type="number" class="form-control" placeholder="Masukkan Kontak" name="kontak" required="required">

</div>

<div class="form-group">

<label>Alamat :</label>

<textarea class="form-control" name="alamat" required="required"></textarea>

</div>

<div class="form-group">

<label>Foto :</label>

<input type="file" name="foto" required="required">

<p style="color: red">Ekstensi yang diperbolehkan .png | .jpg | .jpeg | .gif</p>

</div>

<input type="submit" name="" value="Simpan" class="btn btn-primary">

</form>

</div>

 

</body>

</html>

Dalam membuat form ini saya menggunakan librabry bostrap 4 supaya tampilan sedikit lebih bagus hehe. Pada baris ke 12, tapetnya pada <form> saya menggunakan file dengan nama user_act.php dengan method post dalam mengirim data. Ekstensi gambar yang diperbolehkan yaitu png, jpg, jpeg, dan gif, bisa sobat lihat pada baris ke 28.

1

<form action="user_act.php" method="post" enctype="multipart/form-data">

Potongan dari perintah pada baris ke 12 ini bisa dilihat ada satu fungsi enctype adalah atribut yang berperan dalam menentukan bagaimana data form dikirim ke server dan tipe form terseut.

Membuat Aksi Inputan File

Langkah ke 4 kita akan membuat sebuah file aksi untuk memproses inputan gambar, disini saya kasi nama user_act.php . File ini nantinya berisikan perintah untuk memproses data yang kita input dari form masuk kedatabase. Untuk perintahnya silahkan dilihat di code berikut :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

<?php

include 'koneksi.php';

$nama = $_POST['nama'];

$kontak = $_POST['kontak'];

$alamat = $_POST['alamat'];

 

$rand = rand();

$ekstensi =  array('png','jpg','jpeg','gif');

$filename = $_FILES['foto']['name'];

$ukuran = $_FILES['foto']['size'];

$ext = pathinfo($filename, PATHINFO_EXTENSION);

 

if(!in_array($ext,$ekstensi) ) {

header("location:index.php?alert=gagal_ekstensi");

}else{

if($ukuran < 1044070){

$xx = $rand.'_'.$filename;

move_uploaded_file($_FILES['foto']['tmp_name'], 'gambar/'.$rand.'_'.$filename);

mysqli_query($koneksi, "INSERT INTO user VALUES(NULL,'$nama','$kontak','$alamat','$xx')");

header("location:index.php?alert=berhasil");

}else{

header("location:index.php?alert=gagak_ukuran");

}

}

Dari potongan kode diatas merupakan file aksi dari form yang sebelumnya kita buat. Pertama-tama kita harus menginclude dahulu file koneksi.php yang menghubungkan database dengan sistem yang dibuat menggunakan PHP. Sedangkan baris ke 3 sampai 5 itu berfungsi untuk menangkap data yang dikirim menggunakan method post dari form sebelumnya.

1

2

3

4

5

$rand = rand();

$ekstensi =  array('png','jpg','jpeg','gif');

$filename = $_FILES['foto']['name'];

$ukuran = $_FILES['foto']['size'];

$ext = pathinfo($filename, PATHINFO_EXTENSION);

Perhatikan kode diatas, fungsi rand() disini untuk merandom nomor. Fungsinya disini untuk memberikan nomor random untuk nama file gambar supaya ketika ada gambar dengan nama bisa dibedakan dari angka random ketika diinput nantianya. Misalnya profil_saya.png ketika 001298_profil_saya.png.

Sedangkan variabel $ekstensi disini saya menyimpan ekstensi yang diperbolehkan ketika mengupload file. Seperti yang sudah saya bilang sebelumnyaa kita memerlukan ekstensi yang diperbolehkan ketika upload file.

$filename adalah variabel yang menyimpan nama file yang sudah di input sebelumnya.  Sedangkan $ext adalah variabel yang disini kita akan mengecek ekstensi yang yang di upload.

1

2

3

4

5

6

7

8

9

10

11

12

if(!in_array($ext,$ekstensi) ) {

header("location:index.php?alert=gagal_ekstensi");

}else{

if($ukuran < 1044070){

$xx = $rand.'_'.$filename;

move_uploaded_file($_FILES['foto']['tmp_name'], 'gambar/'.$rand.'_'.$filename);

mysqli_query($koneksi, "INSERT INTO user VALUES(NULL,'$nama','$kontak','$alamat','$xx')");

header("location:index.php?alert=berhasil");

}else{

header("location:index.php?alert=gagak_ukuran");

}

}

Di baris ke 13, seperti code diatas yaitu kita cek dahulu ekstensi yang diperbolehkan dan ekstensi file yang kita upload. Untuk mengeceknya disini kita menggunakan fungsi in_array, !in_array disini maksudnya jika nilai ekstensi yang diperbolehkan dan ekstensi gambar tidak sama maka akan dialihkan ke halaman index.php dengan peringatan gagal ekstensi.

Sedangkan jika ekstensi file yang diinput termasuk kedalam dalam ekstensi yang diperbolehkan maka akan disimpan di dalam database. $xx = $rand.’_’.$filename adalah variabel yang menyimpan nama file yang disimpan dan disisipkan angka random sebelum nama file.

move_uploaded_file adalah fungsi php untuk upload file, disini kita akan mengupload file foto kedalam folder gambar diikuti dengan nama file yang sudah dirandom.

Untuk tampilan form upload dapat dilihat pada gambar berikut :

Cara menggunakan php get file type

Tampilan form upload

Menampilkan Hasil Inputan

Oke yang terakhir kita akan menampilkan hasil dari form yang kita inputkan sebelumnya. Disini nama filenya index.php untuk codenya bisa dilihat seperti berikut :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

<?php include 'koneksi.php'; ?>

<!DOCTYPE html>

<html>

<head>

<title>www.malasngoding.com - Upload file menggunakan php mysqli</title>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>

</head>

<body>

<div class="container">

<h2 style="text-align: center;">Data Data User</h2>

<br>

<?php

if(isset($_GET['alert'])){

if($_GET['alert']=='gagal_ekstensi'){

?>

<div class="alert alert-warning alert-dismissible">

<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>

<h4><i class="icon fa fa-warning"></i> Peringatan !</h4>

Ekstensi Tidak Diperbolehkan

</div>

<?php

}elseif($_GET['alert']=="gagal_ukuran"){

?>

<div class="alert alert-warning alert-dismissible">

<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>

<h4><i class="icon fa fa-check"></i> Peringatan !</h4>

Ukuran File terlalu Besar

</div>

<?php

}elseif($_GET['alert']=="berhasil"){

?>

<div class="alert alert-success alert-dismissible">

<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>

<h4><i class="icon fa fa-check"></i> Success</h4>

Berhasil Disimpan

</div>

<?php

}

}

?>

<br>

<a href="user_tambah.php" class="btn btn-info btn-sm">Tambah Data</a>

<br>

<br>

<table class="table table-bordered">

<tr>

<th width="20%">Nama</th>

<th width="20%">Kontak</th>

<th width="40%">Alamat</th>

<th width="20%">Foto</th>

</tr>

<?php

$data = mysqli_query($koneksi,"select * from user");

while($d = mysqli_fetch_array($data)){

?>

<tr>

<td><?php echo $d['user_nama']; ?></td>

<td><?php echo $d['user_kontak']; ?></td>

<td><?php echo $d['user_alamat']; ?></td>

<td><img src="gambar/<?php echo $d['user_foto'] ?>" width="35" height="40"></td>

</tr>

<?php

}

 

?>

</table>

</div>

</body>

</html>

Untuk code ini saya rasa tidak perlu dijelaskan lebih sudah pernah kita bahas sebelumnya di tutorial menampilkan data php dan mysqli. Berikut adalah tampilan dari hasil codingan diatas :

Cara menggunakan php get file type

Upload File Menggunakan PHP dan MySQLi

Sekian dulu materi kali ini Upload File Menggunakan PHP dan MySQLi, untuk sobat yang mau mendownload source code bisa di link berikut :

Incoming search terms:

  • php upload gambar mysqli
  • upload dqn tampilkan gambar php mysqli
  • download script upload image malasngodinh
  • Upload file php mysqli
  • download crud upload file php
  • cara menampilkan gambar sesuai nama di database baik png maupun jpg html php
  • cara upload gambar ke id php
  • aplikasi untuk mengupload pdf dengan php dan mysql
  • upload ke database di php
  • cara buat upload file pakai mu8


  • SHARE :

Muzanni

Algorithms Learner, future lecturer and Happy to sharing about knowledge

  • Author's profile
  • All posts by Muzanni

Tags: bagaimana cara penggunaan file library bootstrap 4., cara membuat upload gambar, cara membuat upload gambar php mysqli, cara upload file php, cara upload foto php mysqli, membuat input file dengan php mysqli, upload file php mysqli, upload gambar dengan php mysqli

Tutorial PHP Dasar

  • #1. Pengenalan PHP
  • #2. Instalasi Web Server
  • #3. PHP Dasar
  • #4. Variabel PHP
  • #5. Tipe Data PHP
  • #6. String PHP
  • #7. If Else PHP
  • #8. Function PHP
  • #9. Switch Case PHP
  • #10. While PHP
  • #11. For PHP
  • #12. Array PHP
  • #13. Tanggal PHP
  • #14. Include dan Required
  • #15. Form Handling PHP
  • #16. Operator Aritmatika PHP
  • #17. Foreach PHP
  • #18. Format Nomor PHP
  • #19. Explode dan Implode PHP

Tutorial PHP Lanjutan

  • #1. File Exist PHP
  • #2. Mkdir dan Rmdir
  • #3. Base64 PHP
  • #4. Membuat Kalkulator
  • #5. Halaman Web Dinamis
  • #6. Koneksi PHP dan MySQL
  • #7. Login PHP
  • #8. Captcha PHP
  • #9. Upload File
  • #10. Form Validation PHP
  • #11. Pagination / Penomoran Halaman
  • #12. PHP Lanjutan Lainnya

Tutorial PHP CRUD

  • #1. Menampilkan Data Dari Database
  • #2. Input Data Ke Database
  • #3. Edit Data
  • #4. Hapus Data

Tutorial PHP OOP

  • #1. Pengenalan OOP PHP
  • #2. Class, Object, Property dan Method
  • #3. Construct dan Destruct
  • #4. Enkapsulasi
  • #5. Inheritance
  • #6. CRUD OOP PHP
  • #7. PHP Lanjutan Lainnya

Produk

  • Cara menggunakan php get file type
    Source Code Website Reservasi Kamar Hotel Dengan PHP dan MySQLi Rp 200,000
  • Cara menggunakan php get file type
    Source Code Aplikasi Pengajuan Cuti Karyawan Berbasis Website Rp 200,000
  • Cara menggunakan php get file type
    Source Code Toko Sport PHP dan MySQLi Rp 200,000
  • Cara menggunakan php get file type
    Source Code Sistem Informasi Kuesioner Berbasis Web Rp 200,000

Tutorial Terbaru

  • Tutorial Python # 13 : Jenis Operator Pada Python September 24, 2022
  • Membuat Laporan PDF Dengan PHP dan MySQLi September 3, 2022
  • Export Data ke Excel Dengan PHP dan MySQLi August 23, 2022
  • Membuat Select Option Dinamis Menggunakan Ajax August 17, 2022
  • Membuat QR Code Dengan PHP August 3, 2022

Toko Kami

Cara menggunakan php get file type
Cara menggunakan php get file type
Cara menggunakan php get file type

SOCIAL

Malas Ngoding

TUTORIAL MENARIK LAINNYA

Cara menggunakan php get file type

PHP

Membuat Laporan PDF Dengan PHP dan MySQLi

3 September 2022

Membuat laporan dalam bentuk PDF merupakan merupakah salah satu materi yang harus kita kuasai dalam proses pembuatan aplikasi. Kenapa demikian ? Hal ini karena hampir ...

Muzanni

Cara menggunakan php get file type

PHP

Export Data ke Excel Dengan PHP dan MySQLi

23 August 2022

Export data ke excel dengan PHP dalah salah satu model yang biasanya digunakan dalam membuat laporan berdasarkan referensi data dari MySQL. Export data ke excel ...

Muzanni

Cara menggunakan php get file type

PHP

Membuat QR Code Dengan PHP

3 August 2022

Membuat QR Code Dengan PHP – Halo teman-teman, Selamat datang kembali di malasngoding.com. Pada materi tutorial ini kita akan belajar tentang Membuat QR Code Dengan ...

Diki Alfarabi Hadi

Cara menggunakan php get file type

PHP

Menghitung Jumlah Baris dalam File Pada PHP

18 June 2022

Menghitung jumlah baris adalah salah satu teknik yang penting dalam berbagai bidang terutama dalam bidang pemrograman. Dalam pemrograman web, disini saya menggunakan pemrograman PHP untuk ...

Apa ekstensi file PHP?

Extension di dalam PHP adalah istilah yang merujuk kepada kumpulan fungsi program tambahan yang membuat PHP dapat mendukung berbagai fitur baru. PHP terdiri dari aplikasi inti (PHP core), dan fungsi tambahan (extension).

Bagaimana cara menjalankan file PHP?

Untuk menjalankan file php, silahkan buka web browser seperti mozilla firefox, chrome, internet explorer atau web browser lain. Kemudian ketik url http://localhost/tutorial/ lalu enter, jika semua sudah benar maka akan tampil seperti gambar di bawah ini.

Berkas PHP disimpan dimana?

Lokasinya akan disimpan di direktori temporari atau direktori sementara di server.

Apa enctype form yang harus digunakan untuk mengupload file?

Tag input dengan atribut type=”file” adalah objek form yang digunakan untuk upload file.