Please enable JavaScript!
Bitte aktiviere JavaScript!
S'il vous plaît activer JavaScript!
Por favor,activa el JavaScript!
antiblock.org

 |  | 

PHP

Cara Membuat CRUD Plus Upload Gambar dengan PHP dan MySQL

img-responsive

Catatan kali ini adalah pengembangan dari catatan sebelumnya mengenai Cara Membuat Upload Gambar dengan PHP dan MySQL. Pada catatan tersebut, saya hanya membahas proses upload dan proses simpan data ke database. Kebetulan ada salah satu pengunjung blog saya yang meminta untuk dibuatkan juga proses ubah dan hapusnya. Maka dari itu pada catatan ini, saya akan membahas mengenai cara membuat simpan, ubah, hapus, dan view data dari database atau yang lebih dikenal dengan istilah CRUD (Create, Read, Update, Delete) plus proses upload gambarnya.

DEMO
Sebelum membaca tutorialnya, mungkin ada yang ingin melihat demonya terlebih dahulu. Silahkan klik link berikut untuk melihat demonya : Lihat Demo.


STEP 1 – PERSIAPAN

  1. Buat sebuah folder dengan nama latihan_crud, lalu simpan pada folder xampp/htdocs/
  2. Buat lagi sebuah folder dengan nama images, lalu simpan di folder xampp/htdocs/latihan_crud/

