Upload Foto di Framework Laravel

Untuk memenuhi tugas Framework Programming berupa memperbaiki source code yang masih error dalam upload gambar di laravel. Beberapa hal yang di perbaiki yaitu :


1. Kesalahan pertama pada file KaryawanRequest, yaitu pada inputan nip yang bertipe numeric tidak bisa menggunakan “size” maka diperbaiki dengan diganti menggunakan “digits“. Tipe size biasa digunakan untuk format string, sedangkan untuk numeric digunakan tipe digits.

Ubah coding menjadi seperti di bawah

2. Kesalahan kedua pada file KaryawanRequest, yaitu pada

Tambahkan "," sesudah nip sehingga menjadi seperti di bawah

Source code KaryawanRequest.php

3. Pada file form.blade.php terdapat error yaitu pada

Ubah coding menjadi seperti di bawah


4. Pada file form.blade.php, tambahkan form deleted agar bisa memunculkan data pada tabel dengan settingan default “0“.

Source code form.blade.php

5. Di file Karyawan.php, tambahkan “deleted” agar dapat inputan dapat tersimpan ke database.


6. Pada file KaryawanController.php

ubah coding form merah menjadi seperti dibawah.yang fungsinya untuk memisahkan nama file dan format file


7. Pada file KaryawanController.php tepatnya pada function destroy,tambahkan sourcode seperti di bawah ini.

yang berfungsi agar file yang dihapus sehingga tidak terhapus secara permanen. Untuk lebih jelasnya bisa dilihat pada source code KaryawanController.php

8. Pada file edit.blade.php , ubah source code berikut.

menjadi seperti di bawah ini

Digunakan supaya fungsi controller update dapat memperbarui dan memunculkan file yang baru diedit. Untuk lebih jelasnya bisa dilihat pada source code edit.blade.php

9. Pada file karyawan.blade.php, ditambahkan source code seperti di bawah.

berfungsi untuk memunculkan foto pada list karyawan. Untuk lebih jelasnya bisa dilihat pada source code karyawan.blade.php

10. Tambahkan source code berikut pada file show.blade.php

untuk memunculkan foto pada detail karyawan. Untuk lebih jelasnya bisa dilihat pada source code show.blade.php

11. Pada file filesystems.php , tambahkan source code berikut :

Untuk mengatur penyimpanan foto yang diupload yaitu pada direktori fotoupload. Agar lebih jelasnya bisa dilihat pada source code filesystems.php

Hasil :
Form Input, List dan Detail data karyawan
       

Form Input, List dan Detail data karyawan setelah edit
 
                                    



Membuat CRUD (Create Read Update Delete) dengan php

Seperti judulnya yaitu Membuat Aplikasi CRUD (Create, Read, Update, Delete) Sederhana dengan PHP dan MySQL. Jadi nanti kita akan membuat Aplikasi sederhanya bagaimana cara Create/insert data ke database, Read/Select/Menampilkan data dari database, Update/edit data dari database, dan Delete/hapus data dari database dengan menggunakan bahasa pemrograman PHP dan database MySQL.
Tutorial ini saya buat sangat mudah agar Anda yang pemula bisa mempelajarinya dengan mudah. Karena ini hanya basicnya saja, jadi tidak ada yang namanya kemanan dalam query ke database, saya buat sangat sederhana agar mudah dipelajari dengan mudah. Berikut tampilanya.

1. Form Read 

2. Form Create


3. Form Update


4. Form Delete 

Berikut source codenya dengan klik download

semoga bermanfaat untuk anda semua, Terimakasih


CRUD OOP menggunakan PHP

Hallo teman teman apa kabar ? mudah mudahan selalu diiberikkan kesehatan ya.  Kali ini saya akan memberkan tutorial membuat crud dengan php dan menggunakan database mysql

Tutorial ini saya buat sangat mudah agar Anda yang pemula bisa mempelajarinya dengan mudah. Karena ini hanya basicnya saja, jadi tidak ada yang namanya kemanan dalam query ke database, saya bua sangat sederhana agar mudah dipelajari dengan mudah.

Oke, sebelumnya file-file yang akan kita buat adalah seperti tambah pada gambar di bawah ini:

Nah, sudah tau kan file apa saja yang nantinya kita buat.

