Membuat CRUD Laravel Part I. Pada tulisan sebelumnya saya telah membahas beberapa hal. Setelah anda membaca tentang apa itu Laravel, cara membuat

Ukuran: px
Mulai penontonan dengan halaman:

Download "Membuat CRUD Laravel Part I. Pada tulisan sebelumnya saya telah membahas beberapa hal. Setelah anda membaca tentang apa itu Laravel, cara membuat"

Transkripsi

1

2 Membuat CRUD Laravel Part I Pada tulisan sebelumnya saya telah membahas beberapa hal sebagai berikut: Laravel : A Framework for web Artisans Membuat Hello World di Laravel. Cara menggunakan migration pada Laravel Cara melakukan seeding pada Laravel Setelah anda membaca tentang apa itu Laravel, cara membuat Hello World, migration dan seeding, Kali ini, kita akan membahas mengenai cara membuat aplikasi CRUD sederhana dengan menggunakan Laravel. Artikel kali ini dibuat sesederhana yang saya bisa, sehingga mudah dipelajari oleh pemula sekalipun. Twitter Bootstrap Untuk membuat user interface, kita akan menggunakan bantuan Twitter Bootstrap. Untuk itu, silahkan unduh terlebih dahulu disini. Kemudian extract hasil unduhan anda. Setelah di-extract akan menemukan tiga folder didalamnya yaitu folder css, fonts dan js. Copy ketiga folder tersebut ke dalam direktori `public`-nya Laravel.

3 Bootstrap di dalam direktori publik laravel Setelah Twitter Bootstrap anda pindahkan ke direktori public, berarti sudah siap untuk digunakan pada aplikasi Laravel yang akan kita buat. Oleh karena itu, marilah kita lupakan sejenak mengenai Twitter Bootstrap ini dan memulai langkah selanjutnya. Database Tabel Sekarang, marilah kita membuat sebuah tabel baru untuk menampung data yang akan kita gunakan dalam tutorial kali ini. Misalnya, tabel tersebut akan menampung data-data buku yang akan dijual. Dengan menggunakan command-line, jalankan perintah php artisan migrate:make create_books_table. Maka, secara otomatis akan tercipta sebuah file baru pada direktori app/database/migrations. Buat definisi tabel sebagai berikut pada file migrasi tersebut:

4 // // <?php use Illuminate\Database\Migrations\Migration; class CreateBooksTable extends Migration { public function up() { Schema::create('books', function($table){ $table->increments('id'); $table->string('title')->unique(); $table->string('author'); $table->string('description'); $table->string('price'); $table->timestamps(); }); } public function down() { Schema::drop('books'); }

5 }?> Lalu jalankan perintah php artisan migrate melalui commandline. Maka secara otomatis akan tercipta sebuah tabel baru bernama `books`, anda bisa melihatnya melalui phpmyadmin. CRUD CRUD merupakan singkatan dari Create, Read, Update dan Delete. Untuk itu mari kita bahas satu persatu mulai dari Create (memasukan data ke dalam database). Create Untuk memasukan data ke dalam database kita akan menggunakan sebuah form. Pertama-tama, buat sebuah file baru pada direktori app/views/ dengan nama layout.blade.php. Kemudian, pada file tersebut, buat layout HTML sebagai berikut: <!DOCTYPE html> <html lang='en'> <head> <meta charset='utf-8' /> <title>crud App</title>

6 <meta name='viewport' content='width=device-width, initialscale=1, maximum-scale=1' /> {{ HTML::style('css/bootstrap.min.css') }} </head>; {{ HTML::script('js/jquery.min.js') }} {{ HTML::script('js/bootstrap.js') }} </body> </html> Perhatikan bahwa Laravel menggunakan Blade sebagai templating engine. Apabila anda masih belum mengerti tentang Blade, tidak masalah. Blade adalah sesuatu yang mudah, anda akan mengerti setelah menyelesaikan tutorial ini. Selanjutnya, masih pada folder app/views, buat sebuah file baru bernama newbook.blade.php:

7 Hello, Semua form akan ditempatkan File inilah yang nantinya akan digunakan untuk menampilkan form yang akan kita buat pada browser. Pada file tersebut anda tidak perlu menulis lagi tag `html`, `title`, `body` karena sudah diextends dari file layout.blade.php dengan Semua yang akan ditampilkan di browser bisa anda simpan Selanjutnya, tambahkan definisi form pada <div class='container'>

8 <h3>insert new book</h3> {{ Form::open()}} {{Form::label('title', 'Title') }} {{Form::text('title', '', array('class' => 'form-control'))}} {{Form::label('author', 'Author') }} {{Form::text('author', '', array('class' => 'form-control'))}} {{Form::label('description', 'Description') }} {{Form::textarea('description', '', array('class' => 'form-control'))}} {{Form::label('price', 'Price') }} {{Form::text('price', '', array('class' => 'form-control'))}} {{Form::submit('Submit', array('class' => 'btn btn-primary')) }} {{ Form::close() }}

9 Lalu, buat sebuah route pada file app/routes.php : Route::get('newbook', function() { return View::make('newbook'); }); Akses route tersebut melalui browser, maka akan tampil form seperti berikut ini:

10 Memasukan data ke database Selanjutnya, mari kita buat Model dan Controller untuk memasukan data diinputkan ke dalam database. Buat sebuah file dengan nama Book.php pada direktori app/models: <?php class Book extends Eloquent { }?> Harus diperhatikan bahwa nama class perlu disesuaikan dengan nama tabel yang digunakan, karena pada contoh kali ini kita menggunakan tabel bernama books, maka nama class yang dibuat haruslah Book. Seperti halnya pada Model User, karena nama tabelnya users. Sebenarnya, anda juga bisa menentukan nama

11 Model sesuka hati. Namun, caranya tidak akan dibahas pada tulisan ini. Mungkin lain kali akan saya bahas. Ok, setelah Model anda buat, selanjutnya mari kita buat controller. Pada direktori app/controllers buatlah sebuah file baru dengan nama BookController.php : <?php class BookController extends BaseController { }?> Setelah itu, buat fungsi untuk memasukan data buku baru ke dalam database: <?php class BookController extends BaseController { public function store(){

12 $book = new Book; $book->title $book->author = Input::get('title');; = Input::get('author');; $book->description = Input::get('description');; $book->price = Input::get('price');; $book->save(); } }?> Bagian Terakhir Ok, setelah Model dan Controller dibuat, langkah selanjutnya yang harus dilakukan adalah membuat route baru yang mengarah kepada fungsi yang kita buat di dalam Controller. Buka routes.php, tambahkan route sebagai berikut:

