0% found this document useful (0 votes)
16 views7 pages

Update Dan Delete CI4

The document outlines a web application for managing an inventory of goods using PHP and CodeIgniter. It includes views for displaying, adding, and editing items, as well as a controller that handles the logic for these operations. The application utilizes Bootstrap for styling, jQuery for interactivity, and DataTables for enhanced table functionality.

Uploaded by

samgiga168
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views7 pages

Update Dan Delete CI4

The document outlines a web application for managing an inventory of goods using PHP and CodeIgniter. It includes views for displaying, adding, and editing items, as well as a controller that handles the logic for these operations. The application utilizes Bootstrap for styling, jQuery for interactivity, and DataTables for enhanced table functionality.

Uploaded by

samgiga168
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Views/header_view.

php
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<!-- Link ke Bootstrap CSS -->
<link rel="stylesheet" href="<?= base_url('css/[Link]') ?>">

<!-- Bootstrap -->


<link href="<?= base_url('css/[Link]" rel="stylesheet') ?>">
<link href="<?= base_url('css/[Link]') ?>" rel="stylesheet">
<script src="<?= base_url('js/[Link]') ?>"></script>

<!-- Jquery -->


<script type="<?= base_url('text/javascript" src="js/[Link]') ?>"></script>

<!-- Font Awesome -->


<link rel="stylesheet" href="<?= base_url('fontawesome/css/[Link]') ?>">

<!-- Data Tables -->


<link href="<?php echo base_url('datatables/[Link]') ?>" type="text/css" rel="stylesheet">
<script type="text/javascript" src="<?php echo base_url('datatables/[Link]') ?>"></script>

<!-- DataTables CSS -->


<link rel="stylesheet" href="[Link]

<!-- Sweet alert 2 -->


<script src="[Link]

<!-- DataTables CSS -->


<link rel="stylesheet" href="[Link]
<!-- jQuery -->
<script src="[Link]
<!-- DataTables JS -->
<script src="[Link]

</head>

<body>
<nav class="navbar navbar-expand-sm navbar-dark bg-info">
<div class="container">
<a href="<?= base_url(); ?>" class="navbar-brand">Data Barang Inventory</a>
<button class="navbar-toggle d-lg-none" type="button" data-toggle="collapse" data-target="#collapsibleNavId"
aria-controls="collapsibleNavId" aria-expanded="false" aria-label="Toggle navigation">

</button>
</div>
</nav>

Views/barang_view.php
<div class="container pt-5">
<a href="<?= base_url('barang/new'); ?>" class="btn btn-success mb-2">Tambah Data</a>
<div class="card">
<div class="card-header bg-info text-white">
<h4 class="card-title text-center">Tabel data inventory</h4>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-bordered table-striped" id="barangTable">
<thead>
<tr>
<th>No.</th>
<th>Nama Barang</th>
<th>Qty</th>
<th>Merek barang</th>
<th>Type</th>
<th>harga</th>
<th>Aksi</th>
</tr>
</thead>
<tbody>
<?php $no = 1;
foreach ($getBarang as $isi) { ?>
<tr>
<td><?= $no; ?></td>
<td><?= $isi['nama_barang']; ?></td>
<td><?= $isi['qty']; ?></td>
<td><?= $isi['merk']; ?></td>
<td><?= $isi['type']; ?></td>
<td>Rp <?= number_format($isi['harga']); ?> </td>
<td>
<a href="<?= base_url('barang/edit/' . $isi['id_barang']); ?>"
class="btn btn-success">
Edit</a>
<a href="<?= base_url('barang/remove/' . $isi['id_barang']); ?>"
onclick="javascript:return confirm('Apakah ingin menghapus data barang ?')"
class="btn btn-danger">
Hapus</a>
</td>
</tr>
<?php $no++;
} ?>
</tbody>
</table>
</div>
</div>
</div>
</div>

<script>
$(document).ready(function() {
$('#barangTable').DataTable();
});
</script>

