hipzi

CRUD CI Mahasiswa Controller

Jun 9th, 2021
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.32 KB | None | 0 0
  1. <?php
  2.  
  3. namespace App\Controllers;
  4.  
  5. use App\Controllers\BaseController;
  6. use App\Models\MahasiswaModel;
  7.  
  8. class MahasiswaController extends BaseController
  9. {
  10.     protected $mahasiswa;
  11.  
  12.     function __construct()
  13.     {
  14.         $this->mahasiswa = new MahasiswaModel();
  15.     }
  16.  
  17.     public function index()
  18.     {
  19.         $data['mahasiswa'] = $this->mahasiswa->findAll();
  20.         return view('mahasiswa/index', $data);
  21.     }
  22.  
  23.     public function create()
  24.     {
  25.         return view('mahasiswa/create');
  26.     }
  27.  
  28.     public function store()
  29.     {
  30.         if (!$this->validate([
  31.             'nrp' => [
  32.                 'rules' => 'required',
  33.                 'errors' => [
  34.                     'required' => '{field} Harus diisi'
  35.                 ]
  36.             ],
  37.             'nama' => [
  38.                 'rules' => 'required',
  39.                 'errors' => [
  40.                     'required' => '{field} Harus diisi'
  41.                 ]
  42.             ],
  43.             'no_telp' => [
  44.                 'rules' => 'required',
  45.                 'errors' => [
  46.                     'required' => '{field} Harus diisi'
  47.                 ]
  48.             ],
  49.             'alamat' => [
  50.                 'rules' => 'required',
  51.                 'errors' => [
  52.                     'required' => '{field} Harus diisi'
  53.                 ]
  54.             ],
  55.             'jurusan' => [
  56.                 'rules' => 'required',
  57.                 'errors' => [
  58.                     'required' => '{field} Harus diisi'
  59.                 ]
  60.             ],
  61.         ])) {
  62.             session()->setFlashdata('error', $this->validator->listErrors());
  63.             return redirect()->back()->withInput();
  64.         }
  65.  
  66.         $this->mahasiswa->insert([
  67.             'nrp' => $this->request->getVar('nrp'),
  68.             'nama' => $this->request->getVar('nama'),
  69.             'no_telp' => $this->request->getVar('no_telp'),
  70.             'alamat' => $this->request->getVar('alamat'),
  71.             'jurusan' => $this->request->getVar('jurusan')
  72.         ]);
  73.         session()->setFlashdata('message', 'Tambah Data Mahasiswa Berhasil');
  74.         return redirect()->to('/mahasiswa');
  75.     }
  76.  
  77.     function edit($id)
  78.     {
  79.         $dataMahasiswa = $this->mahasiswa->find($id);
  80.         if (empty($dataMahasiswa)) {
  81.             throw new \CodeIgniter\Exceptions\PageNotFoundException('Data Mahasiswa Tidak ditemukan !');
  82.         }
  83.         $data['mahasiswa'] = $dataMahasiswa;
  84.         return view('mahasiswa/edit', $data);
  85.     }
  86.  
  87.     public function update($id)
  88.     {
  89.         if (!$this->validate([
  90.             'nrp' => [
  91.                 'rules' => 'required',
  92.                 'errors' => [
  93.                     'required' => '{field} Harus diisi'
  94.                 ]
  95.             ],
  96.             'nama' => [
  97.                 'rules' => 'required',
  98.                 'errors' => [
  99.                     'required' => '{field} Harus diisi'
  100.                 ]
  101.             ],
  102.             'no_telp' => [
  103.                 'rules' => 'required',
  104.                 'errors' => [
  105.                     'required' => '{field} Harus diisi'
  106.                 ]
  107.             ],
  108.             'alamat' => [
  109.                 'rules' => 'required',
  110.                 'errors' => [
  111.                     'required' => '{field} Harus diisi'
  112.                 ]
  113.             ],
  114.             'jurusan' => [
  115.                 'rules' => 'required',
  116.                 'errors' => [
  117.                     'required' => '{field} Harus diisi'
  118.                 ]
  119.             ],
  120.         ])) {
  121.             session()->setFlashdata('error', $this->validator->listErrors());
  122.             return redirect()->back();
  123.         }
  124.         $this->mahasiswa->update($id, [
  125.             'nrp' => $this->request->getVar('nrp'),
  126.             'nama' => $this->request->getVar('nama'),
  127.             'no_telp' => $this->request->getVar('no_telp'),
  128.             'alamat' => $this->request->getVar('alamat'),
  129.             'jurusan' => $this->request->getVar('jurusan')
  130.         ]);
  131.         session()->setFlashdata('message', 'Update Data Mahasiswa Berhasil');
  132.         return redirect()->to('/mahasiswa');
  133.     }
  134.  
  135.     function delete($id)
  136.     {
  137.         $dataMahasiswa = $this->mahasiswa->find($id);
  138.         if (empty($dataMahasiswa)) {
  139.             throw new \CodeIgniter\Exceptions\PageNotFoundException('Data Mahasiswa Tidak ditemukan !');
  140.         }
  141.         $this->mahasiswa->delete($id);
  142.         session()->setFlashdata('message', 'Delete Data Mahasiswa Berhasil');
  143.         return redirect()->to('/mahasiswa');
  144.     }
  145. }
Advertisement
Add Comment
Please, Sign In to add comment