Step #1 Database
Tahap pertama adalah membuat database dahulu di phpMyAdmin, saya umpamakan Anda sudah membuat sebuah database dengan nama tutorialweb.
Jika database sudah dibuat, sekarang Dumping script SQL di bawah ini:

CREATE TABLE `mahasiswa` (
  `id` int(11) NOT NULL,
  `nim` varchar(20) NOT NULL,
  `nama` varchar(30) NOT NULL,
  `tempat_lahir` varchar(30) NOT NULL,
  `tanggal_lahir` date NOT NULL,
  `jenis_kelamin` enum('Laki-laki','Perempuan') NOT NULL,
  `agama` enum('Islam','Kristen','Katholik','Hindu','Budha','Konghuchu') NOT NULL,
  `alamat` varchar(100) NOT NULL,
  `no_telepon` varchar(12) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;


Step #2 Koneksi ke Database
Tahap selanjutnya adalah melakukan koneksi ke database, file untuk koneksi ke database adalah library.php.
Silahkan buat file baru dan beri nama library.php kemudian isi dari file ini seperti di bawah ini:

<?php
                class Library{
                                public function __construct(){
                                                $this->db = new PDO('mysql:host=localhost;dbname=crud_oop','root','');
                                }
                                public function tambahMhs($nim, $nama, $tempat_lahir, $tanggal_lahir, $jenis_kelamin, $agama, $alamat, $no_telepon){
                                                $sql = "INSERT INTO mahasiswa (nim, nama, tempat_lahir, tanggal_lahir, jenis_kelamin, agama, alamat, no_telepon) VALUES('$nim', '$nama', '$tempat_lahir', '$tanggal_lahir', '$jenis_kelamin', '$agama', '$alamat', '$no_telepon')";
                                                $query = $this->db->query($sql);
                                                if(!$query){
                                                                return "Failed";
                                                }
                                                else{
                                                                return "Success";
                                                }
                                }
                                public function editMhs($id){
                                                $sql = "SELECT * FROM mahasiswa where id='$id'";
                                                $query = $this->db->query($sql);
                                                return $query;
                                }
                                public function updateMhs($nim, $nama, $tempat_lahir, $tanggal_lahir, $jenis_kelamin, $agama, $alamat, $no_telepon){
                                                $sql = "UPDATE mahasiswa SET nim='$nim', nama='$nama', tempat_lahir='$tempat_lahir', tanggal_lahir='$tanggal_lahir', jenis_kelamin='$jenis_kelamin', agama='$agama', alamat='$alamat', no_telepon='$no_telepon' WHERE nim='$nim'";
                                                $query = $this->db->query($sql);
                                                if(!$query){
                                                                return "Failed";
                                                }
                                                else{
                                                                return "Success";
                                                }
                                }
                                                 
                                public function showmahasiswa(){
                                                $sql = "SELECT * FROM mahasiswa order by id desc";
                                                $query = $this->db->query($sql);
                                                return $query;
                                }
                                public function deleteMhs($id){
                                                $sql = "DELETE FROM mahasiswa WHERE id='$id'";
                                                $query = $this->db->query($sql);
                                                if(!$query){
                                                                return "Failed";
                                                }
                                                else{
                                                                return "Success";
                                                }
                                }
                }
?>

Step #3 Memasukkan Data (Create/Insert)
Tahap ke empat adalah meng-insertkan data ke database dengan perintah INSERT INTO.
Pertama tertu saja kita buat Form utuk memasukkan datanya.
Form ini akan kita simpan dalam file index.php dengan script seperti di bawah ini:

<!DOCTYPE html>
<html lang="en">
                <head>
                                <meta charset="UTF-8">
                                <title>CRUD PDO</title>
                                <!-- Latest compiled and minified CSS -->
                                <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
                                <!-- Latest compiled and minified JavaScript -->
                                <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
                </head>

                <body>
                                <div class="container">
                                                <h2>Tambah Mahasiswa Baru</h2>
                                                <form action="index.php" method="POST" class="form-group row">
                                                                NIM : <input type="text" name="nim" required="required" class="form-control" placeholder="Masukan NIM anda"><br/>
                                                                Nama : <input type="text" name="nama" required="required" class="form-control" placeholder="Masukan Nama Anda"><br/>
                                                                Tempat Lahir : <input type="text" name="tempat_lahir" class="form-control" placeholder="Masukan Tempat Lahir Anda"><br/>
                                                                Tanggal Lahir : <input type="text" name="tanggal_lahir" class="form-control" placeholder="Masukan Tanggal Lahhir Anda. Dengan format YYYY-MM-DD, contoh : 1945-08-17"><br/>
                                                                Jenis Kelamin : <select name="jenis_kelamin" class="form-control">
                                                                                                                                                <option value="">--Pilih Jenis Kelamin--</option>
                                                                                                                                                <option value="Laki-laki">Laki-laki</option>
                                                                                                                                                <option value="Perempuan">Perempuan</option>
                                                                                                                                </select> <br />
                                                                                                                               
                                                                Agama :                                <select name="agama" class="form-control">
                                                                                                                                                <option value="">--Pilih Agama Anda--</option>
                                                                                                                                                <option value="Islam">Islam</option>
                                                                                                                                                <option value="Kristen">Kristen</option>
                                                                                                                                                <option value="Katolik">Katolik</option>
                                                                                                                                                <option value="Hindu">Hindu</option>
                                                                                                                                                <option value="Budha">Budha</option>
                                                                                                                                                <option value="Konghuchu">Konghuchu</option>
                                                                                                                                                <option value="Lainnya">Lainnya</option>
                                                                                                                                </select> <br />
                                                                No. Telepon : <input type="text" name="no_telepon" class="form-control" placeholder="Masukan No. Telepon Anda"><br/>
                                                                Alamat : <textarea name="alamat" class="form-control" placeholder="Masukan Alamat Lengkap Anda"></textarea><br/>
                                                                <input type="submit" name="tambahMhs" value="Tambah" class="btn btn-success">
                                                                <input type="reset" value="Batal" class="btn btn-warning">
                                                </form>
                                </div>
                </body>
</html>
<?php
                require('library.php');
                if(isset($_POST['tambahMhs'])){
                                $nim = $_POST['nim'];
                                $nama = $_POST['nama'];
                                $tempat_lahir=$_POST['tempat_lahir'];
                                $tanggal_lahir=$_POST['tanggal_lahir'];
                                $jenis_kelamin=$_POST['jenis_kelamin'];
                                $agama=$_POST['agama'];
                                $alamat=$_POST['alamat'];
                                $no_telepon=$_POST['no_telepon'];

                                $Lib = new Library();
                                $add = $Lib->tambahMhs($nim, $nama, $tempat_lahir, $tanggal_lahir, $jenis_kelamin, $agama, $alamat, $no_telepon);
                                if($add == "Success"){
                                                header('Location: List.php');
                                }
                }

?>

Step #4 Menampilkan Data (READ/SELECT)
Tahap ketiga adalah menampilkan data dari database atau jika dalam singkatan CRUD maka kali ini adalah R -> Read.
Untuk menampilkan data, kita akan membuat file dengan nama index.php. Dan isi dari file index.php adalah script di bawah ini:

<!DOCTYPE html>
<html lang="en">
                <head>
                                <meta charset="UTF-8">
                                <title>List Mahasiswa</title>
                                <!-- Latest compiled and minified CSS -->
                                <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
                                <!-- Latest compiled and minified JavaScript -->
                                <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
                </head>

                <body>
                                <div class="container">
                                                <h2>Daftar Nama Mahasiswa</h2>
                                                <table class="table">
                                                                <tr>
                                                                                <td>NIM</td>
                                                                                <td>Nama</td>
                                                                                <td>Jenis Kelamin</td>
                                                                                <td>Alamat</td>
                                                                                <td>Edit</td>
                                                                                <td>Delete</td>
                                                                </tr>
                                                                <?php
                                                                require("library.php");
                                                                $Lib = new Library();
                                                                $show = $Lib->showmahasiswa();
                                                                while($data = $show->fetch(PDO::FETCH_OBJ)){
                                                                echo "
                                                                <tr>
                                                                                <td>$data->nim</td>
                                                                                <td>$data->nama</td>
                                                                                <td>$data->jenis_kelamin</td>
                                                                                <td>$data->alamat</td>
                                                                                <td><a class='btn btn-info' href='edit.php?id=$data->id'>Edit</td>
                                                                                <td><a class='btn btn-danger' href='list.php?deleteMhs=$data->id'>Delete</a></td>
                                                                </tr>";
                                                                };
                                                                ?>
                                                </table>
                                                <a href="index.php" class="btn btn-success">Tambah Mahasiswa Baru</a>
                                </div>
                </body>
</html>

<?php
if(isset($_GET['deleteMhs'])){
$del = $Lib->deleteMhs($_GET['deleteMhs']);
if($del == "Success"){
                                                header('Location: List.php');
                                }
}
?>

Step #5 Update Data (Update/Edit)
Tahap ini adalah untuk melakukan edit data pada database. File yang akan kita buat adalah file edit.php.
Link untuk menuju halaman edit adalah pada file index.php dimana disana pada tabel kolom Opsi ada Link edit dan hapus.
Berikut source codenya :

<?php
require('library.php');

if(isset($_GET['id'])){
$Lib = new Library();
$id = $Lib->editMhs($_GET['id']);
$edit = $id->fetch(PDO::FETCH_OBJ);
echo '
                <!DOCTYPE html>
                <html lang="en">
                <head>
                                <meta charset="UTF-8">
                                <title>Edit Data Mahasiswa</title>
                                <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
                                <!-- Latest compiled and minified JavaScript -->
                                <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
                </head>
                <body>
                                <div class="container">
                                                <h2>Ubah Data Mahasiswa</h2>
                                                <form action="edit.php" method="POST" class="form-group row">
                                                                NIM : <input type="text" name="nim" value="'.$edit->nim.'" required class="form-control"><br>
                                                                Nama : <input type="text" name="nama" value="'.$edit->nama.'" required class="form-control"><br>
                                                                Tempat Lahir : <input type="text" name="tempat_lahir" value="'.$edit->tempat_lahir.'" required class="form-control"><br/>
                                                                Tanggal Lahir : <input type="text" name="tanggal_lahir" value="'.$edit->tanggal_lahir.'" required class="form-control"><br/>
                                                                Jenis Kelamin : <input type="text" name="jenis_kelamin" value="'.$edit->jenis_kelamin.'" required class="form-control"><br/>
                                                                Agama : <input type="text" name="agama" value="'.$edit->agama.'" required class="form-control"><br/>
                                                                No. Telepon : <input type="text" name="no_telepon" value="'.$edit->no_telepon.'" required class="form-control"><br/>
                                                                Alamat : <textarea name="alamat" class="form-control">'.$edit->alamat.'</textarea><br/>
                                                                <input type="submit" name="updateMhs" value="Update" class="btn btn-info">
                                                                <input type="reset" value="Batal" class="btn btn-warning">
                                                </form>
                                </div>
                </body>
                </html>
                ';
}

                if(isset($_POST['updateMhs'])){
                                $nim = $_POST['nim'];
                                $nama = $_POST['nama'];
                                $tempat_lahir=$_POST['tempat_lahir'];
                                $tanggal_lahir=$_POST['tanggal_lahir'];
                                $jenis_kelamin=$_POST['jenis_kelamin'];
                                $agama=$_POST['agama'];
                                $alamat=$_POST['alamat'];
                                $no_telepon=$_POST['no_telepon'];

                                $Lib = new Library();
                                $upd = $Lib->updateMhs($nim, $nama, $tempat_lahir, $tanggal_lahir, $jenis_kelamin, $agama, $alamat, $no_telepon);
                                if($upd == "Success"){
                                                header('Location: List.php');
                                }
                }
?>

Catatan : kesalahan terdapat pada soruce code library.php pada bagian function editmhs, disana pertama tercantum SELECT * FROM mahasiswa , source code sql itu hanya untuk menampilkan tabel mahasiswa secara keseluruhan, kemudian yang benar adalah SELECT * FROM mahasiswa where  id='$id' , kode sql itu untuk menyeleksi tabel dengan catatan id yang dipilih, atau hanya dengan id tertentu yang tampil. mengapa seperti ini karena untuk menampilkan data ke form tentu harus sesuai id yang dipilih.

ksesalahan kedua terdapat pada list.php pada bagian class button untuk edit, awalnya tercantum seperti ini <td><a class='btn btn-info' href='edit.php?nim=$data->id'>Edit</td>pada kode tersebut yang diseleksi adalah nim sedangkan yang diperlukan adalah id, maka kodenya yang benar adalah seperti ini <td><a class='btn btn-info' href='edit.php?id=$data->id'>Edit</td>

Berikut Source codenya, klik Download