Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
query gabungan di controller laravel
saya ingin bertanya caranya untuk mengeksekusi dari data yang ada, langsung menjalankan 2 query yakni yg pertama insert ke tabel yg lain dgn kondisi fieldnya sama, yg kedua update salah satu atribut nya ke tabel tersebut.
bagaimana yah ? utk script di php OOP tanpa framework udah bisa dijalankan, tetapi utk laravel bingung nih.
* berikut script OOP tanpa framework *
public function validcekin($id)
{
$valid = new koneksi();
$sqlorder ="SELECT * FROM cekin WHERE id='{$id}' limit 1";
$data = $valid->get_koneksi()->query($sqlorder);
while($d = $data->fetch_array(MYSQLI_BOTH))
{
$dat["id"] = $d["id"];
$dat["noktp"] = $d["noktp"];
$dat["nama"] = $d['nama'];
$dat["alamat"] = $d['alamat'];
$dat["no_telpon"] = $d['no_telpon'];
$dat["room"] = $d['room'];
$dat["harga"] = $d['harga'];
$dat["total_room"] = $d['total_room'];
$dat["tgl_cekin"] = $d['tgl_cekin'];
$dat["tgl_cekout"] = $d['tgl_cekout'];
$dat["status"] = $d['status'];
}
$sqlup="UPDATE cekin SET status='Checkin' WHERE id='{$dat["id"]}'";
$valid->get_koneksi()->query($sqlup);
$date_in = date_create($dat['tgl_cekin']);
$date_out = date_create($dat['tgl_cekout']);
$tgl_cekin = date_format($date_in,'Y-m-d');
$tgl_cekout = date_format($date_out,'Y-m-d');
$sqlin = "INSERT INTO cekout (id,noktp,nama,alamat,no_telpon,room,harga,total_room,tgl_cekin,tgl_cekout,status) VALUES('{$dat['id']}','{$dat['noktp']}','{$dat['nama']}','{$dat['alamat']}','{$dat['no_telpon']}','{$dat['room']}','{$dat['harga']}','{$dat['total_room']}','{$tgl_cekin}','{$tgl_cekout}','Belum Chekout')";
// $id = $dat["id"];
// $noktp = $dat["noktp"];
// $sqlin = "INSERT INTO cekin (id,noktp) values('".$id."','".$noktp."')";
// echo $sqlin;
$cek = $valid->get_koneksi()->query($sqlin);
// if($cek){
// echo "sudah terinsert";
// }
if($cek){
echo "<script> alert('Data Berhasil Checkin !'); ;window.location='cekin.php';</script>;";
}
else
{
echo "<script>alert ('Data Gagal Checkin !'); window.location='pesenan.php';</script>";
}
}
3 Jawaban:
jika menggunakan model eloquent seperti ini:
<pre> $insert=model::create([ 'name'=>'budi', 'class'=>'1 sd', ]);
modelupdate::where('model_id',$insert->id)->update([ //update ]); </pre>
berarti itu hanya di model nya saja yah hee, kalo controller nya mh kurang lebih sama kan ?
Mungkin bisa menggunakan script ini kak, lebih simple
<pre> $model = new Model(); $model->nama = $request->input('nama'); $model->harga = $request->input('harga'); $model->status = $request->input('status'); $model->save();
$model->status = 'cekin'; $model->save();
</pre> $model->save() yang pertama berfungsi untuk menyimpan data baru, sedangkan yang kedua untuk update data yang baru disimpan.
Tanggapan
Selain new masih ada yg lain ga ya?