mengabungkan tabel gambar dengan tabel produk

saya ingin membuat website e-commerce yang dimana ketika membuka sebuah produk terdapat 3 gambar dan deskripsi berserta harga dari si produknya.pada kasus ini yang saya bingungkan adalah pada database.

contoh jadinya seperti ini:

apakah hanya dengan ini saja caranya? ini database saya

apa ada cara lain?yang dimana hanya membutuhkan 1 colom saja bernama gambar ?dan querynya seperti apa ya untuk memanggil ke 2 tabel itu

avatar farisdewantoro
@farisdewantoro

119 Kontribusi 16 Poin

Diperbarui 6 tahun yang lalu

3 Jawaban:

Untuk tabelnya sndiri sya rasa udah cukup dan benar,tpi mungkin antara tabel produk & gambar kalau diliat dari fieldnya, mungkin lebih baik jika disatukan ke dalam satu tabel saja (tbl_produk) biar ngk pake relasi lagi, soalnya tbl_produk & tbl_gambar cenderung menggambarkan satu item yg sama.... (menurut saya :v hehe)

Untuk alurnya sendiri mungkin mas bisa gunakan seperti ini jika menggunakan tabel sperti yg mas buat : 1. tampilkan deskripsi produk dan gambar utama dari produk (bagian header dari produk nya) 2. tampilkan gambar pelengkap dari produknya (3 gambar di bagian bawah produk)

contoh kode :


<?php
  $no_produk = $_GET['id']; //Misalnya no_produk diambil dgn method _GET

  //Mengambil data header produk

  //query disesuakan sama kebutuhan
  $query_header = mysqli_query($koneksi,"SELECT a.nama_produk,a.harga_produk,a.deskripsi_produk,b.gambar1
                                FROM tbl_produk a
                                LEFT JOIN tbl_gambar b ON a.no_produk=b.no_produk
                                WHERE a.no_produk='$no_produk'
                               ");
  //$koneksi disesuaikan dgn koneksi yang anda buat

  //hasil query dalam bentuk array
  $result_header = mysqli_fetch_assoc($query_header);

  //masukkan kedalam variabel
  $nm_produk = $result_header['nama_produk'];
  $hrg_produk = $result_header['harga_produk'];
  $desk_produk = $result_header['deskripsi_produk'];
  $gbr_produk = $result_header['gambar1'];

  //silahkan di tampilkan data headernya sesuai kebutuhan


  //mengambil gambar pelengkap dari produk
  $query_gambar = mysqli_query($koneksi,"SELECT gambar2,gambar3,gambar4
                                         FROM tbl_gambar
                                         WHERE no_produk='$no_produk'
                                        ");
  $result_gambar = mysqli_fetch_assoc($query_gambar);


  //buat perulangan menampilkan gambar2,gambar3,gambar4
  for($i=2; $i <=4 ; $i++) {
    //sesuaikan dengan kebutuhan
    $nm_field = 'gambar'.$i;
    echo '<img src="image/'.$result_gambar[$nm_field].'">';
  }

  //atau bisa tanpa perulangan
  echo '<img src="image/'.$result_gambar['gambar2'].'">';
  echo '<img src="image/'.$result_gambar['gambar3'].'">';
  echo '<img src="image/'.$result_gambar['gambar4'].'">';

  //opsional tergantung dari mas nya mau pake cara yg mana

?>

#CMIIW

avatar AlifNur
@AlifNur

164 Kontribusi 72 Poin

Dipost 6 tahun yang lalu

coba belajar tentang join gan bisa check di sini https://www.w3schools.com/sql/sql_join.asp

avatar sukmaw
@sukmaw

340 Kontribusi 75 Poin

Dipost 6 tahun yang lalu

sebenernya yang saya bingungkan disini apa bila saya ingin membuat 2 buah tabel contoh: tabel produk dan tabel gambar. nahh pada tabel produk berisi seperti gambar diatas..dan tabel gambar hanya memiliki 1 field yaitu gambar jadi gambar dari tiap produk tidak di batas jumlah gambarnya. nahh yang jadi permasalahannya adalah ketika pemanggilan semua tabel produk berserta gambar yang kita masukan jadi tiap produk gambanrya bisa berbeda-beda sesuai dengan berapa gambar yang kita upload untuk 1 produk

avatar farisdewantoro
@farisdewantoro

119 Kontribusi 16 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban