From 14e53f669d50eee0e09d4356fcd4b03a3733ae1e Mon Sep 17 00:00:00 2001 From: Syifa Date: Mon, 21 Jul 2025 08:51:23 +0700 Subject: [PATCH] Tambah SiswaController --- app/Http/Controllers/SiswaController.php | 76 ++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 app/Http/Controllers/SiswaController.php diff --git a/app/Http/Controllers/SiswaController.php b/app/Http/Controllers/SiswaController.php new file mode 100644 index 0000000..df7908b --- /dev/null +++ b/app/Http/Controllers/SiswaController.php @@ -0,0 +1,76 @@ +validate([ + 'nama' => 'required', + 'kelas' => 'required', + 'umur' => 'required|integer', + 'absen' => 'required|integer', + ]); + + $siswaBaru = [ + 'nama' => $request->nama, + 'kelas' => $request->kelas, + 'umur' => $request->umur, + 'absen' => $request->absen, + ]; + + $siswas = session('siswas', []); + $siswas[] = $siswaBaru; + session(['siswas' => $siswas]); + + return redirect()->route('siswa.index')->with('success', 'Data berhasil ditambahkan!'); + } + + public function edit($id) + { + $siswas = session('siswas', []); + if (!isset($siswas[$id])) return redirect()->route('siswa.index')->with('error', 'Data tidak ditemukan'); + $siswa = $siswas[$id]; + + return view('siswa.edit', compact('siswa', 'id')); + } + + public function update(Request $request, $id) + { + $request->validate([ + 'nama' => 'required|string|max:255', + 'kelas' => 'required|string|max:50', + 'umur' => 'required|integer', + 'absen' => 'required|integer', + ]); + + $siswas = session('siswas', []); + if (!isset($siswas[$id])) return redirect()->route('siswa.index')->with('error', 'Data tidak ditemukan'); + + $siswas[$id] = [ + 'nama' => $request->nama, + 'kelas' => $request->kelas, + 'umur' => $request->umur, + 'absen' => $request->absen, + ]; + session(['siswas' => $siswas]); + + return redirect()->route('siswa.index')->with('success', 'Data siswa berhasil diupdate!'); + } +}