Input data ke dalam tabel yang memiliki foreign key di dalamnya

Permisi, mau tanya dong, saya mau bikin aplikasi berbasis web menggunakan html dan php dan mysql sbg basis data nya. jadi ada dua tabel.

tabel pertama namanya user isinya id_user(pk), username, password, nama, alamat, notelp, email. Lalu tabel kedua namanya rekening isinya id_rek(pk), id_user(fk), no_rek, nama_rek.

Untuk primary key dari kedua tabel (id_user dan id_rek) saya menggunakan auto increment. Saya ingin menginputkan data ke dalam tabel rekening lalu menampilkannya. Kodingannya seperti apa yah jika menginputkan ke dalam tabel yang memiliki foreign key? Terimakasih, mohon bantuannya.

Berikut source code kodeakun.php untuk menampilkan form nya


<html>
<?php
include 'koneksi.php';
session_start();
$usr = $_SESSION['username'];
$e = mysqli_query($koneksi, "select * from user where username='$usr'");
// hitung hasil dan cek ada atau tidaknya data
$is_exist = mysqli_num_rows($e);
if($is_exist>0){
// keluarkan hasil
$r = mysqli_fetch_assoc($e);
$_SESSION['id_user'] = $r['id_user'];
$_SESSION['username_user'] = $r['username'];

}else{
die('username atau password tidak ditemukan');
}
?>
<form action="input-aksi.php" method="post">
<div class="panel-body">
<div class="input-group"> <span class="input-group-addon">Nomor Akun</span> <i><input class="form-control" placeholder="contoh : 101" type="text" name="no_rek"></i></div>
									<br>
<div class="input-group">
<span class="input-group-addon">Nama Akun</span><i><input class="form-control" placeholder="contoh : KAS" type="text" name="nama_rek"></i></div>
									<br>
<button type="submit" class="btn btn-info" name="simpan">Simpan</button>
</div></form>
</html>

Berikut source code input-proses.php


<?php
include 'koneksi.php';
// menyimpan data kedalam variabel
session_start();
$usr = $_SESSION['username'];

$no_rek           = $_POST['no_rek'];
$nama_rek         = $_POST['nama_rek'];

// query SQL untuk insert data
$a="select id_user from user where username='$usr'";
$b="INSERT INTO rekening SET id_rek='',id_user='$id_user',no_rek='$no_rek',nama_rek='$nama_rek'";

mysqli_query($koneksi,$a,$b);

header("location:index.php")
?>

avatar Windasalsa
@Windasalsa

4 Kontribusi 0 Poin

Diperbarui 5 tahun yang lalu

Tanggapan

coba lampirkan code yang udah kamu buat, kodingannya seperti apa ya itu tergantung si programmer nya mau seperti apa..

Sudah saya cantumkan kak code nya

4 Jawaban:

saya asumsikan kamu sdh berhasil menampilkan data user. lalu kamu oper id user ke dalam tabel rekening. <pre> //memasukkan data ke tabel rekening $sql= mysqli_query($conn,'INSERT INTO tbl_rekening('$id_user','$no_rek', '$nama_rek'); //menampilkan data di tabel rekening $query = mysqli_query($conn, 'SELECT u.nama, r.* FROM rekening r INNER JOIN user u ON u.id_user = r.id_user'); </pre>

avatar bosque
@bosque

187 Kontribusi 104 Poin

Dipost 5 tahun yang lalu

Tanggapan

Untuk menampilkan data nya masih belom bisa kak. Code nya saya cantumkan diatas

Kamu salah di query insertnya, harusnya insert into namaTable(fields) values(data) dan pastikan juga id user yg mau di masukkan hrs ada

Untuk menampilkan data nya masih belum bisa kak. Source code nya saya cantumkan diatas

avatar Windasalsa
@Windasalsa

4 Kontribusi 0 Poin

Dipost 5 tahun yang lalu

sialahkan sesuaikan dengan kebutuhan. semoga bisa membantu