Views/footer_view.php
<!-- Link ke Bootstrap JS -->
<script src="<?= base_url('js/[Link]') ?>"></script>
<!-- Link javascript untuk Jquery -->
<script src="<?= base_url('js/[Link]') ?>"></script>
</body>
</html>

Views/tambah_view.php
<div class="containter p-5">
<a href="<?php echo base_url('barang') ?>" class="btn btn-secondary mb-2">Kembali</a>
<div class="card">
<div class="card-header bg-info text-white">
<div class="card-title text-center">Tambah Data Barang</div>
<div class="card-body">
<form action="<?php echo base_url('barang/create') ?>" method="post">
<div class="form-group">
<label for="">Nama Barang</label>
<input type="text" name="nama" class="form-control" id="" required>
</div>
<div class="form-group">
<label for="">Quantity</label>
<input type="text" name="qty" class="form-control" id="" required>
</div>
<div class="form-group">
<label for="">Merek Barang</label>
<input type="text" name="merk" class="form-control" id="" required>
</div>
<div class="form-group">
<label for="">Tipe barang</label>
<input type="text" name="type" class="form-control" id="" required>
</div>
<div class="form-group">
<label for="">Harga</label>
<input type="number" name="harga" class="form-control" id="" required>
</div>
<br>
<button class="btn btn-success">Tambah Data</button>
</form>

</div>
</div>
</div>
</div>

Views/edit_view.php
<div class="containter p-5">
<a href="<?php echo base_url('barang') ?>" class="btn btn-secondary mb-2">Kembali</a>
<div class="card">
<div class="card-header bg-info text-white">
<div class="card-title text-center">Edit Data Barang</div>
<div class="card-body">
<form action="<?= base_url('barang/update/' . $barang['id_barang']) ?>" method="post">
<?= csrf_field() ?>
<input type="hidden" name="id_barang" value="<?= $barang['id_barang'] ?>">
<div class="form-group">
<label for="">Nama Barang</label>
<input type="text" name="nama" value="<?= $barang['nama_barang'] ?>" class="form-control" id=""
required>
</div>
<div class="form-group">
<label for="">Quantity</label>
<input type="number" name="qty" value="<?= $barang['qty'] ?>" class="form-control" id="" required>
</div>
<div class="form-group">
<label for="">Merek Barang</label>
<input type="text" name="merk" value="<?= $barang['merk'] ?>" class="form-control" id="" required>
</div>
<div class="form-group">
<label for="">Tipe barang</label>
<input type="text" name="type" value="<?= $barang['type'] ?>" class="form-control" id="" required>
</div>
<div class="form-group">
<label for="">Harga</label>
<input type="number" name="harga" value="<?= $barang['harga'] ?>" class="form-control" id="" required>
</div>
<br>
<button class="btn btn-success">Edit Data</button>
</form>

</div>
</div>
</div>
</div>

Contollers/[Link]
<?php
namespace App\Controllers;
use CodeIgniter\Controller;
use App\Models\Barang_model;

use Codeigniter\RESTfull\ResourcePresenter;