13 Route::post('book/insert', Kemudian pada file app/views/newbook.blade.php ubah {{ Form::open() }} menjadi {{ Form::open(array('action' => }}. Dimana disesuaikan dengan nama Controller dan Action yang kita tuju. Selesai. Anda sekarang bisa mencobanya dengan memasukan data pada form kemudian tekan tombol submit. Lalu, cek di database apakah data yang diinputkan sudah masuk. Konklusi Diatas kita telah membahas mengenai membuat Create menggunakan Laravel. Yaitu dengan cara membuat Model, Kemudian membuat View yang bisa mengirim data melalui form, data pada form tersebut kemudian dikirim ke controller untuk disimpan ke dalam database dengan menggunakan Class Model yang telah dibuat. Selanjutnya, pada Part 2 kita akan membahas mengenai cara menampilkan data (Read). Membuat CRUD Sederhana pada Laravel : Part 2

14 Sebelumnya kita telah membahas cara memasukan data ke dalam database dengan menggunakan Laravel (Create). Kali ini kita akan membahas tentang cara menampilkan data dari database. Ada tiga tahapan yang akan dilakukan yaitu: Membuat route. Mengirim data ke view. Membuat looping. Pertama-tama marilah kita membuat sebuahâ routeâ baru sebagai berikut: Route::get('booklist', function(){ }); Setelah itu, kita akan mengambil semua data dari tabel books yang telah kita buat sebelumnya. Ingat, untuk mengakses tabel books kita akan menggunakan Model bernama Book. Untuk melakukannya tambahkan Book::all() pada route yang telah kita buat: Route::get('booklist', function(){

15 $books = Book::all(); }); Setelah itu, kita akan memanggil sebuah view sekaligus mengirim variable $books ke view tersebut. Route::get('booklist', function(){ $books = Book::all(); return View::make('listbook')->with('booksdata', $books); }); Jika, anda mengakses route tersebut, bisa dipastikan sebuah pesan error akan muncul. Itu karena view bernama listbook masih belum kita buat. Oleh karena itu, mari kita buat view tersebut. Buat sebuah file baru bernama listbook.blade.php  Sebagai berikut:

16 <!-- data akan ditampilkan disini Pada route, kita telah mengirimkan sebuah variable bernama booksdata yang bisa diakses melalui view. Variable tersebut bersisi semua data dari tabel books yang bisa kita tampilkan dengan bantuan <section class="container"> <table class="table"> <tr> <th>title</th> <th>author</th> <th>description</th> <th>price</th>

17 as $book) <tr> <td>{{ $book->title }}</td> <td>{{ $book->author }}</td> <td>{{ $book->description }}</td> <td>{{ $book->price }}</td> </table> Jika anda perhatikan pada code diatas, kita menggunakan {{ $book->title }} untuk judul buku, {{ $book->author }} untuk pengarang dsb. Syntax yang digunakan yaitu blade, dimana {{ $book->title }} bisa disamakan dengan <?php echo $book->title;?>. Sekarang, anda bisa buka route booklist melalui browser, maka semua data yang berada pada table books akan ditampilkan dalam bentuk table. Cara akses route tersebut misal:

18 Atau jika anda menggunakan domain localhost : Kita telah membahas mengenai Create dan Read. Pada bagian selanjutnya, kita akan membahas mengenai Update. Bersambung Membuat CRUD sederhana pada Laravel : Part 3 Pada Tulisan sebelumnya kita telah membahas tentang Create dan Read. Sekarang, mari kita melangkah ke tahap selanjutnya, yaitu Update. Pertama-tama, kita akan menampilkan link edit pada tabel yang telah kita buat sebelumnya ketika menampilkan data. Ubah fileâ listbook.blade.php menjadi sebagai

19 @section('content') <section class="container"> <table class="table"> <tr> <th>title</th> <th>author</th> <th>description</th> <th>price</th> <th>#</th> as $book) <tr> <td>{{ $book->title }}</td> <td>{{ $book->author }}</td> <td>{{ $book->description }}</td> <td>{{ $book->price }}</td> <td>{{ 'edit', array($book- >id))}}</td> </table>

20 Pada kode diatas, kita menambahkan link_to_action yang merupakan helper untuk membuat HTML link. Dimana, link tersebut akan mengarah ke method edit pada controller bernama BookController. Jika anda jalankan di browser (dengan membuka route booklist), maka akan muncul error sebagai berikut: ErrorException Route not defined. (View: /var/www/laravel/app/views/listbook.blade.php) Error tersebut muncul karena kita belum membuat route yang mengarah ke method tersebut, disamping method itu sendiri belum kita buat. Untuk itu, tambahkan route sebagai berikut padaâ fileâ routes.phpâ : Route::get('book/edit/{id}', 'BookController@edit'); Kemudian, tambahkanâ actionâ edit pada BookController: public function edit($id) { # code... } Jika, anda klik pada salah satuâ linkâ yang ditampilkan pada tabel, maka akan muncul halaman kosong padaâ browser.â Untuk mengubah halaman kosong tersebut menjadi halaman edit, ubah

21 fungsiâ edit yang barusan kita tambahkanâ menjadi sebagai berikut: public function edit($id) { $book = Book::find($id); return View::make('editbook')->with('book', $book); } Jika, anda jalankan lagi maka kali ini bukan halaman kosong yang anda dapatkan, tetapi anda akan melihat error sebagai berikut: InvalidArgumentException View [editbook] not found. Ini dikarenakan kita belum membuat view bernamaâ editbook.â Untuk itu, pada folder app/views buatlahâ fileâ baru dengan nama <div class='container'> <h3>edit book</h3>

22 {{ Form::open() }} {{Form::hidden('id', $book->id)}} {{Form::label('title', 'Title') }} {{Form::text('title', $book->title, array('class' => 'form-control'))}} {{Form::label('author', 'Author') }} {{Form::text('author', $book->author, array('class' => 'formcontrol'))}} {{Form::label('description', 'Description') }} {{Form::textarea('description', $book->description, array('class' => 'form-control'))}} {{Form::label('price', 'Price') }} {{Form::text('price', $book->price, array('class' => 'form-control'))}} {{Form::submit('Update', array('class' => 'btn btn-primary')) }}

23 {{ Form::close() }} Reload halaman yang menampilkan error tersebut dan anda akan melihat form edit beserta nilaiâ dari masing-masingâ field. Update Untuk melakukan update, tambahkan fungsi update padaâ BookController: public function update() { $id = Input::get('id'); $book = Book::find($id); $book->title $book->author = Input::get('title'); = Input::get('author'); $book->description = Input::get('description'); $book->price = Input::get('price'); $book->save();

24 } Dan, jangan lupa untuk menambahkan route baru sebagai berikut: Route::post('book/update', Setelah itu, pada file editbook.blade.php, ubahlah {{ Form::open()) }} menjadi {{ Form::open(array('action' => }} Sekarang, cobalah anda ubah judul dari buku tersebut, lalu klik tombol update. Maka, data judul buku tersebut akan berubah pula di database. Membuat CRUD Sederhana pada Laravel : Part 4 Pada kesempatan kali ini kita akan membuat fungsiâ deleteâ.fungsiâ deleteâ digunakan untuk menghapus data yang telah kita masukan ke dalamâ database.â Pertama-tama,

25 tambahkanâ link delete  di sebelah link edit dengan cara mengubahâ fileâ listbook.blade.php <section class="container"> <table class="table"> <tr> <th>title</th> <th>author</th> <th>description</th> <th>price</th> <th>#</th> as $book) <tr> <td>{{ $book->title }}</td> <td>{{ $book->author }}</td> <td>{{ $book->description }}</td> <td>{{ $book->price }}</td> <td>{{ 'edit', array($book- >id))}} {{ 'delete', array($book->id))}}</td> </tr>

26 @endforeach </table> Perhatikan, pada kode diatas kita menambahkan {{ 'delete', array($book->id))}} yang digunakan untuk menampilkan link delete. Apabila anda jalankan diâ browserâ dengan cara mengaksesâ routeâ booklist, maka akan muncul error sebagai berikut: ErrorException Route not defined. (View: /var/www/laravel/app/views/listbook.blade.php) Hal, ini disebabkan kita belum menambahkanâ routeâ danâ actionâ yang diperlukan. Oleh karena itu, tambahkanâ routeâ baru sebagai berikut: Route::get('book/delete/{id}', Jika, anda jalankan lagi padaâ browserâ maka tampilan akan berjalan normal dan sudah terdapat linkâ deleteâ didalam tabel. Namun, apabila link tersebut anda klik, tetap akan terjadi error, karena methodâ delete  masih belum dibuat, untuk itu padaâ BookController, tambahkan fungsiâ deleteâ sebagai berikut:

27 public function delete($id) { # code... } Execute Delete Sekarang, jika anda klik delete maka tidak akan muncul lagi pesan error. Namun, data tersebut masih belum terhapus dari dalamâ databaseâ karena kita belum menambahkan apa-apa pada methodâ delete.â Untuk itu, ubah fungsiâ deleteâ menjadi sebagai berikut: public function delete($id) { $book = Book::find($id); $book->delete(); return Redirect::to('booklist'); } Sekarang, jika anda klik link delete maka data buku yang bersangkutan akan dihapus. Perhatikan bahwa kode return Redirect::to('booklist'); digunakan untuk mengembalikan (redirect) anda ke halaman dengan route booklist.

28 Membuat autentikasi pengguna dengan menggunakan Laravel Autentikasi merupakan hal yang sangat penting dalam sebuah website. Dengan menggunakan autentikasi kita bisa mencegah orang yang tidak berkepentingan untuk mengakses situs yang kita buat. Saya rasa anda sudah paham tentang apa itu autentikasi, jadi saya pikir cukup sudah untuk penjelasannya. Mari kita lanjutkan ke cara membuat autentikasi menggunakan Laravel. Sebelumnya, saya asumsikan anda telah melakukan instalasi Laravel pada localhost dan melakukan setting database. Pertama-tama yang harus kita buat adalah tabel user. Untuk membuat tabel user, buat migrasi dengan menjalankan perintah sebagai berikut: php artisan migrate:make create_user_table Buka folder app/migration, anda akan melihat sebuah file berisi class yang bernama CreateUserTable. Pada class tersebut terdapat dua method bernama up dan down. Method up digunakan untuk membuat tabel, sedangkan method down digunakan untuk menghapus tabel. Tambahkan definisi tabel sebagai berikut pada method up : Schema::create('users', function($table) {

29 $table->increments('id');â $table->string('firstname', 20);Â $table->string('lastname', 20);Â $table->string(' ', 100)->unique();Â $table->string('password', 64);Â $table->timestamps();â }); Kemudian pada method down tambahkan perintah sebagai berikut: Schema::drop('users'); Selanjutnya, pada command line jalankan perintah: php artisan migrate Dengan begitu, sebuah tabel bernama users akan dibuat pada database, lengkap beserta seluruh field-field yang dibutuhkan. Untuk membuat sistem autentikasi, diperlukan sebuah model, controller dan view. Model yang digunakan adalah model bernama User yang biasanya sudah ada secara default pada instalasi Laravel. Kemudian untuk controller kita akan membuat sebuah controller baru bernama UserController, untuk membuat UserController, jalankan perintah sebagai berikut menggunakan command line:

30 php artisan controller:make UserController Maka, sebuah file baru bernama UserController.php akan tercipta pada folder app/controller. Membuat Halaman Registrasi Setelah controller kita buat, sekarang kita akan menampilkan sebuah halaman registrasi. Pertama-tama, kita akan mengubah fungsi create pada UserController menjadi fungsi register : public function register() { return View::make('register'); } Pada fungsi register diatas, kita akan diarahkan pada sebuah view bernama register. Namun, view tersebut masih belum kita buat. Untuk itu pada folder app/views tambahkan sebuah file baru bernama <div class="container"> <div class="alert alert-success">{{ Session::get('pesan') {{Form::open(array('action' => 'UserController@store')) }}

31 {{Form::label('firstname', 'First Name') }} {{Form::text('firstname', '', array('class' => 'form-control'))}} {{Form::label('lastname', 'Last Name') }} {{Form::text('lastname', '', array('class' => 'form-control'))}} {{Form::label(' ', ' ') }} {{Form::text(' ', '', array('class' => 'form-control'))}} {{Form::label('password', 'Password') }} {{Form::password('password', array('class' => 'form-control'))}} <br> {{Form::submit('Registerin Dong!', array('class' => 'btn btnprimary')) }} {{ Form::close() }} Setelah itu, buatlah route baru pada file routes.php seperti berikut ini: Route::get('register', Route::post('store', Setelah route dibuat, sekarang anda bisa membuka halaman register yang barusan anda buat melalui browser dengan cara mengakses route register.misal:

32 Registrasikan Pengguna Setelah halaman registrasi kita buat, kita akan memasukan data dari form yang barusan kita buat ke dalam database. Pada form tersebut terdapat kode sebagai berikut: {{Form::open(array('action' => }} Itu berarti, ketika disubmit, data dari form tersebut akan di-handle Oleh method store pada UserController. Untuk itu silahkan buka UserController kemudian tambahkan perintah sebagai berikut ke dalam method store : $user = new User(); $user->firstname = Input::get('firstname'); $user->lastname = Input::get('lastname');

33 $user-> = Input::get(' '); $user->password = Hash::make(Input::get('password')); $user->save(); return Redirect::to('register')->with('pesan', 'Registrasi berhasil!'); Sekarang, apabila anda isi form tersebut kemudian tekan tombol Registerin Dong! (seperti submit), maka data yang anda masukan akan tersimpan di database. Membuat Fitur Login Untuk membuat halaman Login, pertama-tama buatlah dua buah fungsi baru yaitu login dan authenticate : public function login(){ } public function authenticate(){ } Selain itu, buatlah dua buah route baru pada file routes.php sebagai berikut: Route::get('login', 'UserController@login'); Route::post('authenticate', 'UserController@authenticate');

34 Halaman Login Sekarang, kita akan membuat tampilan halaman login. Pada method login tambahkan baris perintah sebagai berikut: return View::make('login'); Kemudian pada direktori app/views tambahkan sebuah view baru dengan nama <div class="container"> <div class="col-md-5 col-md-offset-3"> <h2>login</h2> <hr <div class="alert alert-danger">{{ Session::get('pesan_error') {{Form::open(array('action' => }} {{Form::label(' ', ' ') }} {{Form::text(' ', '', array('class' => 'form-control'))}} {{Form::label('password', 'Password') }}

35 {{Form::password('password', array('class' => 'form-control'))}} {{Form::submit('Login', array('class' => 'btn btn-primary')) }} {{Form::close() }} </div> Autentikasi Ketika tombol login di-klik, form akan diarahkan ke method authenticate pada UserController. Pada method inilah autentikasi dilakukan, untuk itu tambahkan baris perintah sebagai berikut pada method authenticate: if (Auth::attempt(array(' ' => Input::get(' '), 'password' => Input::get('password')))) { echo "login berhasil"; } else{ return Redirect::to('login')->with('pesan_error', 'Login gagal, atau password salah!'); }

36 Sekarang, jika anda tekan tombol login dan autentikasi berhasil maka akan tampil tulisan login berhasil. Namun, jika autentikasi gagal, maka sebuah pesan kesalahan akan ditampilkan pada halaman login. Membuat Halaman Dashboard Sebelumnya, apabila kita sudah berhasil login kita hanya akan melihat tulisan login berhasil. Nah, kali ini kita akan membuat supaya pengguna diarahkan ke halaman dashboard apabila login berhasil. Buat sebuah controller baru bernama DashboardController : <?php class DashboardController extends BaseController { public function index(){ return View::make('dashboard'); }

37 }?> Setelah itu, buatlah sebuah route baru pada routes.php sebagai berikut: Route::get('dashboard', Kemudian, jangan lupa untuk membuat sebuah view baru bernama dashboard.blade.php. Setelah itu, ubah autentikasi yang ada pada method authenticate menjadi sebagai berikut: function authenticate(){ if (Auth::attempt(array(' ' => Input::get(' '), 'password' => Input::get('password')))) { return Redirect::to('dashboard'); } return Redirect::to('login')->with('pesan_error', 'Login gagal, atau password salah!'); } Sampai disini, apabila anda mencoba login kembali maka akan diarahkan ke halaman dashboard. Tentu halaman dashboard yang

38 dimaksud adalah halaman kosong, mengingat kita baru membuat viewnya saja, tanpa ada isinya. Membuat fungsi logout Sekarang, saatnya kita membuat fungsi logout. Untuk itu, kita akan membuat view dashboard yang telah kita buat dari halaman kosong menjadi <nav class="navbar navbar-inverse navbar-static-top" role="navigation"> <div class="container-fluid"> <!-- Brand and toggle get grouped for better mobile display --> <div class="navbar-header"> <button type="button" class="navbar-toggle" datatoggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="sr-only">toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">authapp</a> </div>

39 <!-- Collect the nav links, forms, and other content for toggling -- > <div class="collapse navbar-collapse" id="bs-example-navbarcollapse-1"> <ul class="nav navbar-nav navbar-right"> <li><a href="logout"><i class="glyphicon glyphicon-off"></i> logout</a></li> </ul> </div><!-- /.navbar-collapse --> </div><!-- /.container-fluid --> </nav> <div class="container"> <h1>dashboard</h1>

40 Selanjutnya, perhatikan pada halaman dashboard diatas terdapat kode sebagai berikut: <li><a href="logout"><i class="glyphicon glyphicon-off"></i> Pada atribut href, kita bisa melihat bahwa kita akan diarahkan pada route logout apabila link tersebut kita klik. Namun, route logout masih belum kita buat, oleh itu tambahkan route logout sebagai berikut pada file routes.php: Route::get('logout', Kemudian, tambahkan sebuah method pada UserController sebagai berikut: public function logout(){ Auth::logout(); return Redirect::to('login')->with('pesan', 'berhasil logout'); } Selanjutnya, untuk menampilkan pesan berhasil logout, tambahkan perintah sebagai berikut pada bagian atas form {{ Session::get('pesan')

41 Kesimpulan Sejauh ini anda telah berhasil membuat halaman registrasi, login dan logout. Tentunya, masih ada beberapa kelemahan dalam aplikasi yang barusan kita buat. Misalnya, akan terjadi error apabila kita memasukan yang sama saat registrasi. Kemudian, jika kita belum login dan mengakses seharusnya pengguna diarahkan ke halaman login. Dan masih ada beberapa hal lagi yang harus diperbaiki namun tidak akan saya bahas dalam tulisan ini berharap anda bisa mencobanya sendiri. Have a nice day! Bekerja dengan Laravel lebih cepat menggunakan Laravel Generators Laravel-generators adalah sebuah package yang memungkinkan pengguna untuk membuat controller, model, dan sebagainya dengan lebih cepat. Laravel-generators dibuat oleh Jeffrey Ways. Untuk memasang laravel-generators pada Laravel yang telah anda instal anda perlu menambahkan perintah berikut pada file composer.json: "require-dev": { "way/generators": "2.*"

42 }, Setelah itu, jalankan perintah composer update pada commandline. Tunggu sampai proses instalasi selesai. Setelah terinstal anda bisa melihat perintah apa saja yang bisa anda gunakan pada laravel-generators dengan menjalankan php artisan pada command-line. Membuat Controller Untuk membuat sebuah controller baru dengan menggunakan laravel-generators, anda tinggal menjalankan perintah: php artisan generate:controller UserController Pada contoh diatas, kita membuat sebuah controller dengan nama UserController. Sesuaikan nama controller tersebut dengan nama controller yang ingin anda buat. Sekarang, jika anda buka direktori app/controller, maka anda akan melihat sebuat file baru bernama UserController.php dimana didalamnya sudah terdapat action-action seperti index, create, store dan sebagainya. Membuat Migration

43 Sebenarnya, untuk membuat migration anda juga bisa melakukannya tanpa menggunakan laravel-generators yaitu dengan menggunakan perintah: php artisan migrate:make create_user_table Dimana create_user_table adalah nama migration yang akan kita buat. Untuk membuat migration dengan menggunakan Laravelgenerators, lakukan perintah sebagai berikut: php artisan generate:migration create_user_table Jika, anda perhatikan, terdapat sedikit perbedaan pada kedua perintah diatas. Silahkan anda perhatikan pada file yang tergenerate. Maka, file yang tergenerate dengan menggunakan laravelgenerators terlihat sedikit lebih lengkap dan memudahkan kita untuk melangkah ke proses selanjutnya. Membuat Model Untuk membuat model cukup gunakan perintah sebagai berikut: php artisan generate:model Example Maka sebuah file baru bernama Example.php akan terbentuk pada direktori app/model sebagai berikut: <?php

44 class Example extends \Eloquent { } protected $fillable = []; Membuat View Membuat view sangatlah mudah, ketikan perintah berikut melalui command-line: php artisan generate:view Example Dengan begitu, sebuah file baru akan dibuat pada direktori app/views dengan nama Example.blade.php. Semoga Bermanfaat. Mengenal CRUD dan Relationship pada Eloquent ORM Laravel Eloquent adalah sebuah ORM (Object Relational Mapping) yang sangat powerful dan expressive. Jika anda pernah bekerja dengan object pada php, maka anda tidak akan terlalu kesulitan bekerja dengan Eloquent ORM. Pada Laravel, setiap model (yang merupakan turunan dari Eloquent) mewakili sebuah table pada database. Namun, perlu diingat meskipun sebuah model mewakili sebuah tabel, dalam prakteknya kita seringkali menggunakan beberapa model untuk

45 mengambil data. Dengan menggunakan relationship kita bisa melakukan pengambilan data dari banyak tabel sekaligus. Kadangkala, saat menggunakan Laravel kita tidak menggunakan eloquent, tetapi menggunakan class bernama DB. Bahkan dengan cara demikian, kita tidak perlu membuat model. Hal ini sah-sah saja, namun alangkah bijaknya jika menggunakan eloquent model. Dengan menggunakan eloquent model, program yang kita buat bisa lebih rapi dan mudah dibaca dan juga tentu saja lebih cepat serta mudah digunakan kembali. Membuat Eloquent Model Kali ini kita akan membuat dua buah Model bernama Penulis dan Artikel. Namun sebelumnya, terlebih dahulu buat database bernama Orang dan Artikel dengan menggunakan Migrasi sebagai berikut: <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateArticlesTable extends Migration { /**

46 * Run the migrations. * void */ public function up() { Schema::create('articles', function(blueprint $table) { $table->increments('id'); $table->string('judul'); $table->text('body'); $table->integer('author_id'); $table->timestamps(); }); } /** * Reverse the migrations. * void */ public function down() { Schema::drop('articles');

47 } }?> <?php use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateAuthorsTable extends Migration { /** * Run the migrations. * void */ public function up() { Schema::create('authors', function(blueprint $table) { $table->increments('id'); $table->string('username')->unique(); $table->text('bio'); $table->timestamps();

48 }); } /** * Reverse the migrations. * void */ public function down() { Schema::drop('authors'); } }?> Setelah migrasi dibuat, kemudian jalankan perintah php artisan migrate pada command-line. Lalu, buatlah sebuah model sebagai berikut: <?php class Author extends Eloquent {}?> Model kemudian disimpan pada file app/models/author.php. Model diatas secara otomatis dimapping kepada tabel bernama authors yang telah kita buat sebelumnya dengan menggunakan migrasi. Proses mapping secara otomatis mengikuti aturan tunggal dan jamak

49 dalam bahasa inggris dimana nama class model menggunakan kata tunggal (contoh Author, User, dsb) sedangkan nama tabel di database menggunakan kata jamak (contoh authors, users dsb). Create Dengan menggunakan eloquent, kita bisa memasukan data ke dalam database dengan berbagai cara. Berikut adalah cara yang paling sering saya gunakan: // app/routes.php Route::get('/', function() { $author = new Author; $author->username = 'Sleeping Komodo'; $author->bio = 'Saya adalah orang yang ganteng'; $author->save(); }); Select Berikut adalah cara melakukan select menggunakan eloquent: // app/routes.php Route::get('/', function()

50 { $authors = Author::all()->first(); echo $authors->username; echo $authors->bio; }); Fungsi first digunakan untuk mengambil hanya record yang pertama dari data yang ada pada query select. Untuk mengambil semua data, cukup hilangkan method first tersebut, setelah itu data bisa ditampilkan dengan menggunakan foreach: // app/routes.php Route::get('/', function() { $authors = Author::all(); foreach($authors as $author) { echo $author->username; echo $author->bio; } });

51 Update Mari kita lanjutkan ke fungsi selanjutnya, yaitu update. Saya akan merubah nama author yang tadinya Sleeping Komodo menjadi Sleeping Komodo ganteng. Seperti kita ketahui, setiap record pada tabel authors memiliki id yang di-generate secara otomatis menggunakan auto-increment. Kali ini anggap saya record yang akan kita ubah memiliki id = 1, maka kode untuk melakukan update menjadi sebagai berikut: // app/routes.php Route::get('/', function() { $author = Author::find(1); //Temukan author dengan id = 1 $author->username = 'Sleeping Komodo Ganteng'; $author->bio = 'Saya adalah orang yang ganteng'; }); $author->save();

52 Perhatikan bahwa contoh diatas hampir sama dengan contoh ketika kita melakukan create. Bedanya kita menggunakan Author::find(1) untuk menginisialisasi variabel $author. Delete Delete adalah yang paling mudah. Berikut contoh penggunaan delete pada eloquent: // app/routes.php Route::get('/', function() { $author = Author::find(1); //Temukan author dengan id = 1 }); $author->delete(); Relationship menggunakan eloquent Relationship adalah komponen utama pada eloquent. Sebelum mempelajari relationship marilah terlebih dahulu menambahkan data-data berikut pada tabel authors: Route::get('/', function() { $author = new Author;

53 $author->username = 'Benny Ibrahim'; $author->bio = 'Seorang penulis buku'; $author->save(); $author = new Author; $author->username = 'Adam Saefullah'; $author->bio = 'Seorang penulis artikel'; $author->save(); $author = new Author; $author->username = 'Willy Alghifari'; $author->bio = 'Seorang penulis blog'; $author->save(); }); Setelah anda jalankan kode diatas, maka 3 record baru akan dimasukan ke dalam database. Kemudian ubah route diatas menjadi sebagai berikut: Route::get('/', function() { $author = Author::find(1); $article = new Article; $article->title = 'Perjalanan ke pulau harapan';

54 $article->body = 'Perjalanan ke pulau harapan menjadi sangat menarik karena adanya rombongan fotografer yang ikut bersama kami sehinga momen perjalanan kami bisa diabadikan'; $article->author_id = $author->id; $article->save(); $article2 = new Article; $article2->title = 'Perjalanan ke pulau harapan versi 2'; $article2->body = 'Perjalanan ke pulau harapan menjadi sangat menarik karena adanya rombongan fotografer yang ikut bersama kami sehinga momen perjalanan kami bisa diabadikan versi 2'; $article2->author_id = $author->id; $article2->save(); }); Setelah kode diatas, dijalankan ganti $author = Author::find(1); menjadi $author = Author::find(2); kemudian jalankan lagi. Setelah itu, itu ganti lagi menjadi $author = Author::find(3); lalu jalankan lagi dan seterusnya sebanyak jumlah author yang ada di database sehingga, setiap author memiliki dua article. Menggunakan hasmany

55 Seorang penulis (author) biasanya memiliki banyak artikel. Pada Laravel, kita bisa mendefinisikan relationship sebagai berikut: <?php class Author extends Eloquent { public function articles() { return $this->hasmany('article'); } }?> Jika kode tersebut diterjemahkan ke dalam bahasa manusia maka akan menjadi this author has many article / author ini memiliki banyak artikel. Cukup mudah dipahami bukan? Menggunakan belongsto <?php class Article extends Eloquent { public function author() { return $this->belongsto('author');

56 } }?> Kita juga bisa menerjemahkan method belongsto ini ke dalam bahasa manusia menjadi this article belongs to author / artikel ini dimiliki oleh satu author. Lumayan simple kan? Menggunakan dynamic method Sekarang, setelah anda membuat relationship pada model, kita bisa melakukan select terhadap data yang ada pada tabel bersangkutan, tentunya dengan memanfaatkan relationship tersebut. Sebagai contoh saya akan mengambil article dengan nama penulis Benny Ibrahim maka saya bisa melakukannya dengan cara sebagai berikut: Route::get('/', function() { $author = Author::whereUsername('Benny Ibrahim')->first(); foreach($author->articles as $article){ echo $article->title; echo $article->body; }

57 }); Perhatikan, pada contoh diatas kita menggunakan method whereusername. Jika anda pernah melihat dokumentasi Laravel, maka anda tidak akan pernah menemukan method tersebut. Karena method tersebut adalah method dinamis (dynamic method) dimana kita mengkombinasikan kata where dengan nama kolom yang ingin kita gunakan ( username ). Jadi, jika anda ingin memfilter data berdasarkan kolom dengan nama umur, maka anda bisa menggunakan whereumur, jika berdasarkan kolom jabatan = wherejabatan dan seterusnya. Sekarang mari kita lakukan kebalikannya, kita mengambil nama penulis yang menulis article dengan judul Perjalanan ke pulau harapan. Route::get('/', function() { $article = Article::whereTitle('Perjalanan ke pulau harapan')- >first(); echo $article->author->username; echo $article->author->bio; });

58 Perhatikan bahwa model yang digunakan pada contoh diatas adalah Article dimana kita bisa mengakses kolom-kolom dari tabel authors dengan mudah tanpa harus menginisisasi model Author dengan menggunakan $authors = Author::all() dsb. Contoh lain untuk cara mengambil data menggunakan relationship adalah sebagai berikut: Route::get('/', function() { $articles = Article::all(); foreach($articles as $article){ echo $article->author->username; echo ' menulis artikel berjudul '; echo $article->title; } }); Perhatikan, bahwa cara diatas akan berjalan sangat lambat terutama terutama ketika menangani data dalam jumlah yang banyak, karena kueri yang digunakan secara background tidak efektif dan terdiri dari beberapa kueri. Misalnya, jika terdapat 10 data, maka akan diselect satu-satu sehingga terdapat 10 kueri. Sebagai alternatif, gunakan cara sebagai berikut:

59 Route::get('/', function() { $paintings = Painting::with('author')->get(); foreach($articles as $article){ echo $article->author->username; echo ' menulis artikel berjudul '; echo $article->title; } }); Dengan cara tersebut kueri yang digunakan bisa lebih sedikit yaitu hanya menjadi 2 query saja. Anda bisa melihat jumlah query yang digunakan dengan men-trace sendiri. Semoga bermanfaat. Membuat Shopping Cart Menggunakan Laravel Shopping cart sangat diperlukan ketika kita membuat aplikasi terutama yang berhubungan dengan toko online. Dengan menggunakan shopping cart, barang yang akan dibeli oleh pengguna bisa disimpan terlebih dahulu dan pengguna dapat melanjutkan berbelanja. Data barang disimpan di dalam cache, sehingga ketika pengguna berpindah halaman pada aplikasi, data

60 tersebut tidak hilang. Data barang tersebut kemudian akan disimpan di database ketika pengguna selesai berbelanja dan menekan tombol checkout. Instal package shopping cart Untuk membuat shopping cart pada Laravel kita akan menambahkan sebuah package baru. Untuk itu, buka file composer.json dan tambahkan "gloudemans/shoppingcart": "devmaster" pada bagian require sehingga menjadi seperti berikut: "require": { "laravel/framework": "4.1.25", "gloudemans/shoppingcart": "dev-master" }, setelah itu, buka command-line lalu masuk ke dalam folder laravel anda ( cd c://xampp/htdocs/<nama folder> bagi pengguna windows atau cd /var/www/<nama folder> jika anda menggunakan linux). Setelah masuk ke dalam direktori, lalu jalankan perintah composer update, tunggu sampai proses update selesai. Setelah itu, buka file app/config/app.php kemudian tambahkan kode berikut pada bagian service providers: 'Gloudemans\Shoppingcart\ShoppingcartServiceProvider' Lalu pada bagian aliases tambahkan kode berikut:

61 'Cart' => 'Gloudemans\Shoppingcart\Facades\Cart', NOTE: Saat menjalankan composer update anda perlu terhubung ke internet. Membuat tabel Produk Sebelum lebih jauh membahas penggunaan shopping cart, mari kita buat terlebih dahulu database untuk menampung produk dengan menjalankan migrasi sebagai berikut: Schema::create('products', function($table){ $table->increments('id')->unsigned(); $table->string('name'); $table->string('description', 500); $table->string('price', 10); $table->timestamps(); }); Tabel produk yang saya buat diatas saya buat sesederhana mungkin agar tidak terlalu rumit. Tabel dibuat dengan migrasi-nya laravel. Bagi anda yang belum tahu cara migrasi tabel dengan laravel, bisa baca disini. Anda juga bisa membuat tabel secara manual dengan menggunakan PHPMyadmin jika anda mau. Setelah tabel dibuat, masukan beberapa data ke dalamnya. Menampilkan List Produk

62 Selanjutnya, kita buat halaman untuk menampilkan list produk. Dimana pada masing-masing item, terdapat tombol add to cart yang berfungsi memasukan produk ke keranjang belanja (shopping cart). Untuk membuat halaman tersebut, ada beberapa tahapan yang harus kita lakukan. Pertama pada direktori app/model buat sebuah model bernama Product: <!-- app/model/product.php --> <?php class Product extends Eloquent {?> } Selanjutnya, pada file app/routes.php, ubah route utama menjadi seperti berikut: Route::get('/', function() { $products = Product::all(); return View::make('productlist')->with('products', $products); }); Lalu pada folder app/views buat sebuah view baru dengan nama productlist.blade.php sesuai yang kita telah definisikan pada route:

63 <!-- productlist.blade.php --> <div as $product) <div class="col-md-3"> <div class="panel"> <div class="panel-heading"> {{ $product->name }} </div> <div class="panel-body"> {{ $product->description }} </div> <div class="panel-footer"> <a class="btn btn-info pull-right" href="{{ url('product/cart/'.$product->id) }}"><i class="fa fashopping-cart"></i> add to cart</a> </div> </div> </div>

64 NOTE: Saya menggunakan Twitter Bootstrap sebagai CSS Framework, itulah sebabnya saya menggunakan class container, panelheading, panel-body dan lain-lain. Membuat shopping cart Yap, akhirnya kita sampai juga pada bahasan utama kita. Jika anda perhatikan view yang telah anda buat, didalamnya terdapat syntax sebagai berikut: <a class="btn btn-info pull-right" href="{{ url('product/cart/'.$product->id) }}"><i class="fa fa-shoppingcart"></i> add to cart</a> Perhatikan bahwa ketika tombol add to cart di-klik, maka pengguna akan diarahkan ke route product/cart. Untuk itu mari kita buat route tersebut, tambahkan kode dibawah ini pada app/routes.php: Route::get('product/cart/{id}', function($id){ }); Kemudian, pada route tersebut kita akan memasukan product yang dimaksud ke dalam cache shopping cart, setelah itu kita tampilkan

65 isi dari shopping cart tersebut dalam bentuk tabel. Ubah kode diatas menjadi sebagai berikut: Route::get('product/cart/{id}', function($id){ $product = Product::find($id); $id $name = $product->id; = $product->name; $qty = 1; $price = $product->price; $data = array('id' => $id, 'name' 'qty' 'price' => $name, => $qty, => $price, 'options' => array('size' => 'large')); Cart::add($data); $cart_content = Cart::content(1); return View::make('productcart')->with('cart_content', $cart_content); });

66 setelah itu, kita buat sebuah view baru productcart.blade.php. <!-- app/views/productcart.blade.php --> <div class="container"> <h4><i class="fa fa-shopping-cart"></i> cart</h4> <hr> <!-- Panel --> {{ Message::success() }} <div class="panel"> <div class="panel-heading">cart</div> <table class="table table-striped m-b-none text-sm"> <thead> <tr> <th width="8">no</th> <th width="300">product Name</th> <th>price</th> <th width="100">quantity</th> <th width="200">action</th> </tr> </thead> <tbody> <?php $i = as $cart)

67 <tr> <td>{{ $i }}</td> <td>{{ $cart->name }}</td> <td>{{ $cart->price }}</td> <td>{{ $cart->qty }}</td> <td> <a href="{{ url('cart/delete/'.$cart- >rowid) }}">delete</a> </td> </tr> <?php </tbody> </table> <div class="panel-footer"> <a href="{{ url('/dashboard') }}" class="btn btnwhite">continue Shopping</a> <a href="{{ url('cart/checkout') }}" class="btn btninfo">checkout</a> </div> </div> <!-- / Panel --> </div>

68 Menghapus item dari dalam shopping cart Jika anda perhatikan view yang telah anda buat diatas, akan terdapat link delete yang mengarah ke route cart/delete/{id}. Untuk itu, mari kita buat route tersebut. Tambahkan syntax berikut pada app/routes.php: Route::get('cart/delete/{id}', function(){ Cart::remove($id); return View::make('productcart')->with('cart_content', $cart_content); }); Perhatikan bahwa sebuah item dalam cart bisa dihapus berdasarkan rowid yang dimilikinya. Melakukan checkout Untuk melakukan checkout, kita akan membuat sebuah route sebagai berikut: Route::get('cart/checkout', function(){ $formid = str_random(); $cart_content = Cart::content(1);

69 foreach ($cart_content as $cart) { $transaction = new Transaction(); $product = Product::find($cart->id); $transaction->product_id = $cart->id; $transaction->form_id $transaction->qty = $formid; = $cart->qty; $transaction->total_price = $cart->price * $cart- >qty; $transaction->status = 'unpaid'; $transaction->save(); } Cart::destroy(); echo "Checkout berhasil"; });

70 Perhatikan kode diatas, pada saat melakukan checkout, kita akan memindahkan semua data yang ada pada cart ke dalam sebuah tabel bernama transactions. Dengan demikian, jika kita melakukan checkout sekarang, maka akan terjadi error karena tabel transactions masih belum kita buat. Untuk membuat tabel transactions, gunakan migrasi sebagai berikut: Schema::create('transactions', function($table){ $table->increments('id')->unsigned(); $table->string('product_id'); $table->string('form_id'); $table->string('qty'); $table->string('total_price'); $table->string('status'); $table->timestamps(); }); Kemudian pada app/models tambahkan sebuah model transaction.php sebagai berikut: <?php class Transaction extends Eloquent {?> }

71 Sekarang, jika anda kembali mencoba melakukan checkout. Maka data-data di dalam cart akan berhasil dimasukan ke dalam tabel transaction. semoga bermanfaat. Cara melakukan manipulasi file image pada Laravel Terkadang ketika meng-upload sebuah file image pada aplikasi web yang kita buat, kita perlu melakukan image resizing, image crop, menambahkan watermark dan sebagainya, agar gambar yang kita upload bisa terlihat pas saat ditampilkan. Package Laravel untuk melakukan image resizing Untuk melakukan image resizing kita akan menggunakan sebuah package bernama intervention/image. Untuk itu, tambahkan "intervention/image": "1.*" di bagian require pada file composer.json : "require": { "laravel/framework": "4.1.25", "intervention/image": "1.*", },

72 Setelah itu jalankan perintah composer update melalui commandline. Tunggu beberapa saat hingga package terinstal. Sebagai catatan, anda perlu terhubung ke internet ketika melakukan proses ini. Setelah proses selesai, kemudian buka file app/config/app.php setelah itu pada bagian providers tambahkan kode berikut: 'Intervention\Image\ImageServiceProvider', Kemudian, tambahkan pula kode berikut pada bagian aliases: 'Image' => 'Intervention\Image\Facades\Image', Setelah itu, package intervention/image sudah siap anda gunakan. Melakukan image crop dengan intervention/image Berikut adalah cara melakukan crop image dengan menggunakan intervention/image. $file_path = 'uploads/image.png'; $img = Image::make($file_path); $img->crop(500, 300); $img->save($file_path); perhatikan contoh diatas, misalnya kita mempunyai sebuah file gambar dengan nama image.png dimana file tersebut terletak pada

73 folder public/uploads. Kemudian kita mempersiapkan file gambar tersebut untuk diproses. Untuk itu, kita menggunakan perintah $img = Image::make($file_path);. Setelah siap, gambar tersebut kemudian di-crop dengan ukuran File gambar asli masih tersimpan dengan ukuran sebenarnya, yang barusan kita crop adalah file gambar kloningan dari gambar asli tersebut. Kita secara otomatis mengkloningnya ketika menjalankan perintah $img = Image::make($file_path);. Setelah gambar hasil kloningan di crop, kemudian kita menyimpannya dengan perintah, $img->save($file_path);. Karena kita menyimpannya dengan path yang sama dengan gambar yang asli, maka gambar aslinya akan ditimpa dan hilang. Seolah-olah gambar asli tersebut yang kita crop. Jika, anda ingin gambar yang asli tetap ada, silahkan simpan dengan path yang berbeda. Melakukan image resizing Selain melakukan crop, anda juga bisa melakukan resize dengan cara sebagai berikut: $file_path = 'uploads/image.png'; $img = Image::make($file_path); $img->resize(500, 300); $img->save($file_path);

74 Proses resize sangat mirip dengan crop, kita hanya mengganti $img- >crop(500, 300); dengan $img->resize(500, 300);. Perbedaan resize dengan crop adalah, ketika menggunakan crop gambar akan dipotong menjadi berukuran sesuai dengan yang kita inginkan pada contoh diatas ukuran yang kita gunakan adalah 500 x 300. Karena, gambar tersebut dipotong, maka sebagaian dari gambar akan hilang. Sedangkan, pada resize, gambar tidak dipotong sehingga tidak ada bagian gambar yang hilang. Namun demikian, apabila kita terlalu memaksakan dalam melakukan resize maka gambar akan menjadi terlihat gepeng. Misal, kita melakukan resize gambar berukuran 500 x 300 menjadi 500 x 50, tentu gambar akan menjadi terlihat tidak normal. Jika anda ingin melakukan resize, usahakan dengan dimensi yang sama, misal gambar berukuran 1000 x 500 di-resize menjadi 500 x 250 (1000 x 500 = 2:1, 500 x 250 = 2:1 - samasama 2:1). Menambahkan Watermark Selain itu, anda juga bisa menambahkan watermark pada file gambar dengan menggunakan intervention/image. Caranya cukup mudah: $file_path = 'uploads/image.png';

75 $watermark = 'uploads/watermark.png'; $img = Image::make($file_path); $img->insert($watermark); $img->save($file_path); NOTE: dokumentasi lebih lengkapnya bisa anda lihat disini : Semoga bermanfaat. Menggunakan pagination pada Laravel Sepertinya hampir setiap aplikasi berbasis web yang memiliki fungsi untuk mengatur data memerlukan pagination ketika menampilkan data yang cukup banyak. Pagination adalah solusi yang cukup baik untuk mengatasi kelebihan informasi. Saya pikir hampir semua orang tahu cara menggunakan pagination. Namun, untuk membuat sistem pagination dari awal akan sangat memakan waktu dan juga membosankan. Ada banyak potongan program yang harus anda tulis hanya untuk menampilkan pagination sesuai dengan jumlah data dari database dan posisi

76 anda melihat data saat ini, kemudian menampilkannya pada bagian bawah data. Untungnya, pagination merupakan salah satu dari sekian banyak fitur pada Laravel dimana kita bisa menggunakannya dengan lebih mudah tanpa harus membuat dari awal. Membuat pagination dari awal bisa menjadi mimpi buruk, sedangkan jika anda tidak menggunakan pagination tentu kasihan pengguna anda jika harus melihat terlalu banyak data dalam satu waktu. Apa itu Pagination Pagination adalah suatu cara menampilkan data yang banyak ke dalam beberapa halaman. Ketika awal mula membuat sebuah aplikasi web, anda mungkin tidak memerlukan pagination. Namun, seiring berjalannya waktu dan semakin banyak data yang harus ditampilkan, maka pagination akan menjadi sangat penting. Jika anda menampilkan banyak data sekaligus dalam satu waktu, maka hal itu akan memperlambat proses pengambilan data dari database dan menyebabkan aplikasi menjadi lambat. Dengan menggunakan pagination, hanya beberapa set data saja yang akan diambil dari database dan ditampilkan langsung pada aplikasi. Pada database, jumlah data dihitung dan dibagi-bagi menjadi beberapa halaman tergantung dari berapa banyak yang ingin anda tampilkan per halamannya. Kemudian jumlah

Membuat Autentikasi Pengguna pada Laravel

Membuat Autentikasi Pengguna pada Laravel Membuat Autentikasi Pengguna pada Laravel Abdul Rohman admin@abdulrohman.web.id :: http://www.abdulrohman.web.id Abstrak Autentikasi merupakan hal yang sangat penting dalam sebuah website. Dengan menggunakan

Lebih terperinci

Membuat CRUD Sederhana pada Framework Laravel

Membuat CRUD Sederhana pada Framework Laravel Membuat CRUD Sederhana pada Framework Laravel Abdul Rohman admin@abdulrohman.web.id :: http://www.abdulrohman.web.id Abstrak CRUD (Create, Read, Update dan Delete) merupakan program dasar yang harus dikuasai

Lebih terperinci

PRAKTIKUM. Rekayasa Web. Modul 3: CRUD Part II. Laboratorium Teknik Informatika Universitas Pasundan

PRAKTIKUM. Rekayasa Web. Modul 3: CRUD Part II. Laboratorium Teknik Informatika Universitas Pasundan PRAKTIKUM Rekayasa Web Modul 3: CRUD Part II Laboratorium Teknik Informatika Universitas Pasundan Konten modul: 1. Update Data 2. Search Data Tujuan praktikum: 1. Praktikan diharapkan mampu memahami proses

Lebih terperinci

Pemrograman Web PRAKTIKUM 6. Query Data 2. TUJUAN BELAJAR Mahasiswa dapat menggunakan PHP dan MySQL untuk mengupdate data

Pemrograman Web PRAKTIKUM 6. Query Data 2. TUJUAN BELAJAR Mahasiswa dapat menggunakan PHP dan MySQL untuk mengupdate data PRAKTIKUM 6 Query Data 2 TUJUAN BELAJAR Mahasiswa dapat menggunakan PHP dan MySQL untuk mengupdate data MATERI Program edit dan hapus TUGAS Menambahkan fitur edit dan hapus untuk semua form input data

Lebih terperinci

Pengenalan Script. Definisi HTML

Pengenalan Script. Definisi HTML 1 Pengenalan Script Pada bab ini akan dibahas bahasa script yang dapat digunakan untuk membuat halaman web. Untuk dapat membuat halaman web bahasa script pertama yang harus anda kenal adalah HTML. HTML

Lebih terperinci

Membuat Aplikasi Point of Sale dengan Laravel dan AJAX

Membuat Aplikasi Point of Sale dengan Laravel dan AJAX Membuat Aplikasi Point of Sale dengan Laravel dan AJAX Sanksi Pelanggaran Pasal 113 Undang-Undang Nomor 28 Tahun 2014 tentang Hak Cipta 1. Setiap Orang yang dengan tanpa hak melakukan pelanggaran hak ekonomi

Lebih terperinci

Membuat Online Messanger atau Chat dengan PHP, MySQL, JQuery, Bootsrtrap 3 dan Font Awesome 4 [Part 3]

Membuat Online Messanger atau Chat dengan PHP, MySQL, JQuery, Bootsrtrap 3 dan Font Awesome 4 [Part 3] Membuat Online Messanger atau Chat dengan PHP, MySQL, JQuery, Bootsrtrap 3 dan Font Awesome 4 [Part 3] Oleh: Arinadi Nur Rohmad Asalamualaikum, Setelah di part sebelumnya kita sudah membuat design dan

Lebih terperinci

CRUD pada Aplikasi Web dengan Laravel 5.5

CRUD pada Aplikasi Web dengan Laravel 5.5 CRUD pada Aplikasi Web dengan Laravel 5.5 Husni@Trunojoyo.ac.id Ini merupakan tutorial Laravel 5.5 bagi pengguna awal Laravel. Laravel baru saja meluncurkan versi barunya bernama Laravel 5.5, dan hadir

Lebih terperinci

Mengembangkan Website Berbasis Wordpress

Mengembangkan Website Berbasis Wordpress Mengembangkan Website Berbasis Wordpress Bagian 1: Pengenalan dan Instalasi Wordpress Hanif Rasyidi Pendahuluan Perkembangan teknologi saat ini membuat internet menjadi salah satu sumber utama dalam pencarian

Lebih terperinci

MODUL 8 Insert, Update, & delete

MODUL 8 Insert, Update, & delete MODUL 8 Insert, Update, & delete Pemograman Web Teknik Informatika Universitas Pasundan Bandung 2016/2017 Konten Mengubah Data dari Array menjadi Database... Error! Bookmark not defined. Mengkoneksikan

Lebih terperinci

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah www.ilmuwebsite.com Bagian 4. CRUD (Create, Read, Update, Delete)

Lebih terperinci

APLIKASI WEB DINAMIS LANJUT TUGAS 1

APLIKASI WEB DINAMIS LANJUT TUGAS 1 APLIKASI WEB DINAMIS LANJUT Nama : Apriyanto Wibowo NIM : 12141362 Soal : TUGAS 1 1. Buatlah tutorial / panduan singkat penggunaan composer pada pengembangan aplikasi Didalam tutorial memuat informasi

Lebih terperinci

Membuat Online Messanger atau Chat dengan PHP, MySQL, JQuery, Bootsrtrap 3 dan Font Awesome 4 [Part 2]

Membuat Online Messanger atau Chat dengan PHP, MySQL, JQuery, Bootsrtrap 3 dan Font Awesome 4 [Part 2] Membuat Online Messanger atau Chat dengan PHP, MySQL, JQuery, Bootsrtrap 3 dan Font Awesome 4 [Part 2] Oleh: Arinadi Nur Rohmad Episode System Sign-Up/Registerasi/Daftar User Asalamualaikum, Setelah di

Lebih terperinci

Modul-7 CRUD & Searching. Pemograman Web TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN BANDUNG

Modul-7 CRUD & Searching. Pemograman Web TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN BANDUNG Modul-7 CRUD & Searching Pemograman Web TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN BANDUNG Kali ini, kita akan membuat halaman back-end (halaman admin). Pada modul kali ini, ada beberapa hal yang harus kalian

Lebih terperinci

PEMBUATAN MASTER PENGGUNA PADA APLIKASI BPN-PPAT (CRUD)CREATE, READ, UPDATE,DELETE With PHP & Mysql

PEMBUATAN MASTER PENGGUNA PADA APLIKASI BPN-PPAT (CRUD)CREATE, READ, UPDATE,DELETE With PHP & Mysql 2017 PEMBUATAN MASTER PENGGUNA PADA APLIKASI BPN-PPAT (CRUD)CREATE, READ, UPDATE,DELETE With PHP & Mysql Materi Lanjutan Dari Matei Pembuatan Halaman Login, Halaman Dashboard Admin & Menu Keluar Bas-Dev

Lebih terperinci

SMH2D3 Web Programming. 7 BAB V PHP SESSION & COOKIES. H a l IDENTITAS. Kajian Teknik pemrograman menggunakan PHP

SMH2D3 Web Programming. 7 BAB V PHP SESSION & COOKIES. H a l IDENTITAS. Kajian Teknik pemrograman menggunakan PHP 7 BAB V PHP SESSION & COOKIES 71 IDENTITAS Kajian Teknik pemrograman menggunakan PHP Topik Penggunaan Library PHP dan teknik lanjutan Web Dinamis Kompetensi Utama 1 Memahami penggunaan Form dan Validasi

Lebih terperinci

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Beberapa penelitan yang terkait dengan penelitian ini adalah

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Beberapa penelitan yang terkait dengan penelitian ini adalah BAB II TINJAUAN PUSTAKA DAN DASAR TEORI 2.1 Tinjauan Pustaka Beberapa penelitan yang terkait dengan penelitian ini adalah sebagai berikut. Parameter Tabel 2.1 Perbandingan Penelitian Objek Framework Studi

Lebih terperinci

MODUL 7. Apakah Joomla itu? A. Pra-Instalasi Joomla. Tujuan : 1. Pengenalan Joomla 2. Installasi Joomla 3. Pengenalan Section dan Categories

MODUL 7. Apakah Joomla itu? A. Pra-Instalasi Joomla. Tujuan : 1. Pengenalan Joomla 2. Installasi Joomla 3. Pengenalan Section dan Categories MODUL 7 JOOMLA Tujuan : 1. Pengenalan Joomla 2. Installasi Joomla 3. Pengenalan Section dan Categories Apakah Joomla itu? Sejauh ini joomla adalah: Joomla! is a free open source framework and content publishing

Lebih terperinci

TUTORIAL ADMINISTRATOR WORDPRESS WP-ADMIN Contents Management Wordpress Selfhosting

TUTORIAL ADMINISTRATOR WORDPRESS WP-ADMIN Contents Management Wordpress Selfhosting TUTORIAL ADMINISTRATOR WORDPRESS WP-ADMIN Contents Management Wordpress Selfhosting Modul (artikel) sebelumnya, yaitu: Cara Membuat Email Gmail. http://khudri.com/download/tutorial/pembuatan-email-gmail.pdf

Lebih terperinci

Membuat Web Chatting dengan Ajax Jquery, PHP, dan Bootstrap [Part 2]

Membuat Web Chatting dengan Ajax Jquery, PHP, dan Bootstrap [Part 2] Membuat Web Chatting dengan Ajax Jquery, PHP, dan Bootstrap 2.3.2 [Part 2] Oleh: d-newbie pada tutorial sebelumnya kita sudah membuat 2 modal, yaitu modal "Masuk" dan modal "Daftar" dan pada tahap ini

Lebih terperinci

PRAKTIKUM PEMROGRAMAN WEB MODUL 7 TWITTER BOOTSTRAP

PRAKTIKUM PEMROGRAMAN WEB MODUL 7 TWITTER BOOTSTRAP PRAKTIKUM PEMROGRAMAN WEB MODUL 7 TWITTER BOOTSTRAP Disusun oleh: (Nama) (NIM) PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH JEMBER 2015 Modul 7 Twitter Bootstrap I. Tujuan:

Lebih terperinci

JOOMLA PHOTO GALLERY. 1.1 Pendahuluan

JOOMLA PHOTO GALLERY. 1.1 Pendahuluan JOOMLA PHOTO GALLERY Di era serba cepat sekarang ini, di mana setiap orang boleh dapat dikatakan memiliki Gadget untuk mengabadikan setiap momen, maka publikasi photo menjadi sebuah kebutuhan. Lihat saja

Lebih terperinci

1 MEMBUAT BLOG LARAVEL MYSQL DATABASE KHUSUS PEMULA. Membuat blog sederhana dengan Laravel 5.3 dan database MySQL

1  MEMBUAT BLOG LARAVEL MYSQL DATABASE KHUSUS PEMULA. Membuat blog sederhana dengan Laravel 5.3 dan database MySQL 1 www.hc-kr.com MEMBUAT BLOG LARAVEL 5.3 + MYSQL DATABASE KHUSUS PEMULA 2 www.hc-kr.com Halo coder, ketemu lagi dengan saya orang paling ganteng sekecamatan. Kali ini saya akan berbagi ilmu tentang bagaimana

Lebih terperinci

Lisensi Dokumen: Uraian Kasus :

Lisensi Dokumen: Uraian Kasus : Uraian Kasus : Pada kasus ini seorang mahasiswa ingin membuat Program sederhana tentang Nomor Handphone teman-temannya untuk mengantisipasi kehilangan HPnya atau HP Error sehingga perlu di Flash ulang

Lebih terperinci

BERKENALAN DENGAN MODEL CODEIGNITER

BERKENALAN DENGAN MODEL CODEIGNITER BERKENALAN DENGAN MODEL CODEIGNITER Muhamad Yusuf muhamadyusuf0012@gmail.com :: https://muhamadyusufppn.blogspot.co.id Abstrak Framework CodeIgniter memiliki konsep MVC(Model, View, Controller) yang merupakan

Lebih terperinci

Tutorial Menggunakan webpraktis profil bisnis

Tutorial Menggunakan webpraktis profil bisnis Tutorial Menggunakan webpraktis profil bisnis 1. Kunjungi Webpraktis.com dan klik tombol Buat Website 2. Pilih Jenis Template Setelah klik buat website,pilih template yang ingin Anda gunakan dari kategori

Lebih terperinci

MODUL PRAKTIKUM SISTEM TERDISTRIBUSI

MODUL PRAKTIKUM SISTEM TERDISTRIBUSI MODUL PRAKTIKUM SISTEM TERDISTRIBUSI WEB API Yuli Purwati, M.Kom Praktikum 8 7 Juni 2017 Aplikasi ASP.NET Web Api 1. Pembuatan Web Api Buat project baru pada Visual Studio, File New Project. Lalu, pilih

Lebih terperinci

Membuat Top Fixed Responsive Navbar Twitter Bootstrap

Membuat Top Fixed Responsive Navbar Twitter Bootstrap Membuat Top Fixed Responsive Navbar Twitter Bootstrap Oleh: ricky orlando napitupulu Salam bro and sis :), selamat datang di tulisan tutorial pertama ane ni, makasi da mau singga disini ye walopun kesasar

Lebih terperinci

Membuat Blog Menggunakan Wordpress

Membuat Blog Menggunakan Wordpress Membuat Blog Menggunakan Wordpress - 2013 Pengertian Blog Blog atau Weblog adalah buku harian online yang diisi secara terus menerus secara periodik. Blog pada awalnya hanya dimiliki oleh artis dan selebriti

Lebih terperinci

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah www.ilmuwebsite.com Bagian 7. Membuat Data Pagination Menggunakan

Lebih terperinci

BAB III. PERANCANGAN SISTEM

BAB III. PERANCANGAN SISTEM BAB III. PERANCANGAN SISTEM 3.1 Analisa Kebutuhan Sebagaima dijelaskan pada bab satu tentang konsep point of sales berbasis website yang mampu memudahkan pencatatan data produk penjualan. Penulis dalam

Lebih terperinci

Mengubah bahasa (Indonesia dan Inggris) atau mata uang (IDR dan USD) Integrasi dengan Loyalti

Mengubah bahasa (Indonesia dan Inggris) atau mata uang (IDR dan USD) Integrasi dengan Loyalti 1. Pendahuluan BateeqShop Android merupakan aplikasi berbasis mobile yang memiliki fungsi utama untuk melakukan pemesanan secara online. Aplikasi ini hanya dapat digunakan oleh pengguna Android. Secara

Lebih terperinci

BAB IV IMPLEMENTASI DAN EVALUASI. Dalam merancang dan membangun sistem penjualan online ini ada

BAB IV IMPLEMENTASI DAN EVALUASI. Dalam merancang dan membangun sistem penjualan online ini ada BAB IV IMPLEMENTASI DAN EVALUASI 4.1. Implementasi Sistem Dalam merancang dan membangun sistem penjualan online ini ada beberapa spesifikasi perangkat lunak dan perangkat keras yang dibutuhkan. Perangkat

Lebih terperinci

PANDUAN PENGGUNAAN. Joomla! Versi 1.5. Oleh: Anon Kuncoro Widigdo

PANDUAN PENGGUNAAN. Joomla! Versi 1.5. Oleh: Anon Kuncoro Widigdo PANDUAN PENGGUNAAN Joomla! Versi 1.5 Oleh: Anon Kuncoro Widigdo anonkuncoro@yahoo.com Kendari 2009-2010 MODUL I Pendahuluan Joomla adalah sebuah aplikasi sistim manajemen konten atau Content Management

Lebih terperinci

PEMROGRAMAN PHP DASAR

PEMROGRAMAN PHP DASAR 2016 PEMROGRAMAN PHP DASAR Eka Dyar Wahyuni Sistem Informasi UPN Veteran Jawa Timur 1/6/2016 Contents 1. Mengambil Nilai Parameter... 2 2. Menyimpan ke Database... 5 3. Menampilkan Hasil dari Database

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGGUNA

BAB IV IMPLEMENTASI DAN PENGGUNA BAB IV IMPLEMENTASI DAN PENGGUNA Aplikasi RANCANGAN SISTEM PENGELOLAAN DANA BANTUAN OPERASIONAL (BOS) pada SLB Negri 6 Jakarta ini, dirancang dan dibuat untuk memenuhi kebutuhan pengelola dana BOS, dalam

Lebih terperinci

Daftar Pustaka Coderseye. 2017. Coderseye. 12 January. Diakses April 20, 2017. http://www.coderseye.com. Darmawan, Deni, dan Nur Kunkun Fauzi. 2013. Sistem Informasi Manajemen. Bandung: PT Remaja Rosdakarya.

Lebih terperinci

E-trik Ajax. Database MySQL. Dedi Alnas

E-trik Ajax. Database MySQL. Dedi Alnas E-trik Ajax Database MySQL Dedi Alnas Pengenalan MySQL Tutorial kali ini akan membahas cara pembuatan aplikasi web yang dapat dihubungkan dengan MySQL. Pada paket instalasi Xampp terdapat MySQL dan phpmyadmin.

Lebih terperinci

Pemrograman Web Week 2. Team Teaching

Pemrograman Web Week 2. Team Teaching Pemrograman Web Week 2 Team Teaching WEEK 2 HTML IKG2I4 Software Project I Persiapan Instalasi Editor Download dan Install apilkasi editor (mis. Notepad++) Karena membantu dalam pengembangan syntax highlighting

Lebih terperinci

BAB IV ANALISIS DAN PERANCANGAN SISTEM

BAB IV ANALISIS DAN PERANCANGAN SISTEM BAB IV ANALISIS DAN PERANCANGAN SISTEM 4.1 Analisis Yang Berjalan Sebelum merancang suatu sistem, ada baiknya terlebih dahulu menganalisis sistem yang sedang berjalan di Distro yang akan dibangun tersebut.

Lebih terperinci

TUGAS 1 WEB DINAMIS LANJUT. Nama : Parisaktiana Fathonah NIM : Link : https://github.com/fathonah/wdl

TUGAS 1 WEB DINAMIS LANJUT. Nama : Parisaktiana Fathonah NIM : Link : https://github.com/fathonah/wdl TUGAS 1 WEB DINAMIS LANJUT Nama : Parisaktiana Fathonah NIM : 12131276 Link : https://github.com/fathonah/wdl12131276 1. Composer a. Pengertian Composer Composer adalah package manager untuk php. Hal ini

Lebih terperinci

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle. 1 2 3 Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle. 4 Isilah konfigurasi instalasi yang akan dibuat. Oracle Home Location : biasanya terisi otomatis dgn drive yang paling banyak

Lebih terperinci

Tutorial penggunaan CMS / Application By. Steph/IT/04/2010

Tutorial penggunaan CMS / Application By. Steph/IT/04/2010 Tutorial penggunaan CMS / Application By. Steph/IT/04/2010 Bab I Pengenalan dasar Website Ditek Jaya terdaftar dengan menggunakan nama domain http://www. ditekjaya.co.id Website Ditek Jaya dilengkapi dengan

Lebih terperinci

Pengenalan Sistem Informasi Pembangunan Daerah

Pengenalan Sistem Informasi Pembangunan Daerah Pengenalan Sistem Informasi Pembangunan Daerah Direktorat Perencanaan, Evaluasi dan Informasi Pembangunan Daerah Ditjen Bina Pembangunan Daerah Jawa Barat, 18-19 September 2017 Oleh : Ika Puji Astuti Tampilan

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1. Infrastruktur Sistem Penyewaan Dan Operasional Harian Setelah melakukan analisa dan pengembangan sistem, pada tahap selanjutnya akan lakukan proses implementasi sistem.

Lebih terperinci

LANGKAH INSTALL XAMPP DAN WORDPRESS DI PC KOMPUTER Oleh: Akhmad Syaiful, S.Kom

LANGKAH INSTALL XAMPP DAN WORDPRESS DI PC KOMPUTER Oleh: Akhmad Syaiful, S.Kom LANGKAH INSTALL XAMPP DAN WORDPRESS DI PC KOMPUTER Oleh: Akhmad Syaiful, S.Kom Bagi Anda yang ingin membuat website namun belum memiliki domain dan hosting sendiri, jangan berkecil hati dulu. Karena masih

Lebih terperinci

Teknik Informatika D3

Teknik Informatika D3 Teknik Informatika D3 Pengembangan Sistem E-Commerce Koneksi Basis Data dan Inklusi Berkas Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6285740278021

Lebih terperinci

HTML (HyperText Markup Language)

HTML (HyperText Markup Language) HTML (HyperText Markup Language) IMS HTML HyperText Markup Language adalah sebuah bahasa markah yang digunakan untuk membuat sebuah halaman web, menampilkan berbagai informasi di dalam sebuah penjelajah

Lebih terperinci

Pemrograman Web Berbasis Framework. Pertemuan 5 : Konsep MVC : View. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Pemrograman Web Berbasis Framework. Pertemuan 5 : Konsep MVC : View. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD Pemrograman Web Berbasis Framework Pertemuan 5 : Konsep MVC : View Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD hasan@uad.ac.id Pokok Bahasan Pendahuluan Penanganan HTML Penanganan Form Penanganan

Lebih terperinci

Sistem Informasi Persediaan Barang Jadi & Setengah Jadi

Sistem Informasi Persediaan Barang Jadi & Setengah Jadi Sistem Informasi Persediaan Barang Jadi & Setengah Jadi No Kode Program : VBNET01 www.101peluangbisnis.com Bahasa Pemograman VB. NET + Database Ms. Access Terima kasih telah memilih aplikasi pengolahan

Lebih terperinci

Membuat Blog Menggunakan Wordpress

Membuat Blog Menggunakan Wordpress Membuat Blog Menggunakan Wordpress Pengertian Blog Blog atau Weblog adalah buku harian online yang diisi secara terus menerus secara periodik. Blog pada awalnya hanya dimiliki oleh artis dan selebriti

Lebih terperinci

3.1 APLIKASI YANG DITANGANI OLEH CODE GENERATOR

3.1 APLIKASI YANG DITANGANI OLEH CODE GENERATOR BAB III ANALISIS Bab ini berisi analisis mengenai aplikasi web target code generator, analisis penggunaan framework CodeIgniter dan analisis perangkat lunak code generator. 3.1 APLIKASI YANG DITANGANI

Lebih terperinci

Validasi Form dengan CakePHP

Validasi Form dengan CakePHP Validasi Form dengan CakePHP Oleh: Cecep Yusuf Di sini akan dipelajari bagaimana cara membuat validasi server pada model untuk form dengan menggunakan framework CakePHP. Hmm.. Sudah lama juga saya tidak

Lebih terperinci

Modul Pembuatan Website Menggunakan

Modul Pembuatan Website Menggunakan Design : www.mhdsyarif.p.ht Modul Pembuatan Website Menggunakan Versi 3.5.1 07-08 Mei 2013 Oleh : Divisi Web Puskom UR http://puskom.unri.ac.id Daftar Isi Daftar Isi...i A. Install XAMPP... 1 B. Install

Lebih terperinci

9. Membuat Halaman Transaksi Penjualan

9. Membuat Halaman Transaksi Penjualan 9. Membuat Halaman Transaksi Penjualan Pada proses permintaan data pada web dinamik, diperlukan aplikasi database server yang akan memproses permintaan dari aplikasi webserver untuk menghubungkan pada

Lebih terperinci

Mahasiswa memahami Pengertian, fungsi, aplikasi untuk menjalankan JavaScript, cara menjalankan kode, cara memasukkan kode JavaScript ke dalam HTML

Mahasiswa memahami Pengertian, fungsi, aplikasi untuk menjalankan JavaScript, cara menjalankan kode, cara memasukkan kode JavaScript ke dalam HTML Pengenalan JavaScript Standar Kompetensi Mahasiswa memahami Pengertian, fungsi, aplikasi untuk menjalankan JavaScript, cara menjalankan kode, cara memasukkan kode JavaScript ke dalam HTML Indikator Hasil

Lebih terperinci

Pengenalan JavaScript

Pengenalan JavaScript Pengenalan JavaScript Tujuan - Mahasiswa memahami konsep dasar Javascript - Mahasiswa mampu memahami cara menggunakan Javascript - Mahasiswa mampu memahami dasar variabel di Javascript - Mahasiswa mampu

Lebih terperinci

PRAKTIKUM. Rekayasa Web. Modul 2: CRUD CodeIgniter Part I. Laboratorium Teknik Informatika Universitas Pasundan

PRAKTIKUM. Rekayasa Web. Modul 2: CRUD CodeIgniter Part I. Laboratorium Teknik Informatika Universitas Pasundan PRAKTIKUM Rekayasa Web Modul 2: CRUD CodeIgniter Part I Laboratorium Teknik Informatika Universitas Pasundan Konten modul: 1. Read Data 2. Create Data 3. Delete Data Tujuan praktikum: 1. Praktikan diharapkan

Lebih terperinci

Membangun Toko Online yang Murah Bergairah

Membangun Toko Online yang Murah Bergairah Membangun Toko Online yang Murah Bergairah Jika Anda ingin berbisnis dengan cara berjualan di Internet dan telah memiliki produk, Anda dapat membuat toko online. Beberapa tahun yang lalu, pembuatan toko

Lebih terperinci

SISTEM INFORMASI DELIVERY ORDER PADA RESTORAN HOKI MEMANG BENTO BERBASIS PHP

SISTEM INFORMASI DELIVERY ORDER PADA RESTORAN HOKI MEMANG BENTO BERBASIS PHP MAKALAH UAS SISTEM INFORMASI DELIVERY ORDER PADA RESTORAN HOKI MEMANG BENTO BERBASIS PHP NAMA KELAS : ARYA PUJIANTO : IK-202 BAB I Latar Belakang Perkembangan teknologi yang semakin tinggi menuntut layanan

Lebih terperinci

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA BAHAN AJAR TEKNOLOGI INFORMASI

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA BAHAN AJAR TEKNOLOGI INFORMASI No. BAK/TBB/TBB204/05 Revisi : 00 Tgl. 19 Agustus 2009 Hal 1 dari 9 BAB IV PANDUAN MEMBUAT BLOG DI WORDPRESS.COM A. Pendahuluan Blog merupakan singkatan dari "web log". Blog adalah bentuk aplikasi website

Lebih terperinci

MODUL PRAKTIKUM BASIS DATA TEKNIK INFORMATIKA UIN SUNAN KALIJAGA YOGYAKARTA 2011 PENGENALAN DATABASE MYSQL

MODUL PRAKTIKUM BASIS DATA TEKNIK INFORMATIKA UIN SUNAN KALIJAGA YOGYAKARTA 2011 PENGENALAN DATABASE MYSQL MODUL PRAKTIKUM BASIS DATA TEKNIK INFORMATIKA 2011 PENGENALAN DATABASE MYSQL Praktikum ke-1 A. Pengenalan MySQL MySQL merupakan software yang tergolong sebagai DBMS (Database Management System) yang bersifat

Lebih terperinci

Pengembangan Aplikasi dengan Laravel Langkah-Langkah Pembangunan Website. Husni

Pengembangan Aplikasi dengan Laravel Langkah-Langkah Pembangunan Website. Husni Pengembangan Aplikasi dengan Laravel Langkah-Langkah Pembangunan Website Husni Husni@Trunojoyo.ac.id Outline Struktur direktori Laravel Memahami rute dalam web.php Mengubah home page Laravel Menambah halaman

Lebih terperinci

TUGAS 1 APLIKASI WEB DINAMIS LANJUT MENGENAL COMPOSER DAN GITHUB DISUSUN OLEH: AHMAD DAHLAN AL-ASY ARI( )

TUGAS 1 APLIKASI WEB DINAMIS LANJUT MENGENAL COMPOSER DAN GITHUB DISUSUN OLEH: AHMAD DAHLAN AL-ASY ARI( ) TUGAS 1 APLIKASI WEB DINAMIS LANJUT MENGENAL COMPOSER DAN GITHUB DISUSUN OLEH: AHMAD DAHLAN AL-ASY ARI(12141396) SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN ILMU KOMPUTER EL RAHMA YOGYAKARTA 2016 COMPOSER

Lebih terperinci

Gambar 1. Halaman Awal Website

Gambar 1. Halaman Awal Website Membuat Website Dengan Drupal CMS Oleh : Tim IT UMS Daftar Isi (Contents) A. Settingan Awal Website B. Membuat Menu (Site Navigation) C. Mengatur Posisi Menu D. Membuat Konten E. Membuat Kategori (Taxonomy)

Lebih terperinci

Bu k u Ma n u a l Web Si t e SK PD Pem er i n t a h K a b u pa t en Ma l a n g

Bu k u Ma n u a l Web Si t e SK PD Pem er i n t a h K a b u pa t en Ma l a n g Bu k u Ma n u a l Web Si t e SK PD 2016 Pem er i n t a h K a b u pa t en Ma l a n g Situs web Satuan Kerja Perangkat Daerah Pemerintah Kabupaten Malang didesain untuk bisa dirubah atau diupdate secara

Lebih terperinci

Gambar 1. Tampilan form karyawan

Gambar 1. Tampilan form karyawan Tutorial Panada Framework Chapter 4 : Validasi Form SamidCorner(Tegal Pembaca yang budiman. Masih bersama tutorial berseri dari Panada Framework, setelah pada chapter yang ketiga mengenai penggunaan form

Lebih terperinci

Cara Mudah Membuat Website

Cara Mudah Membuat Website Cara Mudah Membuat Website Oleh : Deryandri Ternyata membuat website itu mudah, dahulu mampu membuat website sudah canggih bagi orang orang awam, seiring dengan perkembangan ilmu pengetahuan membuat website

Lebih terperinci

Membuat Database mysql dengan PhpMyAdmin

Membuat Database mysql dengan PhpMyAdmin Materi artikel : Membuat database mysql dengan PhpMyadmin View Insert Edit Delete Searching Membuat Hitcounter dengan file teks Syarat : Mengerti penggunaan tag HTML Browser dapat mengenali sintak Php

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1. Implementasi Sistem 4.1.1. Spesifikasi Kebutuhan Perangkat Keras Dalam pembuatan aplikasi tes berbasis web menggunakan framework Yii dan database MySQL, terdapat

Lebih terperinci

BAB IV DISKRIPSI KERJA PRAKTIK. 1. Studi Literatur dan Identifikasi Permasalahan. seluruh permasalahan dalam tugas khusus ini.

BAB IV DISKRIPSI KERJA PRAKTIK. 1. Studi Literatur dan Identifikasi Permasalahan. seluruh permasalahan dalam tugas khusus ini. BAB IV DISKRIPSI KERJA PRAKTIK 4.1. Metodologi Pembuatan tugas khusus ini terbagi menjadi beberapa tahap yang tertera sebagai berikut : 1. Studi Literatur dan Identifikasi Permasalahan Studi literatur

Lebih terperinci

Syntax HTML. Biasanya digunakan untuk menulis komentar, tidak akan timbul dihalaman web.

Syntax HTML. Biasanya digunakan untuk menulis komentar, tidak akan timbul dihalaman web. Syntax HTML Pada tulisan Saya kali ini, Saya memberikannya beserta contoh kode dan gambar, ada beberapa yang Saya tidak beri kode dan gambar, kode, dan gambar sekalipun karena beberapa alasan : Kurangnya

Lebih terperinci

Administrasi Website Berbasis CPanel Hosting

Administrasi Website Berbasis CPanel Hosting Administrasi Website Berbasis CPanel Hosting Disusun oleh: Agus Suhartono 2 Daftar ISI DAFTAR ISI...3 PENDAHULUAN...5 PETA JALAN...5 DOMAIN DAN HOSTING...7 MEMULAI CPANEL...9 LOGIN KE DALAM CPANEL...9

Lebih terperinci

PEDOMAN TEKNIS SISTEM PENGELOLAAN DATABASE JALAN PROPINSI DAN KABUPATEN/KOTA

PEDOMAN TEKNIS SISTEM PENGELOLAAN DATABASE JALAN PROPINSI DAN KABUPATEN/KOTA 7 LAMPIRAN PERATURAN MENTERI PEKERJAAN UMUM REPUBLIK INDONESIA NOMOR 18/PRT/M/2011 TENTANG PEDOMAN TEKNIS SISTEM PENGELOLAAN DATABASE JALAN PROVINSI DAN KABUPATEN/KOTA PEDOMAN TEKNIS SISTEM PENGELOLAAN

Lebih terperinci

Web Design Servise. Web Design, Web Maintenance, Web Hosting, Domaine, Streaming. Tutorial Toko Online

Web Design Servise. Web Design, Web Maintenance, Web Hosting, Domaine, Streaming. Tutorial Toko Online Web Design Servise Web Design, Web Maintenance, Web Hosting, Domaine, Streaming www.jasawebjoomla.com www.oktamediahost.com Tutorial Toko Online Tutorial VirtueMart / Toko Online Joomla Cara Menambahkan

Lebih terperinci

IAIN WALISONGO SEMARANG

IAIN WALISONGO SEMARANG PPG BLOG DI FAKULTAS TARBIYAH IAIN WALISONGO SEMARANG SEMARANG, 27 NOVEMBER 2014 OLEH PUSAT TEKNOLOGI INFORMASI DAN PANGKALAN DATA IAIN WALISONGO SEMARANG Cara Instal Web Server - XAMPP di Windows 1. Download

Lebih terperinci

User Guide to Create Competition

User Guide to Create Competition User Guide to Create Competition Daftar isi Fungsi Dasar... 1 Edit dan delete... 1 Mengaktifkan dan menonaktifkan... 1 Cara membuat kompetisi... 2 Memuka ucontest.info... 2 Konfirmasi melalui Email...

Lebih terperinci

Sistem Informasi Pendistribusian Penjualan Velg

Sistem Informasi Pendistribusian Penjualan Velg Sistem Informasi Pendistribusian Penjualan Velg No Kode Program : VBNET02 www.101peluangbisnis.com Bahasa Pemograman VB. NET + Database Ms. Access Terima kasih telah memilih aplikasi pengolahan data di

Lebih terperinci

Pemrograman PHP & MySQL

Pemrograman PHP & MySQL Pemrograman PHP & MySQL Memadukan antara Web Server dan Database Server Pemrograman PHP & MySQL Pada awalnya PHP merupakan singkatan dari Personal Home Page tools, sebuah tool (alat bantu) untuk memonitor

Lebih terperinci

Halaman ini pada umumnya tidak berbeda dengan halaman Home sebelum. Login. Yang membedakan pada halaman ini yaitu pada bagian center ditampilkan

Halaman ini pada umumnya tidak berbeda dengan halaman Home sebelum. Login. Yang membedakan pada halaman ini yaitu pada bagian center ditampilkan 219 Halaman ini pada umumnya tidak berbeda dengan halaman Home sebelum Login. Yang membedakan pada halaman ini yaitu pada bagian center ditampilkan beberapa istilah-istilah yang berhubungan dengan produk

Lebih terperinci

TUGAS 1 WEB DINAMIS LANJUT

TUGAS 1 WEB DINAMIS LANJUT TUGAS 1 WEB DINAMIS LANJUT Disusun oleh : NIM : 12131349 NAMA : SURYADI PROGRAM STUDI : TEKNIK INFORMATIKA JENJANG : SARJANA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN ILMU KOMPUTER EL RAHMA YOGYAKARTA 2016

Lebih terperinci

BAB IV Hasil Dan Analisis

BAB IV Hasil Dan Analisis BAB IV Hasil Dan Analisis Implementasi Sistem a. Pemasangan Database pada database server Pada tahap ini diperlukan database server Microsoft SQL Server 2008 atau yang lebih tinggi, lalu dengan menggunakan

Lebih terperinci

BAB III PEMBAHASAN 3.1 Analisa Sistem

BAB III PEMBAHASAN 3.1 Analisa Sistem BAB III PEMBAHASAN 3.1 Analisa Sistem Sistem Nursing Diagnostic Test Online adalah aplikasi berbasis web yang menyediakan test secara online yang bersifat try out yang dapat diakses oleh pengguna yang

Lebih terperinci

Belajar Membuat Blog Wordpress Secara Offline dengan XAMPP Server

Belajar Membuat Blog Wordpress Secara Offline dengan XAMPP Server Belajar Membuat Blog Wordpress Secara Offline dengan XAMPP Server Pada kesempatan ini saya akan membahas mengenai cara belajar membuat blog wordpress secara offline (tanpa tersambung ke internet) dengan

Lebih terperinci

BAB 4 PERANCANGAN SISTEM DAN EVALUASI. perancangan diagram UML (use case, activity, class, dan sequence), perancangan

BAB 4 PERANCANGAN SISTEM DAN EVALUASI. perancangan diagram UML (use case, activity, class, dan sequence), perancangan 41 BAB 4 PERANCANGAN SISTEM DAN EVALUASI 4.1 Perancangan Sistem Hal-hal yang akan dilakukan dalam perancangan aplikasi antara lain : perancangan diagram UML (use case, activity, class, dan sequence), perancangan

Lebih terperinci

BAB IV IMPLEMENTASI KARYA. bagian yaitu, header, content, dan footer. Kerangka ini dibuat untuk mengatur

BAB IV IMPLEMENTASI KARYA. bagian yaitu, header, content, dan footer. Kerangka ini dibuat untuk mengatur 4.1 Kerangka dan Desain Website BAB IV IMPLEMENTASI KARYA Website PT Revtech Solution ini memiliki kerangka yang dibagi menjadi 3 bagian yaitu, header, content, dan footer. Kerangka ini dibuat untuk mengatur

Lebih terperinci

Aplikasi Document Imaging untuk PT. XYZ dapat diakses melalui web browser

Aplikasi Document Imaging untuk PT. XYZ dapat diakses melalui web browser 4.3.4 Petunjuk Pemakaian Sistem Aplikasi Document Imaging untuk PT. XYZ dapat diakses melalui web browser yang terhubung dengan internet. Berikut ini adalah detail prosedur pemakaian dari aplikasi tersebut.

Lebih terperinci

BAB 4 IMPLEMENTASI DAN EVALUASI. lunak dan personil yang dibutuhkan serta jadwal implementasi sistem tersebut.

BAB 4 IMPLEMENTASI DAN EVALUASI. lunak dan personil yang dibutuhkan serta jadwal implementasi sistem tersebut. BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Rencana Implementasi Untuk dapat mengimplementasikan sistem yang telah kami buat ini dengan baik, maka berikut ini adalah penjabaran prosedur yang diusulkan, perangkat

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada toko AnL store music akan dibuat sebuah aplikasi Website E-Commerce bertujuan untuk memudahkan pembeli atau customer serta masyarakat pada umumnya dalam mendapatkan informasi

Lebih terperinci

MANUAL PENGOPERASIAN JSTOCKINVENTORY Twitter

MANUAL PENGOPERASIAN JSTOCKINVENTORY Twitter MANUAL PENGOPERASIAN JSTOCKINVENTORY 2 www.jasaplus.com 082227927747 Twitter : @ringlayer email : ringlayer@gmail.com jasapluscom@yahoo.com DAFTAR ISI BAB 1. PENGENALAN DAN INSTALASI JSTOCKINVENTORY 1.1.

Lebih terperinci

Tutorial Laravel Dasar Part I

Tutorial Laravel Dasar Part I Tutorial Laravel Dasar Part I Oleh: Cecep Yusuf kali ini kita akan belajar mempelajari Laravel mulai dari dasar hingga mahir. Untuk koleksi tutorial utama saya (Tutorial CakePHP Dasar Part I s/d IV) sepertinya

Lebih terperinci

BAB IV IMPLEMENTASI DAN EVALUASI. mempersiapkan kebutuhan system (baik hardware maupun software), persiapan

BAB IV IMPLEMENTASI DAN EVALUASI. mempersiapkan kebutuhan system (baik hardware maupun software), persiapan BAB IV IMPLEMENTASI DAN EVALUASI 4.1 Implementasi Di dalam tahap implementasi ini terdapat 3 sub tahap, yaitu mempersiapkan kebutuhan system (baik hardware maupun software), persiapan instalasi aplikasi,

Lebih terperinci

LAPORAN PRAKTIKUM TEKNOLOGI FRAMEWORK PERTEMUAN KE 1

LAPORAN PRAKTIKUM TEKNOLOGI FRAMEWORK PERTEMUAN KE 1 LAPORAN PRAKTIKUM TEKNOLOGI FRAMEWORK PERTEMUAN KE 1 INSTALLASI FRAMEWORK YII DAN MENGGUNAKAN GENERATOR Disusun oleh BUJANG PUTRO WICAKSONO 135610046 JURUSAN SISTEM INFORMASI SEKOLAH TINGGI MANAJEMEN INFORMATIKA

Lebih terperinci

Cara Membuat status YM muncul di website

Cara Membuat status YM muncul di website Cara Membuat status YM muncul di website mau tau Cara Membuat status YM muncul di website? Caranya Mudah saja : Tinggal Copykan script dibawah ini dibagian yang anda inginkan :

Lebih terperinci

Tahap Instalasi PostgreSQL di Windows

Tahap Instalasi PostgreSQL di Windows Tahap Instalasi PostgreSQL di Windows 1. Unduh file installer PostgreSQL terbaru dari alamat http://www.enterprisedb.com/productsservices-training/pgdownload#windows 2. Setelah file installer berhasil

Lebih terperinci

3. Setelah ada notifikasi sukses, sistem kami akan mengirimkan aktivasi ke alamat yang Anda gunakan pada saat registrasi. Buka terse

3. Setelah ada notifikasi sukses, sistem kami akan mengirimkan  aktivasi ke alamat  yang Anda gunakan pada saat registrasi. Buka  terse Tutorial Media Owner Registrasi Media Owner 1. Klik tombol REGISTER di bagian kanan atas halaman web. 2. Masukkan informasi username, password dan email untuk membuat akun. Pilih peran Anda sebagai Media

Lebih terperinci

Langkah Langkah Membuat Blog Secara Offline Menggunakan Wordpress

Langkah Langkah Membuat Blog Secara Offline Menggunakan Wordpress Langkah Langkah Membuat Blog Secara Offline Menggunakan Wordpress Langkah pertama yang harus dilakukan adalah menginstall web server. Web server yang akan kita bahas adalah Apache. Mengapa harus Apache?

Lebih terperinci

REKAYASA WEB SESI - 2 Dosen : Tri Ari Cahyono, S.Kom, M.Kom

REKAYASA WEB SESI - 2 Dosen : Tri Ari Cahyono, S.Kom, M.Kom REKAYASA WEB SESI - 2 Dosen : Tri Ari Cahyono, S.Kom, M.Kom ------------------------------------------------------------------------------ INSTALASI AURACMS Download terlebih dahulu file script AuraCMS

Lebih terperinci

CHAPTER 6. Sebelum membuat starter data, kita perlu meng-create collections terlebih dahulu. Buat folder lib pada folder aplikasi.

CHAPTER 6. Sebelum membuat starter data, kita perlu meng-create collections terlebih dahulu. Buat folder lib pada folder aplikasi. CHAPTER 6 Untuk membuat collections, hal pertama yang dilakukan adalah menambahkan baris baru ke dalam file Javascript yang memungkinkan user untuk membuat collections. Sebelumnya, image tersimpan dalam

Lebih terperinci

Trik Mudah Membuat CMS Website dari Nol

Trik Mudah Membuat CMS Website dari Nol Trik Mudah Membuat CMS Website dari Nol Trik Mudah Membuat CMS Website dari Nol Rohi Abdulloh PENERBIT PT ELEX MEDIA KOMPUTINDO Trik Mudah Membuat CMS Website dari Nol Rohi Abdulloh 2016, PT Elex Media

Lebih terperinci