<pre> &lt;form action="input-aksi.php" method="post"&gt; &lt;div class="panel-body"&gt; &lt;div class="input-group"&gt;&lt;span class="input-group-addon"&gt;Nomor Akun&lt;/span&gt; &lt;i&gt; &lt;input class="form-control" placeholder="contoh : 101" type="text" name="no_rek"&gt;&lt;/i&gt; &lt;/div&gt; &lt;br&gt; &lt;div class="form-group"&gt; &lt;label&gt;Nama Akun&lt;/label&gt; &lt;select id="kd_desa" class="form-control" name="id_user"&gt; &lt;?php $sql = mysqli_query($koneksi,"SELECT * FROM user"); while ($result = mysqli_fetch_array($sql)) { ?&gt; &lt;option value="&lt;?php echo $result['id_user'] ?&gt;"&gt;&lt;?php echo $result['nama'] ?&gt;&lt;/option&gt; &lt;?php } ?&gt; &lt;/select&gt; &lt;/div&gt; &lt;br&gt; &lt;button type="submit" class="btn btn-info" name="simpan"&gt;Simpan&lt;/button&gt; &lt;/div&gt; &lt;/form&gt; </pre>

proses input

<pre> &lt;?php include 'koneksi.php';

$no_rek = $_POST['no_rek']; $id_user = $_POST['id_user'];

$sql = mysqli_query($koneksi, "INSERT INTO rekening (id_rek,id_user,no_rek) VALUES ('$id_rek','$id_rek','$no_rek')"); header("location:index.php") ?&gt; </pre>

menampilkan

<pre> &lt;?php include 'koneksi.php'; $id_rek = isset($_POST['id_rek']) ? $_POST['id_rek'] : ''; $tampil = mysqli_query($koneksi, "SELECT id_rek,no_rek,id_user,nama FROM user JOIN rekening USING (id_user)"); while ($ambil = mysqli_fetch_array($tampil)) { echo $ambil['id_rek']; echo $ambil['no_rek']; echo $ambil['nama']; } ?&gt; </pre>

avatar irya
@irya

59 Kontribusi 13 Poin

Dipost 5 tahun yang lalu

Tanggapan

Kak maaf ntuk nama akun itu maksud saya bukan nama user, tapi nama_rek. Akun yang dimaksud adalah nama akun dalam akuntansi

<pre> &lt;form action="input-aksi.php" method="post"&gt; &lt;div class="panel-body"&gt; &lt;div class="form-group"&gt; &lt;?php if ($_SESSION['username']) { $username = isset($_GET['username']) ? $_GET['username'] : ''; $user = mysqli_query($conn,"SELECT * FROM user WHERE username='$_SESSION[username]'"); while ($nama = mysqli_fetch_array($user)) { ?&gt; &lt;input type="hidden" name="id_user" class="form-control" value="&lt;?php echo $nama['id_user'] ?&gt;"&gt; &lt;?php } } ?&gt; &lt;/div&gt; &lt;div class="input-group"&gt;&lt;span class="input-group-addon"&gt;Nomor Akun&lt;/span&gt; &lt;i&gt; &lt;input class="form-control" placeholder="contoh : 101" type="text" name="no_rek"&gt;&lt;/i&gt; &lt;/div&gt; &lt;br&gt; &lt;div class="form-group"&gt; &lt;div class="input-group"&gt; &lt;span class="input-group-addon"&gt;Nama Akun&lt;/span&gt;&lt;i&gt; &lt;input type="text" class="form-control" placeholder="contoh : KAS" type="text" name="nama_rek"&gt;&lt;/i&gt; &lt;/div&gt; &lt;/div&gt; &lt;br&gt; &lt;button type="submit" class="btn btn-info" name="simpan"&gt;Simpan&lt;/button&gt; &lt;/div&gt; &lt;/form&gt; </pre>

dibagian proses inputnya ditambahin aja nama_rek nya (id_rek,id_user,no_rek,nama_rek) VALUES .....

avatar irya
@irya

59 Kontribusi 13 Poin

Dipost 5 tahun yang lalu

Tanggapan

Proses inputnya tidak perlu ditambahin session yah?

Login untuk ikut Jawaban