class Barang extends BaseController{


public function index(){
$model = new Barang_model;
$data['title'] = 'Data Barang';
$data['getBarang'] = $model->getBarang();
echo view('header_view', $data);
echo view('barang_view', $data);
echo view('footer_view', $data);
}

public function new(){


$data['title'] = 'Tambah Data Barang';
echo view('header_view', $data);
echo view('tambah_view', $data);
echo view('footer_view', $data);
}

public function create(){


$model = new Barang_model;
$data = array(
'nama_barang' => $this->request->getPost('nama'),
'qty' => $this->request->getPost('qty'),
'merk' => $this->request->getPost('merk'),
'type' => $this->request->getPost('type'),
'harga' => $this->request->getPost('harga')
);
$model->saveBarang($data);
// Notifikasi bawaan bisa memakai alertifyJS
echo '<script>
alert("Sukses Tambah Data Barang");
[Link]="'.base_url('barang').'";
</script>';
// echo '<script>
// [Link]({
// icon: "success",
// title: "Sukses Tambah Data Barang",
// text: "Data barang telah berhasil ditambahkan.",
// showConfirmButton: false,
// timer: 1500
// }).then(function() {
// [Link] = "' . base_url('barang') . '";
// });
// </script>';
}

// public function edit($id=null){


// $model = new Barang_model;
// $getBarang = $model->getBarang($id)->getRow();
// if(isset($getBarang)){
// $data['barang'] = $getBarang;
// $data['title'] = 'Edit'.$getBarang->nama_barang;

// echo view('header_view',$data);
// echo view('edit_view',$data);
// echo view('footer_view',$data);

// }else {
// echo '
// <script>
// alert("")ID barang'.$id.' Tidak ditemukan;
// [Link]="'.base_url('barang').'"
// </script>';
// }
// }

public function edit($id=null){


$model = new Barang_model;
$getBarang = $model->getBarang($id); // Hasilnya array
// $getBarang = $model->getBarang($id)->getRow(); // getRow() digunakan untuk mengambil 1 baris
if(isset($getBarang)){
$data['barang'] = $getBarang;
$data['title'] = 'Edit '.$getBarang['nama_barang'];

echo view('header_view',$data);
echo view('edit_view',$data);
echo view('footer_view',$data);

}else {
echo '
<script>
alert("")ID barang'.$id.' Tidak ditemukan;
[Link]="'.base_url('barang').'"
</script>';
}
}

// public function update($id=null)


// {
// $model = new Barang_model;
// $id = $this->request->getPost('id_barang');
// $data = array(
// 'nama_barang' => $this->request->getPost('nama'),
// 'qty' => $this->request->getPost('qty'),
// 'merk' => $this->request->getPost('merk'),
// 'type' => $this->request->getPost('type'),
// 'harga' => $this->request->getPost('harga')
// );
// $model->editBarang($data,$id);
// echo '<script>
// alert("Sukses Edit Data Barang");
// [Link]="'.base_url('barang').'"
// </script>';
// }

// Versi 4.1.3
public function update($id = null)
{
$model = new Barang_model();

// Validasi input dari form


$validation = \Config\Services::validation();
$validation->setRules([
'nama' => 'required|string|max_length[100]',
'qty' => 'required|integer',
'merk' => 'required|string|max_length[50]',
'type' => 'required|string|max_length[50]',
'harga' => 'required|numeric',
]);

// Jika validasi gagal


if (!$validation->withRequest($this->request)->run()) {
return redirect()->back()->with('errors', $validation->getErrors())->withInput();
}

// Ambil data input dari form


$data = [
'nama_barang' => $this->request->getPost('nama'),
'qty' => $this->request->getPost('qty'),
'merk' => $this->request->getPost('merk'),
'type' => $this->request->getPost('type'),
'harga' => $this->request->getPost('harga'),
];

// Update data di database


$update = $model->editBarang($data, $id);

if ($update) {
// Berhasil update
return redirect()->to(base_url('barang'))->with('message', 'Data berhasil diperbarui');
} else {
// Gagal update
return redirect()->back()->with('error', 'Gagal memperbarui data');
}
}

// Versi 4.1.3
// public function remove($id=null)
// {
// $model = new Barang_model;
// $getBarang = $model->getBarang($id);
// if(isset($getBarang))
// {
// $model->hapusBarang($id);
// echo '<script>
// alert("Hapus Data Barang Sukses");
// [Link]="'.base_url('barang').'"
// </script>';
// }else{
// echo '<script>
// alert("Hapus Gagal !, ID barang '.$id.' Tidak ditemukan");
// [Link]="'.base_url('barang').'"
// </script>';
// }
// }

public function hapus($id = null) {


$model = new Barang_model();

// Pastikan ID valid
if (is_numeric($id)) {
$delete = $model->deleteBarang($id);

if ($delete) {
return redirect()->to(base_url('barang'))->with('message', 'Data berhasil dihapus');
} else {
return redirect()->to(base_url('barang'))->with('error', 'Gagal menghapus data');
}
} else {
return redirect()->to(base_url('barang'))->with('error', 'ID tidak valid');
}
}

You might also like