Postingan lainnya
JOIN DENGAN MYSQL
Hallo teman-teman, saya mau tanya mengenai join mysql, saya dsni memakai left join.. saya ada buat uraian tugas utk pegawai, saya sudah registrasi 3 user, user A dan B. nah ketika user A menambahkan uraian tugas nya, user B ikut terisi juga, padahal user B ini belum mengisi uraian tugasnya.
struktur table
image.png
di database nya cuma 1 yg muncul
image.png
image.png
unit_laundry
<?php
$ambildata = "select * from tb_pegawai LEFT JOIN tb_laundry on tb_pegawai.id = tb_pegawai.id";
$sql = mysqli_query($conn, $ambildata) or die (mysqli_eror($conn));
while($data=mysqli_fetch_array($sql)){
$tanggal = $data['tanggal'];
$jam = $data['jam'];
$uraian_tugas = $data['uraian_tugas'];
$waktu = $data['waktu'];
$jumlah_capaian = $data['jumlah_capaian'];
$waktu_efektivitas = $data['waktu_efektivitas'];
?>
function
if(isset($_POST['addlaundry'])){
$tanggal = $_POST['tanggal'];
$uraian_tugas = $_POST['uraian_tugas'];
$jam = $_POST['jam'];
$waktu = $_POST['waktu'];
$jumlah_capaian = $_POST['jumlah_capaian'];
$waktu_efektivitas = $_POST['waktu_efektivitas'];
$hitung = $_POST['waktu'] * $_POST['jumlah_capaian'] / 375;
$total = $hitung;
$addtable = mysqli_query($conn,"insert into tb_laundry (tanggal,jam,uraian_tugas, waktu, jumlah_capaian, waktu_efektivitas,total)
values ('$tanggal','$jam','$uraian_tugas','$waktu','$jumlah_capaian','$waktu_efektivitas','$total')");
if($addtotable) {
header('location:unit_laundry.php');
} else {
echo 'Gagal';
header('location:index.php');
}
}
connection
<?php
$host = 'localhost';
$user = 'root';
$pass = '';
$dbname = 'db_hospital';
$conn = mysql_connect($host,$user,$pass) or die(mysql_error());
$dbselect = mysql_select_db($dbname);
Tanggapan
Sematkan juga schema tabel yang berleasi supaya orang lain yang ngebaca paham relasi antar tabel yang sudah kamu buat
Dan kondisi tabel yang berelasi yang ada saat ini biar kami mudah untuk memahami masalah yang kamu hadapi dengan hasil yang diinginkan
udah di edit tu bg struktur tablenya
Yang ada masalah di tb_pegawai mau join dengan tb_laundry apa dengan tb_cssd dan tb_gizi?
Isi tabel pegawai ada 2 atau 3 dan isi tabel laundry ada 1 terus pas mau ditampilkan malah ada dua baris betul?
data pegawai dihubungankan ke unit masing2 bang sesuai departmentnya
3 Jawaban:
<div>Hapus LEFT pada Join, Arti LEFT pada JOIN adalah menampilkan data pada tabel kiri baik berlelasi dengan tabel yang ada di sebelah kanan atau pun tidak.</div>
Jawaban Terpilih
<div>mungkin left join bisa diganti jadi right join jadi jika pegawai nya ga punya uraian tugas gaakan ditampilin.<br><br>trus sepertinya ada kesalahan di query pada syntax "ON", </div><pre>on tb_pegawai.id = tb_pegawai.id</pre><div><br>ini akan selalu menghasilkan true karena yg dibandingkan adalah sesuatu yg sama, seharusnya adalah</div><pre>ON tabel_a.id = tabel_b.tabel_a_id</pre>
Tanggapan
trimakasih bg masukannya.. di coba dulu ya bgg
bg untuk uraian tugas nya sudah bisa muncul 1 user 1 uraian tugas nya, nah sekarang yg jadi masalah nama pegawai nya bg ga muncul hehe
NAMA PEGAWAI TANGGAL JAM URAIAN TUGAS WAKTU JUMLAH KEGIATAN WAKTU EFEKTIVITAS (hitungan permenit) TOTAL AKSI
Kalo pakai inner join, yg muncul hanya di databasenya aja bg
<pre><?php $ambildata = mysqli_query($conn,"select * from tb_pegawai RIGHT JOIN tb_gizi on tb_pegawai.id = tb_gizi.id"); //untuk conn pilih nama pegawai if(isset($_GET['cek'])){ $ambildata = mysqli_query($conn, "SELECT * from tb_pegawai where nama_lengkap LIKE '%". $_GET ['cek']."%'"); } while($data=mysqli_fetch_array($ambildata)){ $nama_lengkap = $data['nama_lengkap']; $tanggal = $data['tanggal']; $jam = $data['jam']; $uraian_tugas = $data['uraian_tugas']; $waktu = $data['waktu']; $jumlah_capaian = $data['jumlah_capaian']; $waktu_efektivitas = $data['waktu_efektivitas']; $total = $data['total']; ?></pre><div><br><figure data-trix-attachment="{"contentType":"image/png","filename":"image.png","filesize":16982,"height":169,"url":"https://i.ibb.co/ccdhC0g/image.png","width":1546}" data-trix-content-type="image/png" data-trix-attributes="{"presentation":"gallery"}" class="attachment attachment--preview attachment--png"><img src="https://i.ibb.co/ccdhC0g/image.png" width="1546" height="169"><figcaption class="attachment__caption"><span class="attachment__name">image.png</span></figcaption></figure><br>@zidanesc<br><br><br><br></div>
Tanggapan
field id di tb_gizi itu id buat siapa ya?
buat relasi table nya bg.. jd join nya itu berdasarkan id yg di tb_pegawai bg
kalo di ketik manual id nya di tb_gizi. bisa masuk bg nama pegawai nya.. @zidanesc
jd gini bg, saya mau ambil nama.lengkap dr tb_pegawai dan tb_gizi utk uraian tugas nya, nah saya mau menggabungkan kedua itu agar bisa mnjdi laporan bg..