STEP 2 – DATABASE
Pada step ini, kita akan membuat databasenya. ikuti langkah-langkah berikut ini :

  1. Buat sebuah database dengan nama mynotescode
  2. Buat sebuah tabel dengan nama siswa. Struktur tabelnya sebagai berikut :
    Tabel Siswa - Cara Membuat CRUD Plus Upload Gambar dengan PHP dan MySQL

    CREATE TABLE IF NOT EXISTS `siswa` (
      `nis` varchar(11) NOT NULL,
      `nama` varchar(50) NOT NULL,
      `jenis_kelamin` varchar(10) NOT NULL,
      `telp` varchar(15) NOT NULL,
      `alamat` text NOT NULL,
      `foto` varchar(200) NOT NULL,
      PRIMARY KEY (`nis`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

STEP 3 – BUAT KONEKSI DATABASE
Pada step ini, kita akan membuat file koneksi.php yang berfungsi untuk menghubungkan dengan database MySQL. Silahkan buat file koneksi.php, lalu simpan di folder xampp/htdocs/latihan_crud/. Berikut ini kodenya :

<?php
$host = "localhost"; // Nama hostnya
$username = "root"; // Username
$password = ""; // Password (Isi jika menggunakan password)
$database = "mynotescode"; // Nama databasenya
$connect = mysqli_connect($host, $username, $password, $database); // Koneksi ke MySQL
?>

STEP 4 – Buat View Data
Pada step ini, kita akan membuat sebuah file php yang berfungsi sebagai tampilan awal dan menampilkan semua data siswa dari database ke dalam sebuah tabel. Silahkan buat file index.php, lalu simpan di folder xampp/htdocs/latihan_crud/. Berikut ini tampilan dan kodenya :

View - Cara Membuat CRUD Plus Upload Gambar dengan PHP dan MySQL

<html>
<head>
  <title>Aplikasi CRUD Plus Upload Gambar dengan PHP</title>
</head>
<body>
  <h1>Data Siswa</h1>
  <a href="form_simpan.php">Tambah Data</a><br><br>
  <table border="1" width="100%">
  <tr>
    <th>Foto</th>
    <th>NIS</th>
    <th>Nama</th>
    <th>Jenis Kelamin</th>
    <th>Telepon</th>
    <th>Alamat</th>
    <th colspan="2">Aksi</th>
  </tr>
  <?php
  // Load file koneksi.php
  include "koneksi.php";
  
  $query = "SELECT * FROM siswa"; // Query untuk menampilkan semua data siswa
  $sql = mysqli_query($connect, $query); // Eksekusi/Jalankan query dari variabel $query
  
  while($data = mysqli_fetch_array($sql)){ // Ambil semua data dari hasil eksekusi $sql
    echo "<tr>";
    echo "<td><img src='images/".$data['foto']."' width='100' height='100'></td>";
    echo "<td>".$data['nis']."</td>";
    echo "<td>".$data['nama']."</td>";
    echo "<td>".$data['jenis_kelamin']."</td>";
    echo "<td>".$data['telp']."</td>";
    echo "<td>".$data['alamat']."</td>";
    echo "<td><a href='form_ubah.php?nis=".$data['nis']."'>Ubah</a></td>";
    echo "<td><a href='proses_hapus.php?nis=".$data['nis']."'>Hapus</a></td>";
    echo "</tr>";
  }
  ?>
  </table>
</body>
</html>

Berikut penjelasan dari kode diatas :

$sql = mysqli_query($connect, $query);

Untuk mengeksekusi / menjalankan query sql. struktur dasar penulisannya adalah sebagai berikut :

mysqli_query($connect, $query);

/*
Keterangan :
- $connect : diisi dengan koneksi ke mysql. hasil dari mysqli_connect
- $query : diisi dengan Query SQL yang diinginkan
*/

mysqli_num_rows($sql);

Untuk mengambil jumlah data dari hasil eksekusi suatu query sql. Struktur dasar penulisannya adalah sebagai berikut :

mysqli_num_rows($sql);

/*
Keterangan :
- $sql : diisi dengan hasil eksekusi query sql(mysql_query())
*/

mysqli_fetch_array($sql);

Untuk mengambil data dari hasil eksekusi suatu query sql. Struktur dasar penulisannya adalah sebagai berikut :

mysqli_fetch_array($sql);

/*
Keterangan :
- $sql : diisi dengan hasil eksekusi query sql(mysql_query())
*/

Kode diatas saya simpan didalam looping while berfungsi untuk melakukan proses perulangan sampai data terkahir dengan tujuan agar kita bisa menampilkan datanya satu per satu.

echo "<td><img src='images/".$data['foto']."' width='100' height='100'></td>";
echo "<td>".$data['nis']."</td>";
echo "<td>".$data['nama']."</td>";
echo "<td>".$data['jenis_kelamin']."</td>";
echo "<td>".$data['telp']."</td>";
echo "<td>".$data['alamat']."</td>";
echo "<td><a href='form_ubah.php?nis=".$data['nis']."'>Ubah</a></td>";
echo "<td><a href='proses_hapus.php?nis=".$data['nis']."'>Hapus</a></td>";

Pada kode diatas terdapat variabel $data digunakan untuk mengambil isi dari field-field yang ada pada tabel siswa di database mynotescode. Pada kode diatas juga ada kode yang berada pada tanda [‘……’], kode tersebut harus sama dengan nama field yang ada pada tabel siswa.


STEP 5 – Form Tambah Data
Langkah selanjutnya adalah membuat sebuah form yang digunakan untuk menambah data siswa. Silahkan buat sebuah file dengan nama form_simpan.php, lalu simpan di folder xampp/htdocs/latihan_crud/. Berikut ini tampilan dan kodenya :

Form Simpan - Cara Membuat CRUD Plus Upload Gambar dengan PHP dan MySQL

<html>
<head>
  <title>Aplikasi CRUD dengan PHP</title>
</head>
<body>
  <h1>Tambah Data Siswa</h1>
  <form method="post" action="proses_simpan.php" enctype="multipart/form-data">
  <table cellpadding="8">
  <tr>
    <td>NIS</td>
    <td><input type="text" name="nis"></td>
  </tr>
  <tr>
    <td>Nama</td>
    <td><input type="text" name="nama"></td>
  </tr>
  <tr>
    <td>Jenis Kelamin</td>
    <td>
    <input type="radio" name="jenis_kelamin" value="Laki-laki"> Laki-laki
    <input type="radio" name="jenis_kelamin" value="Perempuan"> Perempuan
    </td>
  </tr>
  <tr>
    <td>Telepon</td>
    <td><input type="text" name="telp"></td>
  </tr>
  <tr>
    <td>Alamat</td>
    <td><textarea name="alamat"></textarea></td>
  </tr>
  <tr>
    <td>Foto</td>
    <td><input type="file" name="foto"></td>
  </tr>
  </table>
  
  <hr>
  <input type="submit" value="Simpan">
  <a href="index.php"><input type="button" value="Batal"></a>
  </form>
</body>
</html>

STEP 6 – Proses Simpan Data
Selanjutnya kita akan membuat sebuah file yang berfungsi untuk melakukan proses upload dan simpan data ke database. Silahkan buat sebuah file dengan nama proses_simpan.php, lalu simpan di folder xampp/htdocs/latihan_crud/. Berikut ini kodenya :

<?php
// Load file koneksi.php
include "koneksi.php";

// Ambil Data yang Dikirim dari Form
$nis = $_POST['nis'];
$nama = $_POST['nama'];
$jenis_kelamin = $_POST['jenis_kelamin'];
$telp = $_POST['telp'];
$alamat = $_POST['alamat'];
$foto = $_FILES['foto']['name'];
$tmp = $_FILES['foto']['tmp_name'];
  
// Rename nama fotonya dengan menambahkan tanggal dan jam upload
$fotobaru = date('dmYHis').$foto;

// Set path folder tempat menyimpan fotonya
$path = "images/".$fotobaru;

// Proses upload
if(move_uploaded_file($tmp, $path)){ // Cek apakah gambar berhasil diupload atau tidak
  // Proses simpan ke Database
  $query = "INSERT INTO siswa VALUES('".$nis."', '".$nama."', '".$jenis_kelamin."', '".$telp."', '".$alamat."', '".$fotobaru."')";
  $sql = mysqli_query($connect, $query); // Eksekusi/ Jalankan query dari variabel $query

  if($sql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header("location: index.php"); // Redirect ke halaman index.php
  }else{
    // Jika Gagal, Lakukan :
    echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
    echo "<br><a href='form_simpan.php'>Kembali Ke Form</a>";
  }
}else{
  // Jika gambar gagal diupload, Lakukan :
  echo "Maaf, Gambar gagal untuk diupload.";
  echo "<br><a href='form_simpan.php'>Kembali Ke Form</a>";
}
?>

Berikut penjelasan dari kode diatas :

$_FILES[‘foto‘][‘name’];
Untuk mengambil nama file yang diupload.

$_FILES[‘foto‘][‘tmp_name’];
Untuk mengambil url/path folder tempat penyimpanan sementara file yang diupload, sebelum dipindahkan ke folder images.

NOTE : Pada kode diatas, terdapat tulisan foto. tulisan tersebut harus sama dengan nama input type=”file” yang ada pada form (form_simpan.php).

move_uploaded_file($tmp_file, $path)
kode inilah yang berfungsi untuk memindahkan foto / file yang telah diupload dari folder tmp ke dalam folder di website kita (pada catatan ini kita upload gambarnya ke folder images). Struktur dasar penulisan kodenya adalah :

move_uploaded_file($tmp, $path);

/*
Keterangan:
- $tmp : diisi dengan sumber file yang diupload
- $path : diisi dengan url/path folder tempat menyimpan foto. contoh: images/foto.jpg
*/

STEP 7 – Form Ubah Data
Langkah selanjutnya adalah membuat sebuah form yang digunakan untuk mengubah data siswa. Silahkan buat sebuah file dengan nama form_ubah.php, lalu simpan di folder xampp/htdocs/latihan_crud/. Berikut ini tampilan dan kodenya :

Form Ubah - Cara Membuat CRUD Plus Upload Gambar dengan PHP dan MySQL

<html>
<head>
  <title>Aplikasi CRUD dengan PHP</title>
</head>
<body>
  <h1>Ubah Data Siswa</h1>
  
  <?php
  // Load file koneksi.php
  include "koneksi.php";
  
  // Ambil data NIS yang dikirim oleh index.php melalui URL
  $nis = $_GET['nis'];
  
  // Query untuk menampilkan data siswa berdasarkan NIS yang dikirim
  $query = "SELECT * FROM siswa WHERE nis='".$nis."'";
  $sql = mysqli_query($connect, $query);  // Eksekusi/Jalankan query dari variabel $query
  $data = mysqli_fetch_array($sql); // Ambil data dari hasil eksekusi $sql
  ?>
  
  <form method="post" action="proses_ubah.php?nis=<?php echo $nis; ?>" enctype="multipart/form-data">
  <table cellpadding="8">
  <tr>
    <td>Nama</td>
    <td><input type="text" name="nama" value="<?php echo $data['nama']; ?>"></td>
  </tr>
  <tr>
    <td>Jenis Kelamin</td>
    <td>
    <?php
    if($data['jenis_kelamin'] == "Laki-laki"){
      echo "<input type='radio' name='jenis_kelamin' value='laki-laki' checked='checked'> Laki-laki";
      echo "<input type='radio' name='jenis_kelamin' value='perempuan'> Perempuan";
    }else{
      echo "<input type='radio' name='jenis_kelamin' value='laki-laki'> Laki-laki";
      echo "<input type='radio' name='jenis_kelamin' value='perempuan' checked='checked'> Perempuan";
    }
    ?>
    </td>
  </tr>
  <tr>
    <td>Telepon</td>
    <td><input type="text" name="telp" value="<?php echo $data['telp']; ?>"></td>
  </tr>
  <tr>
    <td>Alamat</td>
    <td><textarea name="alamat"><?php echo $data['alamat']; ?></textarea></td>
  </tr>
  <tr>
    <td>Foto</td>
    <td>
      <input type="checkbox" name="ubah_foto" value="true"> Ceklis jika ingin mengubah foto<br>
      <input type="file" name="foto">
    </td>
  </tr>
  </table>
  
  <hr>
  <input type="submit" value="Ubah">
  <a href="index.php"><input type="button" value="Batal"></a>
  </form>
</body>
</html>

Yang harus diperhatikan pada form ubah ini adalah saya telah menambahkan sebuah checkbox dengan atribut name ubah_foto. Checkbox ini berfungsi untuk mengecek apakah user ingin mengubah data siswa sekaligus dengan mengubah fotonya atau tidak. Jadi jika user menceklis checkbox tersebut, maka foto akan diubah dan diupload ulang sesuai yang user pilih pada form. Sebaliknya jika tidak diceklis, maka proses upload foto tidak akan dilakukan dan foto tetap foto yang sama atau tidak diubah.

Pada form ubah juga, kita melakukan query ke database untuk menampilkan data siswa sebelumnya sesuai yang diklik oleh user pada halaman index.php. Perhatikan pada skrip form ubah diatas, terdapat kode berikut :

$nis = $_GET[‘nis‘];

Kode diatas berfungsi untuk mengambil data NIS yang dikirim oleh file index.php melalui sebuah link edit. Perhatikan skrip yang diberi warna merah, skrip tersebut harus sama dengan skrip yang ada di file index.php. Lihat pada file index.php terdapat skrip berikut :

echo “<td><a href=’form_ubah.php?nis=”.$data[‘nis’].”‘>Ubah</a></td>”;

Skrip tersebut yang akan membawa user ke halaman form ubah sekaligus mengirim data NIS siswa yang diklik oleh user (Perhatikan skrip yang diberi warna hijau dan merah). Skrip yang diberi warna hijau harus sama dengan $_GET[‘nis‘] yang ada di file form_ubah.php.


STEP 8 – Proses Ubah Data
Selanjutnya kita akan membuat sebuah file yang berfungsi untuk melakukan proses ubah data. Silahkan buat sebuah file dengan nama proses_ubah.php, lalu simpan di folder xampp/htdocs/latihan_crud/. Berikut ini kodenya :

<?php
// Load file koneksi.php
include "koneksi.php";

// Ambil data NIS yang dikirim oleh form_ubah.php melalui URL
$nis = $_GET['nis'];

// Ambil Data yang Dikirim dari Form
$nama = $_POST['nama'];
$jenis_kelamin = $_POST['jenis_kelamin'];
$telp = $_POST['telp'];
$alamat = $_POST['alamat'];

// Cek apakah user ingin mengubah fotonya atau tidak
if(isset($_POST['ubah_foto'])){ // Jika user menceklis checkbox yang ada di form ubah, lakukan :
  // Ambil data foto yang dipilih dari form
  $foto = $_FILES['foto']['name'];
  $tmp = $_FILES['foto']['tmp_name'];
  
  // Rename nama fotonya dengan menambahkan tanggal dan jam upload
  $fotobaru = date('dmYHis').$foto;
  
  // Set path folder tempat menyimpan fotonya
  $path = "images/".$fotobaru;

  // Proses upload
  if(move_uploaded_file($tmp, $path)){ // Cek apakah gambar berhasil diupload atau tidak
    // Query untuk menampilkan data siswa berdasarkan NIS yang dikirim
    $query = "SELECT * FROM siswa WHERE nis='".$nis."'";
    $sql = mysqli_query($connect, $query); // Eksekusi/Jalankan query dari variabel $query
    $data = mysqli_fetch_array($sql); // Ambil data dari hasil eksekusi $sql

    // Cek apakah file foto sebelumnya ada di folder images
    if(is_file("images/".$data['foto'])) // Jika foto ada
      unlink("images/".$data['foto']); // Hapus file foto sebelumnya yang ada di folder images
    
    // Proses ubah data ke Database
    $query = "UPDATE siswa SET nama='".$nama."', jenis_kelamin='".$jenis_kelamin."', telp='".$telp."', alamat='".$alamat."', foto='".$fotobaru."' WHERE nis='".$nis."'";
    $sql = mysqli_query($connect, $query); // Eksekusi/ Jalankan query dari variabel $query

    if($sql){ // Cek jika proses simpan ke database sukses atau tidak
      // Jika Sukses, Lakukan :
      header("location: index.php"); // Redirect ke halaman index.php
    }else{
      // Jika Gagal, Lakukan :
      echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
      echo "<br><a href='form_ubah.php'>Kembali Ke Form</a>";
    }
  }else{
    // Jika gambar gagal diupload, Lakukan :
    echo "Maaf, Gambar gagal untuk diupload.";
    echo "<br><a href='form_ubah.php'>Kembali Ke Form</a>";
  }
}else{ // Jika user tidak menceklis checkbox yang ada di form ubah, lakukan :
  // Proses ubah data ke Database
  $query = "UPDATE siswa SET nama='".$nama."', jenis_kelamin='".$jenis_kelamin."', telp='".$telp."', alamat='".$alamat."' WHERE nis='".$nis."'";
  $sql = mysqli_query($connect, $query); // Eksekusi/ Jalankan query dari variabel $query

  if($sql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header("location: index.php"); // Redirect ke halaman index.php
  }else{
    // Jika Gagal, Lakukan :
    echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
    echo "<br><a href='form_ubah.php'>Kembali Ke Form</a>";
  }
}
?>

Berikut penjelasan skrip diatas.

$nis = $_GET[‘nis‘];

Skrip yang saya beri warna merah harus sama dengan skrip yang ada di file form_ubah.php (yang saya beri warna hijau) dibawah ini :

<form method=”post” action=”proses_ubah.php?nis=<?php echo $nis; ?>” enctype=”multipart/form-data”>

Kemudian perhatikan skrip berikut :

unlink(“images/”.$data[‘foto‘]);

Skrip tersebut berfungsi untuk menghapus sebuah file pada folder yang telah kita tentukan. Pada kasus disini, kita akan menghapus sebuah file gambar pada folder images dimana nama file gambar yang akan dihapus diambil dari database. $data[‘foto’] berfungsi untuk mengambil nama file foto yang ada di tabel siswa.


STEP 9 – Proses Hapus Data
Selanjutnya kita akan membuat sebuah file yang berfungsi untuk melakukan proses hapus data. Silahkan buat sebuah file dengan nama proses_hapus.php, lalu simpan di folder xampp/htdocs/latihan_crud/. Berikut ini kodenya :

<?php
// Load file koneksi.php
include "koneksi.php";

// Ambil data NIS yang dikirim oleh index.php melalui URL
$nis = $_GET['nis'];

// Query untuk menampilkan data siswa berdasarkan NIS yang dikirim
$query = "SELECT * FROM siswa WHERE nis='".$nis."'";
$sql = mysqli_query($connect, $query); // Eksekusi/Jalankan query dari variabel $query
$data = mysqli_fetch_array($sql); // Ambil data dari hasil eksekusi $sql

// Cek apakah file fotonya ada di folder images
if(is_file("images/".$data['foto'])) // Jika foto ada
  unlink("images/".$data['foto']); // Hapus foto yang telah diupload dari folder images

// Query untuk menghapus data siswa berdasarkan NIS yang dikirim
$query2 = "DELETE FROM siswa WHERE nis='".$nis."'";
$sql2 = mysqli_query($connect, $query2); // Eksekusi/Jalankan query dari variabel $query

if($sql2){ // Cek jika proses simpan ke database sukses atau tidak
  // Jika Sukses, Lakukan :
  header("location: index.php"); // Redirect ke halaman index.php
}else{
  // Jika Gagal, Lakukan :
  echo "Data gagal dihapus. <a href='index.php'>Kembali</a>";
}
?>

Berikut penjelasan skrip diatas.

$nis = $_GET[‘nis‘];

Skrip yang saya beri warna merah harus sama dengan skrip yang ada di file index.php (yang saya beri warna hijau) dibawah ini :

echo “<td><a href=’proses_hapus.php?nis=”.$data[‘nis’].”‘>Hapus</a></td>”;

Kemudian perhatikan skrip berikut :

unlink(“images/”.$data[‘foto‘]);

Skrip tersebut berfungsi untuk menghapus sebuah file pada folder yang telah kita tentukan. Pada kasus disini, kita akan menghapus sebuah file gambar pada folder images dimana nama file gambar yang akan dihapus diambil dari database. $data[‘foto’] berfungsi untuk mengambil nama file foto yang ada di tabel siswa.

Source Code
Untuk mengunduh source code nya, klik link berikut ini : Download.
Bingung cara downloadnya? klik disini untuk melihat caranya.

Sekian untuk catatan kali ini. Apabila ada yang ingin ditanyakan, silahkan tanyakan lewat form komentar dibawah ini. Terimakasih.

Cara mudah membuat simpan, edit, delete, dan view dengan PHP dan MySQL. Tutorial membuat CRUD Plus Upload Gambar denga PHP dan MySQL. Tutorial membuat simpan, edit, delete, dan view dengan PHP dan MySQL. Cara mudah membuat insert, edit, delete, dan view dengan PHP dan MySQL. Tutorial membuat insert, edit, delete, dan view dengan PHP dan MySQL.

CRUD

(Total : 20,944 viewers, 12 viewers today)
Tags
cara-membuat-crud-plus-upload-gambar-dengan-php-dan-mysql

ABOUT THE AUTHOR

Interested in android programming, long time focused on web development. Visit My Profile Site at www.rizaldimaulidia.com

POST YOUR COMMENTS

Your email address will not be published. Required fields are marked *

Name *

Email *

Website

178 Comments

  1. Aisyah Nur Fatimah

    sudah bisa mas, tapi tidah bisa hapus dan simpan yang mau di ubah sekarang, tapi tidak ada error yang muncul

    • Rizaldi Maulidia Achmad

      coba kirim source code yang sudah dibuat mba ke saya via fans page fb kami. nanti saya bantu

  2. Egit Heri

    Makasih banyak bro, sangat bermanfaat . selesai juga akhirnya berkat blog ini 😀

    *saran buat yang baca artikel ini, jangan langsg copas, ikutin step by stepnya dan pahami logika yang penulis buat. di jamin working

    • Rizaldi Maulidia Achmad

      Alhamdulillah kalau tulisan saya dirasa bermanfaat. Sama-sama om, senang bisa membantu 😀
      iya sangat setuju, harus dibaca biar paham, itu saya juga berusaha menjelaskan sebisa saya hehe

  3. Aisyah Nur

    mau tanya kenapa gambar sya tidak muncul padahal sudah sesuai dengan script?

    terima kasih

    • Rizaldi Maulidia Achmad

      Apa ada error yang muncul mba?
      Lalu cek juga apa data nya masuk ke database?

  4. uussssssssssssssss

    ini gimana min pesan errornya :
    Parse error: syntax error, unexpected ‘if’ (T_IF) in C:\xampp\htdocs\latihan_crud\proses_ubah.php on line 35

    scriptnya pada garis ini

    if(is_file(“images/”.$data[‘foto’])) // Jika foto ada
    unlink(“images/”.$data[‘foto’]); // Hapus file foto sebelumnya yang ada di folder images

    ifnya kagak kebaca apa mungkin kurang { } tapi aku coba gak bisa, dan taruh dimana jika kurang { } ?

      • Rizaldi Maulidia Achmad

        ehh hahaha iyaa alhamdulillah kalau sudah bisa. siaap sama-sama om 😀

  5. korekiyo

    om error di “unlink” nya

    folder gambarnya di luar folder file proses edit nya

    • Rizaldi Maulidia Achmad

      errornya apa om? coba kirim screenshot errornya via chat fans page fb aja om

  6. Temy Bagus Asmoro

    mas minta bantuannya untuk uploadnya terjadi masalah dalam proses
    Notice: Undefined index: foto in C:\xampp\htdocs\project\prosesmcu.php on line 14

    Notice: Undefined index: foto in C:\xampp\htdocs\project\prosesmcu.php on line 15
    Maaf, Gambar gagal untuk diupload.
    Kembali Ke Form

    mohon bantuannya

    • Rizaldi Maulidia Achmad

      Nanti malam ya om saya bantu. Lagi kerja soalnya sekarang hehe

    • Rizaldi Maulidia Achmad

      coba saya mau lihat skrip nya om. kirim aja file nya via fans page kami. nanti saya bantu

  7. Yehezkiel Peter

    haaa akhirnya nemu referensi yang pas banget, makasih banyak gann

    • Rizaldi Maulidia Achmad

      sama-sama om. senang bisa membantu 😀 hehe

  8. andriansyah

    tolong om …
    saya malah ga berfungsi total,
    ga bisa input sama sekali.
    tolong pencerahannya
    terimakasih

    • Rizaldi Maulidia Achmad

      ada error yang muncul ga?

  9. Kim Rye Hoon

    Makasih bayak gaaan :’D

    • Rizaldi Maulidia Achmad

      Sama-sama 😀

  10. suka wedana

    udah om hehe udah di chat

  11. suka wedana

    om gmna caranya agar nama file gambarnya berubah sesuai nisnya ?
    misal nis reg001 upload foto biar rename jadi reg001

    • Rizaldi Maulidia Achmad

      tinggal ubah skrip pada proses_simpan.php di baris ke 15. menjadi seperti ini om :
      $fotobaru = “reg”.$nis.”.”.pathinfo($foto, PATHINFO_EXTENSION);

      jangan lupa pada proses_ubah.php juga ubah skrip yang di baris ke 21 jadi seperti diatas

    • suka wedana

      makasi sebelumnya om

      setelah di ubah $fotobaru = “reg”.$nis.”.”.pathinfo($foto, PATHINFO_EXTENSION);
      kok malah bukan file jpg yg keluar?

      malah jadi kayak gini
      “reg”REG000””jpg tolong pencerahannya dong suhu

      • Rizaldi Maulidia Achmad

        coba screenshot om. mau lihat saya si fotonya

    • suka wedana

      cara kirim gambar disini gmna om?

      • Rizaldi Maulidia Achmad

        lanjut chat via fans page fb kami saja om. biar bisa kirim gambar hehe

        • suka wedana

          udah om hehe udah di chat
          mohon dibalas ya om

  12. Atikah Rahmah

    Terima kasih, sangat membantu 🙂

    • Rizaldi Maulidia Achmad

      Sama-sama mba 🙂

    • Rizaldi Maulidia Achmad

      Amiiin. Terimakasih om 😀

  13. nur

    om aku buat juga gagal upload di dattabase trs foto nya om tolong pencerahan om

    • Rizaldi Maulidia Achmad

      Coba kirim source code yang sudah di buat via fans page fb kami om. Nanti saya cek

      • adeliaaja

        bang kenapa ya mau ipnut data keluarnya tulisan begini”:
        Kembali Ke Form”; } }else{ // Jika gambar gagal diupload, Lakukan : echo “Maaf, Gambar gagal untuk diupload.”; echo ”
        Kembali Ke Form”; } ?>
        pdhal saya mau input 3 foto..
        terus form untuk ubah juga belum bisa kenapa ya

        • Rizaldi Maulidia Achmad

          Coba kirimkan source code nya ke saya via fans page fb kami mba. Nanti biar saya bisa cek

  14. Fhikri Reynaldi

    Sangat membantu sekali, terima kasih..

    • Rizaldi Maulidia Achmad

      Alhamdulillah, sama-sama om 😀

  15. Sofiani_azlah

    hapus datanya kok gak bisa ya? klu dklik hapus dia balik lg ke halaman index.php tapi datanya belum kehapus. mohon bantuannya 🙂

    • Rizaldi Maulidia Achmad

      coba periksa query delete nya mba. apa sudah di beri kondisi “where” atau belum. coba copas disini mba query delete nya

    • Rizaldi Maulidia Achmad

      yah tinggal buat lagi aja si input type file nya. tapi dengan nama berbeda. inti dari upload sebenernya ada di skrip ini : move_uploaded_file();

      • essa faizal

        saya sudah buat input file nya menjadai dua buah dengan nama yang berbeda, namun hasilnya malah tersipan 1 foto saja (foto yang di upload hanya satu namun nama foto nya tetap di record).
        berikut scrift nya :

        ……

        mohon bantuannya

        • Rizaldi Maulidia Achmad

          coba kirimkan file source code nya lewat fans page kami om. biar saya cek.

  16. Robbi Syahputra

    Bang, kalo mau simpen hasil foto yang diambil langsung kamera di browser langsung ke database gimana bang ?

    • Rizaldi Maulidia Achmad

      Maksudnya lewat kamera hp gituh?

      • Robbi Syahputra

        Bukan bang, take foto dari webcam, nanti hasilnya muncul di layar, nah mau nyimpen hasilnya ke database gimana bang ?

        • Rizaldi Maulidia Achmad

          oh sudah banyak librari yang menyediakan itu. cuma memang saya juga belum pernah buat kaya gini. silahkan searching aja di google om : “tutorial upload foto via webcam”

  17. pramudya

    terima kasih mas bisa dijalankan, sangat membantu

    • Rizaldi Maulidia Achmad

      Siap sama-sama om. Terimakasih juga sudah berkungjung 😀

  18. Ayu Syahfitri

    min, mau tanya’ nee min. koq setiap di update fotonya muncul pemberitahuan maaf, terjadi kesalahan saat menyimpan data ke database itu salahnya dimana yaa? pada hal query updatenya udah sama kayak yang didatabase. nama tabel dan nama fieldnya.

    • Rizaldi Maulidia Achmad

      coba saya mau lihat skrip query sql untuk update data nya mba, itu pasti ada kesalahan pada query update nya

      • Ayu Syahfitri

        $query = “UPDATE Kandidat SET Id_Kandidat='”.$Id_Kandidat.”‘, Capres='”.$Capres.”‘, Cawapres='”.$Cawapres.”, Foto='”.$fotobaru.”‘ WHERE Id_Kandidat='”.$Id_Kandidat.”‘”;
        $sql = mysqli_query($connect, $query); // Eksekusi/ Jalankan query dari variabel $query

        • Rizaldi Maulidia Achmad

          Lanjut chat via fans page kami aja mba. Tolong kirim kan screenshot dr struktur tabel Kandidat nya lewat pesan di fans page kami

          • Ayu Syahfitri

            Sudah saya kirim mas

  19. herfiani

    kok gambarnya gak muncul ,, tapi ga ada pesan erorrnya.. gimana nih??

    • Rizaldi Maulidia Achmad

      1. Cek dulu apakah data (nama file gambar) yang disimpan masuk ke databasenya atau engga?
      2. Cek file gambarnya apakah ada di folder images atau tidak?

  20. zaini jay

    mau nanya kenapa selalu salah di bagian pemanggilan name file di proses update padahal name sudah di samakan dengan name di bagian penampilan edit data

    Notice: Undefined index: nomor in C:\xampp\htdocs\tutorial\aksi4.php on line 5

    Notice: Undefined index: jalan in C:\xampp\htdocs\tutorial\aksi4.php on line 10

    Notice: Undefined index: jalan in C:\xampp\htdocs\tutorial\aksi4.php on line 11

    Notice: Undefined index: gam in C:\xampp\htdocs\tutorial\aksi4.php on line 13

    Notice: Undefined index: gam in C:\xampp\htdocs\tutorial\aksi4.php on line 14

    • Rizaldi Maulidia Achmad

      hmm coba kirim saja file nya ke saya om lewat fans page fb. biar saya bisa cek

  21. daffazuhdan

    bantu dong untuk tampil foto fotonta tidak mau tampil

    • Rizaldi Maulidia Achmad

      1. Cek dulu apakah data yang disimpan masuk ke databasenya atau engga?
      2. Cek file gambarnya apakah ada di folder images atau tidak?
      3. Apakah ada error yang muncul?

  22. Arief eko

    Om tolong ini kenapa update nya gak bisa, ini coding saya <?php
    include 'koneksi.php';
    $id = $_GET['id'];
    $nama_user = $_POST['nama_user'];
    $regional = $_POST['regional'];
    $job = $_POST['job'];
    $no_telp = $_POST['no_telp'];
    $email = $_POST['email'];
    $jenis_kelamin = $_POST['jenis_kelamin'];
    $bio = $_POST['bio'];
    $username = $_POST['username'];
    $password = $_POST['password'];

    // Cek apakah user ingin mengubah fotonya atau tidak
    if(isset($_POST['ubah_foto'])){ // Jika user menceklis checkbox yang ada di form ubah, lakukan :

    // Ambil data foto yang dipilih dari form
    $foto = $_FILES['foto']['name'];
    $tmp = $_FILES['foto']['tmp_name'];

    // Rename nama fotonya dengan menambahkan tanggal dan jam upload
    $fotobaru = date('dmYHis').$foto;

    // Set path folder tempat menyimpan fotonya
    $path = "images/".$fotobaru;

    // Proses upload
    if(move_uploaded_file($tmp, $path)){ // Cek apakah gambar berhasil diupload atau tidak
    $mysql_query = "SELECT * FROM tambahuser WHERE id='".$id."'";
    $query_mysql = mysql_query; // Eksekusi/Jalankan query dari variabel $query
    $data = mysql_fetch_array($query_mysql) // Ambil data dari hasil eksekusi $sql

    // Cek apakah file foto sebelumnya ada di folder images
    if(is_file("images/".$data['foto'])) // Jika foto ada
    unlink("images/".$data['foto']); // Hapus file foto sebelumnya yang ada di folder images

    // Proses ubah data ke Database
    $mysql_query = "UPDATE tambahuser SET nama_user='".$nama_user."', regional='".$regional."', no_telp='".$no_telp."', email='".$email."',jenis_kelamin='".$jenis_kelamin."',bio='".$bio."',username='".$username."',password='".$password."', foto='".$fotobaru."' WHERE id='".$id."'";
    $query_mysql = mysql_query; // Eksekusi/ Jalankan query dari variabel $query

    if($query_mysql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header("location:tampiluser.php"); // Redirect ke halaman tampiluser.php

    }else{ // Jika Gagal, Lakukan :
    echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
    echo "Kembali Ke Form“; }
    }else{ // Jika gambar gagal diupload, Lakukan :
    echo “Maaf, Gambar gagal untuk diupload.”;
    echo “Kembali Ke Form“; }
    }else{ // Jika user tidak menceklis checkbox yang ada di form ubah, lakukan :
    // Proses ubah data ke Database
    $mysql_query = “UPDATE tambahuser SET nama_user='”.$nama_user.”‘, regional='”.$regional.”‘, no_telp='”.$no_telp.”‘, email='”.$email.”‘,jenis_kelamin='”.$jenis_kelamin.”‘,bio='”.$bio.”‘,username='”.$username.”‘,password='”.$password.”‘, foto='”.$fotobaru.”‘ WHERE id='”.$id.”‘”;
    $query_mysql = mysql_query; // Eksekusi/ Jalankan query dari variabel $query
    if($query_mysql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header(“location: tampiluser.php”); // Redirect ke halaman tampiluser.php
    }else{ // Jika Gagal, Lakukan :
    echo “Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.”;
    echo “Kembali Ke Form“; }}
    ?>

    • Rizaldi Maulidia Achmad

      Apa error nya om?

      • Arief eko

        error nya di line 34 om ada tulisn seperti ini :p arse error: syntax error, unexpected T_IF in C:\xampp\htdocs\Entrepeneur\Admin\update.php on line 34 , sudah saya samakan dengan source code dari om nya , kira2 apa yang salah ya om>?

        • Rizaldi Maulidia Achmad

          coba kirim file skrip nya via fans page facebook om. biar bisa saya cek. pusing kalau lewat komentar blog

          • Arief eko

            gimana om udah di cek ? saya bingung om kenaoa masih gabisa tolong di bantu om

          • Rizaldi Maulidia Achmad

            sudah saya balas lewat fb. itu errornya ada di skrip yang baris ke 31. belum dikasih titik koma. harus lebih teliti om

      • Arief eko

        udah saya kirim om, lewat pesan ke fanspage mynotecode dengan script update.php, tolong di cek ya om salah nya dimana, makasih om

  23. fajrin Al Jami

    proses update foto nya gagal gan… script nya ada yang salah mungkin…

    • Rizaldi Maulidia Achmad

      error yang muncul apa om? saya coba berhasil soalnya tidak ada masalah. dan yang lain pun banyak yang komentar berhasil om

  24. Abdul Muchsin

    Barkah Insya Allah.. 🙂

    • Rizaldi Maulidia Achmad

      Amiin, terimakasih om 😀

  25. aulia rosiana

    kak, itu kan disimpan gambarnya di folder image , kalau foldernya ada di luar dari folder yg sama dengan script html php dll itu bagaimana penulisannya ya? 😊 misal folder scriptnya di folder A, tapi folder untuk simpan gambarnya ada di folder C nah folder C ini ada didalam folder B. bisa ga kira2? 😊

    • Rizaldi Maulidia Achmad

      Sangat bisa sekali mba. tinggal ubah saja settingan path tempat menyimpan gambarnya. lihat pada proses_simpan.php, ubah variabel $path jadi seperti ini :

      $path = “../B/C/”.$fotobaru;

      ubah juga variabel $path yang ada di proses_ubah.php sama persis seperti diatas

  26. KORIPPPP

    Sangat membantu gan BERHASIL

    • Rizaldi Maulidia Achmad

      Senang bisa membantu om 😀

  27. Dede Rahman

    Infonya bermanfaat bang terima kasih!!!!!

    • Rizaldi Maulidia Achmad

      Sama-sama om. Senang bisa membantu 😀

      • Dede Rahman

        bang tanya lagi hehe, kalau seandainya pas update foto yang baru tapi ga pake checkbox itu gimana?

        • Rizaldi Maulidia Achmad

          Bisa saja om tanpa menggunakan checkbox tersebut. Caranya kita gunakan empty(). Contoh:
          $namafile = $_FILES[‘foto’][‘name’];
          If(empty($namafile)){
          // tidak usah di update fotonya
          }else{
          // update fotonya
          }

          • Dede Rahman

            bisa bang mantap!! sukses terus

          • Rizaldi Maulidia Achmad

            Amiiiin. Terimakasih om 😀

  28. M Ridhwan

    bang mau nanya.

    kok setelah di upload gambarnya ngga ada yah ?
    (kaya ngga kebaca gitu).

    • Rizaldi Maulidia Achmad

      Kemungkinan besar proses upload gagal om. Coba periksa di folder images. Ada tidak gambar yang om sudah upload?
      Atau kalau gambarnya memang ada, periksa apakah nama file yang ada di tabel siswanya sama dengan nama file yang ada di folder images nya tidak.
      Lalu periksa juga url path dari atribut src di tag img nya om (

      • M Ridhwan

        $foto = $_FILES[‘foto’][‘name’];
        $tmp = $_FILES[‘foto’][‘tmp_name’];

        // Rename nama fotonya dengan menambahkan tanggal dan jam upload
        $fotobaru = date(‘dmYHis’).$foto;
        // Set path folder tempat menyimpan fotonya
        $path = “images/”.$fotobaru;

        bang ane masih belum paham maksud
        $foto = $_FILES[‘foto’][‘name’];
        $tmp = $_FILES[‘foto’][‘tmp_name’];

        maksud $foto sama[‘foto’] apa yah bang, sama $tmp.
        ane udah bikin folder images, sedangkan foto yang bakal ane upload nama filenya Sepatu bang.
        itu

        • Rizaldi Maulidia Achmad

          [‘foto’] itu nama dari atribut name pada tag input type=”file” nya om.
          $foto = $_FILES[‘foto’][‘name’]; untuk mengambil nama file yang diupload
          $tmp = $_FILES[‘foto’][‘tmp_name’]; kalau ini untuk mengambil destination path (setau saya itu om)

          nah di folder images nya, ada tidak gambar yang om upload?

          • M Ridhwan

            ada bang, cuma gambarnya ngga keluar.

          • Rizaldi Maulidia Achmad

            oke. sekarang periksa di databasenya. di tabel siswa. lihat kolom foto. benar ada tidak nama file yang di database dengan di folder images ?

          • Rizaldi Maulidia Achmad

            atau kirim kan saja om ke saya source code nya semua. saya coba periksa. nanti saya kasih tau apa saja kesalahannya. kirim lewat pesan di fans page facebook saja om (http://www.facebook.com/mynotescode)

          • M Ridhwan

            okay bang akan segera saya kirmkan.

          • Rizaldi Maulidia Achmad

            paling besok saya periksanya om. Mohon maaf sekali om. saya mau istirahat sekarang. besok pagi ada keperluan. mungkin siang saya periksa source codenya. nanti akan langsung saya kabarin om.
            Sekali lagi saya minta maaf om, besok saya kabarin. tapi kirim saja source code nya sekarang. jadi besok saya bisa langsung cek.

          • M Ridhwan

            iya bang, sebisa nya aja bang.
            makasih bang sebelumnya.

  29. Elan Ros Mirza

    maaf bang.. ko yang di bisa digunain cuma delete daong ya
    tolong dong penjelasanya hehe

    • Rizaldi Maulidia Achmad

      simpan sama editnya tidak jalan om?
      apakah ada error yang muncul?

  30. syamsukri

    mas kok ada yg eror mas,,kalau upload fotonya sudah berhasil tapi edit data nya tdk..selalu muncul pesan:
    Notice: Undefined index: foto in C:\xampp\htdocs\jasindo\admin\kbm_update.php on line 18

    Notice: Undefined index: foto in C:\xampp\htdocs\jasindo\admin\kbm_update.php on line 19
    Maaf, Gambar gagal untuk diupload.
    Kembali Ke Form

    ini proses ubag data saya mas:
    <?php
    include "../koneksi.php";
    $id_kbm = $_POST['id_kbm'];
    $no_polis = $_POST['no_polis'];
    $nama_tertanggung = $_POST['nama_tertanggung'];
    $alamat = $_POST['alamat'];
    $id_cabang = $_POST['id_cabang'];
    $obyek_pertanggungan = $_POST['obyek_pertanggungan'];
    $no_polisi = $_POST['no_polisi'];
    $tgl_mulai = $_POST['tgl_mulai'];
    $tgl_berakhir = $_POST['tgl_berakhir'];
    $telpon = $_POST['telpon'];

    // Cek apakah user ingin mengubah fotonya atau tidak
    if(isset($_POST['ubah_foto'])){ // Jika user menceklis checkbox yang ada di form ubah, lakukan :
    // Ambil data foto yang dipilih dari form
    $foto = $_FILES['foto']['name'];
    $tmp = $_FILES['foto']['tmp_name'];

    // Rename nama fotonya dengan menambahkan tanggal dan jam upload
    $fotobaru = date('dmYHis').$foto;

    // Set path folder tempat menyimpan fotonya
    $path = "fotokbm/".$fotobaru;

    // Proses upload
    if(move_uploaded_file($tmp, $path)){ // Cek apakah gambar berhasil diupload atau tidak
    // Query untuk menampilkan data siswa berdasarkan NIS yang dikirim
    $query = "SELECT * FROM tb_kbm WHERE id_kbm='".$id_kbm."'";
    $sql = mysqli_query($connect, $query); // Eksekusi/Jalankan query dari variabel $query
    $data = mysqli_fetch_array($sql); // Ambil data dari hasil eksekusi $sql

    // Cek apakah file foto sebelumnya ada di folder images
    if(is_file("fotokbm/".$data['foto'])) // Jika foto ada
    unlink("fotokbm/".$data['foto']); // Hapus file foto sebelumnya yang ada di folder images

    // Proses ubah data ke Database
    $sql=mysql_query("UPDATE tb_kbm SET no_polis = '$no_polis',nama_tertanggung = '$nama_tertanggung',alamat = '$alamat',id_cabang = '$id_cabang',obyek_pertanggungan = '$obyek_pertanggungan',no_polisi = '$no_polisi',tgl_mulai = '$tgl_mulai',tgl_berakhir = '$tgl_berakhir',telpon = '$telpon',foto = '$fotobaru' WHERE id_kbm = '$id_kbm'");// Eksekusi/ Jalankan query dari variabel $query

    if($sql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header("location: index.php?page=kbm"); // Redirect ke halaman index.php
    }else{
    // Jika Gagal, Lakukan :
    echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
    echo "Kembali Ke Form“;
    }
    }else{
    // Jika gambar gagal diupload, Lakukan :
    echo “Maaf, Gambar gagal untuk diupload.”;
    echo “Kembali Ke Form“;
    }
    }else{ // Jika user tidak menceklis checkbox yang ada di form ubah, lakukan :

    $sql=mysql_query(“UPDATE tb_kbm SET no_polis = ‘$no_polis’,nama_tertanggung = ‘$nama_tertanggung’,alamat = ‘$alamat’,id_cabang = ‘$id_cabang’,obyek_pertanggungan = ‘$obyek_pertanggungan’,no_polisi = ‘$no_polisi’,tgl_mulai = ‘$tgl_mulai’,tgl_berakhir = ‘$tgl_berakhir’,telpon = ‘$telpon’ WHERE id_kbm = ‘$id_kbm'”);
    header(‘location:index.php?page=kbm’);
    }
    ?>

    mohon bantuannya mas

    • syamsukri

      ini form upload saya untuk foto mas

      Foto

      Ceklis jika ingin mengubah foto

    • Rizaldi Maulidia Achmad

      Coba cek pada form nya. Pastikan nama input type file yg ada di form sama dengan (yg ada di dalam tanda kutip 1) pd skrip berikut : $_FILES[‘foto’]

      • syamsukri

        Makasi mas. Udah berhasil.. Oya mas kl misalkan sy mau mengambil data dari tabel lain kemudian menampilkan di form input untuk penambahan beberapa field kemudian saya simpan ke tabel yang lain. Gimna caranya yah mas?

        • Rizaldi Maulidia Achmad

          Sama-sama om 😀

          hmm, sama saja om. intinya om harus ngerti dulu bagaimana cara menampilkan data dari database. Kalau sudah mengerti, pada form tersebut om tampilkan data dari tabel A nya. kemudian arahkan form tersebut pada file php untuk memproses simpan ke tabel B.

  31. hermansyah

    boz ketika saya nambah data baru gk bisa ada notivikasi “Maaf, Gambar gagal untuk diupload.”mohon saranya

    • Rizaldi Maulidia Achmad

      Folder image untuk tempat nyimpan gambarnya sudah dibuat belum om? kemungkinan besar karena folder belum dibuat atau url path folder salah.
      Maaf baru bisa balas sekarang

  32. hermansyah

    bro kalo mau nanbah form upload file bagaimana

    • Rizaldi Maulidia Achmad

      sama saja dengan upload gambar om. tinggal ganti saja pada kode if untuk validasi file nya. sesuaikan dengan file yang akan di upload

  33. Candra Aji Pamungkas

    Gambar yang ditampilin kok retak ya gan, tapi sudah bisa kesimpen di databasenya

    • Rizaldi Maulidia Achmad

      Kemungkinan besar :
      1. Upload gambarnya gagal, coba cek pada folder image nya
      2. atribut src pada tag img nya salah path nya

  34. yusufricky

    Halo bro gan,,,mau nanya, kalo misalkan ane pgn modify, dengan ketentuan apabila :

    File gambar upload akan mereplace (baik folder patch penyimpanan image atau tabel db) APABILA ada gambar lain yang di input di Input form update data, tanpa menggunakan atau parameter checkbox itu bagaimana gan ? mohon bantuannya master, terima kasih

    • Rizaldi Maulidia Achmad

      Bisa saja om tanpa menggunakancheckbox tersebut. Caranya kita gunakan empty(). Contoh:
      $namafile = $_FILES[‘foto’][‘name’];
      If(empty($namafile)){
      // tidak usah di update fotonya
      }else{
      // update fotonya
      }

      • yusufricky

        Kalo dari contoh agan, diatasnya post tambahin if itukan ? atau bagaimana ya ? bagaimana memanggilnya ? maaf banyak nanya 😀

        • Rizaldi Maulidia Achmad

          Pada baris ke 15. ganti kode ini : if(isset($_POST[‘ubah_foto’])){
          menjadi :
          $f = $_FILES[‘foto’][‘name’];
          if( ! empty($f)){

          • yusufricky

            wah…mantap surantap master, terima kasih

            blh requet nga artikel ? CRUD dengan combo bertingkat wilayah dengan php mysqli.ahaha.. ngelunjak yak

          • Rizaldi Maulidia Achmad

            Sama-sama om 😀

            Nanti saya buatkan saja tutorial membuat combo box bertingkat nya saja yah haha. Cuman saya ga bisa janji cepat hehe

  35. syamsukri

    mas apa masalahnya nih:

    Notice: Undefined index: foto in C:\xampp\htdocs\jasindo\admin\kbm_save.php on line 16

    Notice: Undefined index: foto in C:\xampp\htdocs\jasindo\admin\kbm_save.php on line 17
    Maaf, Gambar gagal untuk diupload.
    Kembali Ke Form

    ini form simpan saya
    <?php
    // Load file koneksi.php
    include "../koneksi.php";

    // Ambil Data yang Dikirim dari Form
    $id_kbm = $_POST['id_kbm'];
    $no_polis = $_POST['no_polis'];
    $nama_tertanggung = $_POST['nama_tertanggung'];
    $alamat = $_POST['alamat'];
    $id_cabang = $_POST['id_cabang'];
    $obyek_pertanggungan = $_POST['obyek_pertanggungan'];
    $no_polisi = $_POST['no_polisi'];
    $tgl_mulai = $_POST['tgl_mulai'];
    $tgl_berakhir = $_POST['tgl_berakhir'];
    $telpon = $_POST['telpon'];
    $foto = $_FILES['foto']['name'];
    $tmp = $_FILES['foto']['tmp_name'];

    // Rename nama fotonya dengan menambahkan tanggal dan jam upload
    $fotobaru = date('dmYHis').$foto;

    // Set path folder tempat menyimpan fotonya
    $path = "fotokbm/".$fotobaru;

    // Proses upload
    if(move_uploaded_file($tmp, $path)){ // Cek apakah gambar berhasil diupload atau tidak
    // Proses simpan ke Database
    $query = "INSERT INTO tb_kbm VALUES('".$id_kbm."', '".$no_polis."', '".$nama_tertanggung."', '".$alamat."', '".$id_cabang."', '".$obyek_pertanggungan."', '".$no_polisi."', '".$tgl_mulai."', '".$tgl_berakhir."', '".$telpon."', '".$fotobaru."')";
    $sql = mysqli_query($connect, $query); // Eksekusi/ Jalankan query dari variabel $query

    if($sql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header("location: index.php?page=kbm"); // Redirect ke halaman index.php
    }else{
    // Jika Gagal, Lakukan :
    echo "Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
    echo "Kembali Ke Form“;
    }
    }else{
    // Jika gambar gagal diupload, Lakukan :
    echo “Maaf, Gambar gagal untuk diupload.”;
    echo “Kembali Ke Form“;
    }
    ?>

    • Rizaldi Maulidia Achmad

      Silahkan periksa ada form uploadnya. pastikan nama dari input type file nya ada lah foto. seperti ini : <input type="file" name="foto">.
      Lalu pastikan juga pada tag form nya. telah ditambahkan atribut : enctype=”multipart/form-data”

    • syamsukri

      makasih mas,tdk ada erro lagi cuma pada saat di simpan yg muncul pesan “maaf terjadi kesalahan saat menyimpan ke data base”
      kira -kira apanya mas?

  36. Meike Rachmayanti

    Min mau tanya, saya tiap upload foto, nama file udah kesimpen di database tapi di folder ga kesimpen, dan pas tampil fotonya kosong dan gambar retak gitu. Tapi pas saya simpen fotonya manual di folder tersebut, foto baru bisa muncul. kenapa ya ? $_FILES[‘image’] itu image udah sama sama input type yang di form, udah ada enctype=”multipart/form-data” juga

    • Rizaldi Maulidia Achmad

      Coba kirim kan skrip yg telah mba buat ke email kami : [email protected]
      Agar saya bisa cek apa kesalahannya

  37. Sonny471

    Mas klo mau buat print cetak gambar dari database gimana mas caranya?

    • Rizaldi Maulidia Achmad

      Konsep nya sama saja om. Tinggal tampilkan dulu gambar dari databasenya. Untuk melakukan print, gunakan javascript : window.print();

  38. saputra dwi

    ada 2 permasalahan yang saya temukan,
    1. jika nama gambarnya sama, kemudian dihapus. maka kedua2 nya akan terhapus. padahal namanya sama, foto berbeda.
    2. meskipun kita tidak mencentang ceklistnya, tetap saja kita harus mengupload ulang gambar tersebut

    • Rizaldi Maulidia Achmad

      Sebelumnya saya ucapkan terimakasih karena telah melaporkan bug yang ada.
      Untuk permasalahan yang pertama. sudah saya perbaiki om. pada proses simpan dan ubah nya saya tambahkan skrip untuk me-rename nama file fotonya dengan menambahkan tanggal dan jam upload. agar tidak ada nama file foto yang sama.
      Untuk permasalahan yang kedua. sudah saya tes dan cek tidak ada masalah om.

  39. Difahdilah

    ijin tanya kak? ini kenapa ya sy tiap kali insert data ke database selalu muncul “Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.” padahal sudah sama persis dgn punya kakak, hanya edit awalnya “nis” sy ganti dgn “ket”
    mohon petunjuk kak?
    terima kasih

    • Rizaldi Maulidia Achmad

      Coba periksa query insert nya mba

  40. yusufricky

    Gan mau nanya, kalo gambar yg di upload lebih dari satu gimana ya ?
    dari form itu, misal ada 3 gambar harus di upload gitu..saya mau belajar bikin list produk kek misal tokopedia gt. jadi user dapat melihat gambar gambar tadi (3 unit gambar tadi) gimana tuh ?

  41. Jese Nababan

    keren bang, makasih ya, izin download, ada tugas kuliah… hehehe

    • Rizaldi Maulidia Achmad

      Makasih om. Siap sama-sama om 😀

    • Rizaldi Maulidia Achmad

      Sama-sama om. Terimakasih telah berkunjung.

  42. WIzard youk

    Terimakasih gan,sangat bermanfaat tutorialnya.. 🙂

    • Rizaldi Maulidia Achmad

      Sama-sama gan 🙂

  43. dimas kanjeng

    maaf lur mau tanya klo kita uplot gambar terus filenya di rename di form gimana kodingnya lur, matur suwun lur

    • Rizaldi Maulidia Achmad

      Pada form uploadnya tinggal tambahkan sebuah textbox untuk mengisi nama file barunya. Berikur kodenya :

      <input type="text" name="nama_file_baru">

      Kemudian tambahkan skrip berikut pada file proses upload.php :
      $namafilebaru = $_POST[‘nama_file_baru’];

      Lalu ubah skrip ini :
      path = “images/”.$nama_file;

      Menjadi :
      path = “images/”.$nama_file_baru;

      Lalu ubah juga skrip berikut :
      $query = “INSERT INTO gambar(nama,ukuran,tipe) VALUES(‘”.$nama_file.”‘,'”.$ukuran_file.”‘,'”.$tipe_file.”‘)”;
      Menjadi :
      $query = “INSERT INTO gambar(nama,ukuran,tipe) VALUES(‘”.$nama_file_baru.”‘,'”.$ukuran_file.”‘,'”.$tipe_file.”‘)”;

      • dimas kanjeng

        klo nama original nya bisa di ambil ga gan kira-kira?
        jd nanti ada 2 nama. nama baru sama nama asli file

        • Rizaldi Maulidia Achmad

          Ya kalau nama yg asli tinggal ambil dari variabel $nama_file

          Tapi buat dulu field / kolom di tabel databsenya untuk menampung nama aslinya

  44. anggadeong

    ini kok ada pesan kayak gini padahal saya nyobain dulu copas semuanya

    Notice: Undefined index: jenis_kelamin in C:\xampp\htdocs\latihan_crud\proses_simpan.php on line 8

    Warning: move_uploaded_file(images/#Gerotora.jpg): failed to open stream: No such file or directory in C:\xampp\htdocs\latihan_crud\proses_simpan.php on line 18

    Warning: move_uploaded_file(): Unable to move ‘C:\xampp\tmp\php365A.tmp’ to ‘images/#Gerotora.jpg’ in C:\xampp\htdocs\latihan_crud\proses_simpan.php on line 18
    Maaf, Gambar gagal untuk diupload.
    Kembali Ke Form

    mohon bantunya saya masih dalam tahap belajar belum tahu letak kesalahanya

    • Rizaldi Maulidia Achmad

      1. Coba pastikan nama radio button di form harus jenis_kelamin
      2. Sudah buat folder images belum? Coba lihat STEP 1

  45. priambodo

    nanya satu lagi gan…itu kalo foto dihapus lari nya kemana ya ?kok ga masuk recycle bin? mohon penjelasannya ..

    • Rizaldi Maulidia Achmad

      Benar-benar dihapus om (HARD DELETE). Jad ga akan masuk ke resycle bin. Sama saja kalau kita hapus file dengan menekan CTRL + SHIFT + DELETE.

  46. priambodo

    ditambahinnya di bagiann mana ya gan ? saya masih newbie gan tolong bimbingannya…
    ohya sama fungsi enctype=”multipart/form-data” itu buat apa ya gan?

    • Rizaldi Maulidia Achmad

      Buka file proses_simpan.php. lalu tambahkan skrip yg tadi saya kasih pada baris ke 16 atau setelah skrip ini : $path = “images/”.$foto;

      enctype=”multipart/form-data” itu digunakan apabila kita ingin mengupload gambar/file. jadi wajib mencamtumkan atribut tersebut pada tag form nya

  47. priambodo

    gan tolong di tambahin di proses_simpan.php jadi kalo ada data yg ga diisi atau kosong ada peringatan “Data tidak boleh kosong” thanks gan..
    ditunggu..

    • Rizaldi Maulidia Achmad

      Tinggal di tambah pake if…else
      Sepertu ini:

      if(empty($nis) or empty($nama) or empty($jenis_kelamin) or empty($telp) or empty($foto)){
      echo "<script>alert('semua data harus diisi');window.location='form_simpan.php';</script>";
      }

      seperti itu.

  48. indra

    tes

    • Rizaldi Maulidia Achmad

      tested

  49. vextra

    mohon solusinya

    Notice: Undefined index: nama_file in D:xampphtdocsupload2proses_edit.php on line 15

    Notice: Undefined index: nama_file in D:xampphtdocsupload2proses_edit.php on line 16
    Maaf1, Gambar gagal untuk diupload. Kembali Ke Form

    <?php
    // Load file koneksi.php
    include "koneksi.php";

    // Ambil data id yang dikirim oleh edit.php melalui URL
    $id = $_GET['id'];

    // Ambil Data yang Dikirim dari Form
    $judul_gambar = $_POST['judul_gambar'];
    $sinopsis = $_POST['sinopsis'];

    // Cek apakah user ingin mengubah fotonya atau tidak
    if(isset($_POST['ubah_gambar'])){
    // Ambil data foto yang dipilih dari form
    $nama_file = $_FILES['nama_file']['name'];
    $tmp = $_FILES['nama_file']['tmp_name'];

    // Set path folder tempat menyimpan fotonya
    $path = "gambar/".$nama_file;

    // Proses upload
    if(move_uploaded_file($tmp, $path)){ // Cek apakah gambar berhasil diupload atau tidak
    // Query untuk menampilkan data tb_gambar berdasarkan id yang dikirim
    $query = "SELECT * FROM tb_gambar WHERE id='".$id."'";
    $sql = mysqli_query($connect, $query); // Eksekusi/Jalankan query dari variabel $query
    $data = mysqli_fetch_array($sql); // Ambil data dari hasil eksekusi $sql

    // Hapus file foto sebelumnya yang ada di folder images
    unlink("gambar/".$data['nama_file']);

    // Proses ubah data ke Database
    $query = "UPDATE tb_gambar SET judul_gambar='".$judul_gambar."', sinopsis='".$sinopsis."', nama_file='".$nama_file."' WHERE id='".$id."'";
    $sql = mysqli_query($connect, $query); // Eksekusi/ Jalankan query dari variabel $query

    if($sql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header("location: index.php"); // Redirect ke halaman index.php
    }else{
    // Jika Gagal, Lakukan :
    echo "Maaf01, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.";
    echo "
    Kembali Ke Form“;
    }
    }else{
    // Jika gambar gagal diupload, Lakukan :
    echo “Maaf1, Gambar gagal untuk diupload.”;
    echo ”
    Kembali Ke Form“;
    }
    }else{
    // Proses ubah data ke Database
    $query = “UPDATE tb_gambar SET judul_gambar='”.$judul_gambar.”‘, sinopsis='”.$sinopsis.”‘ WHERE id='”.$id.”‘”;
    $sql = mysqli_query($connect, $query); // Eksekusi/ Jalankan query dari variabel $query

    if($sql){ // Cek jika proses simpan ke database sukses atau tidak
    // Jika Sukses, Lakukan :
    header(“location: index.php”); // Redirect ke halaman index.php
    }else{
    // Jika Gagal, Lakukan :
    echo “Maaf2, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.”;
    echo ”
    Kembali Ke Form“;
    }
    }
    ?>

    • Rizaldi Maulidia

      Itu variabel $nama tidak ditemukan..coba copas skrip yg ada di file proses_edit.php ke pastebin.com om..

  50. vextra

    min bisa gk pas proses upload di kasih “peringatan gambar harus jpg/png” ???

      • vextra

        punya saya gagal tolong solusinya

        <?php
        $con=mysqli_connect("localhost","root","") or die("Gagal");
        mysqli_select_db("db_latihan") or die ("Gagal");

        $id = $_GET['id'];

        $judul_gambar = $_POST['judul_gambar'];
        $sinopsis = $_POST['sinopsis'];

        if (isset($_POST['ubah_gambar']))
        {

        $jenis_gambar = $_FILES['nama_file']['type'];
        $foto = $_FILES['nama_file']['name'];
        $tmp = $_FILES['nama_file']['tmp_name'];

        $path = "gambar/".$foto;

        if($jenis_gambar=="image/jpeg" || $jenis_gambar=="image/jpg" || $jenis_gambar=="image/png"){

        if (move_uploaded_file($tmp, $path)){

        $query = "SELECT * FROM tb_gambar WHERE id='".$id."'";
        $sql = mysqli_query($con, $query);
        $data = mysqli_fetch_array($sql);

        unlink("gambar/".$data['nama_file']);

        $query ="UPDATE tb_gambar SET judul_gambar ='".$judul_gambar."', nama_file ='".$foto."', sinopsis ='".$sinopsis."' where id ='".$id."'";
        $sql=mysqli_query($con,$query);

        if($sql){
        header("location: index.php");
        } else {
        echo "alert(‘Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.’);
        document.location.href=’edit.php’n”;
        }
        }else{
        echo “alert(‘Maaf, Gambar gagal untuk diupload.’);
        document.location.href=’edit.php’n”;
        }
        } else {
        echo “Jenis gambar yang anda kirim salah. Harus .jpg/png”;
        }
        }else{
        $query = “UPDATE tb_gambar SET judul_gambar ='”.$judul_gambar.”‘, sinopsis ='”.$sinopsis.”‘ where id ='”.$id.”‘”;
        $sql = mysqli_query($con, $query);

        if($sql){
        header(“location: index.php”);
        }else{
        echo “alert(‘Maaf, Terjadi kesalahan saat mencoba untuk menyimpan data ke database.’);
        document.location.href=’edit.php’n”;
        }
        }
        ?>

      • vextra

        Notice: Undefined variable: connect in D:xampphtdocsupload2proses_edit.php on line 53

        Warning: mysqli_query() expects parameter 1 to be mysqli, null given in D:xampphtdocsupload2proses_edit.php on line 53
        Maaf2, Terjadi kesalahan saat mencoba untuk menyimpan data ke database. Kembali Ke Form

        • Rizaldi Maulidia

          Ganti variabel $connect dengan $con. Sy liat di skrip om, om buat koneksi ke mysql nya ditampung di variabel $con.

          $con = mysqli_connect(“……

  51. putra dewa

    min minta tolong boleh??

      • putra dewa

        tolong betulkan script saya dibagian proses edit, punya saya agak bedan + maksa jadi ada erorrnya maklum masih pemula :v , bisa gak??? kalau bisa script nya saya kirim lewat gmail

  52. Muhammad Fedro

    Mantap mas. Sangat berguna

  53. pandi

    thank’s min, izin download y…

NOTE ARCHIVES