X

Wednesday, March 30, 2022

Cara Mudah Membuat CRUD di Laravel

Halo sobat programmer, kali ini kita akan membahas hal dasar Laravel yaitu tentang bagaimana cara membuat CRUD di Laravel. CRUD merupakan singkatan dari Create Read Update Delete, yang merupakan aksi-aksi yang diperlukan dalam mengelola database. Pada contoh kali ini kita akan mencoba melakukan CRUD tabel user, dimana tabel ini biasanya terbentuk otomatis setelah melakukan migration.

Berikut langkah-langkah dalam membuat CRUD di Laravel :

1. Buat project baru dengan nama "coba"

2. Buat database dengan nama "coba"

3. Jalankan perintah php artisan migrate, akan muncul tabel user di database

4. Buat Controller dengan nama UserController, ketikkan perintah php artisan make:controller UserController


<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\User;

class UserController extends Controller
{
public function index()
{
$data = User::get();
return view('user', ['data'=>$data]);
}
public function form()
{
$data = new User;
return view('form', ['data'=>$data, 'url'=>route('simpan')]);
}
public function hapus($id)
{
User::where('id', '=', $id)->delete();
return redirect()->route('user');

}
public function simpan(Request $request)
{
$validated = $request->validate([
'name' => 'required|unique:users',
'email' => 'required|unique:users',
'password' => 'required'
]);
// $input = $request->except(['_token']);

$form['name'] = $request->name;
$form['email'] = $request->email;
$form['password'] = bcrypt($request->password);

User::insert($form);
return redirect()->route('user');
}
public function simpan_edit($id, Request $request)
{
$validated = $request->validate([
'name' => 'required|unique:users,name,'.$id,
'email' => 'required|unique:users,email,'.$id,
'password' => 'required'
]);

$form['name'] = $request->name;
$form['email'] = $request->email;
$form['password'] = bcrypt($request->password);

User::where('id', '=', $request->id)->update($form);
return redirect()->route('user');
}
public function edit($id)
{
$data = User::where('id', '=', $id)->first();
return view('form', ['data'=>$data, 'url'=>url('simpan_edit')."/".$id]);

}
}
5. Buat view di resources/views/ dengan nama user.blade.php.

<!DOCTYPE html>
<html>
<head>
<title>Tabel User</title>
</head>
<body>
<a href="{{route('tambah')}}">Tambah</a>
<br>
<br>
<table border="1" style="padding: 2px;">
<thead>
<tr>
<td>Nama</td>
<td>Email</td>
<td>Password</td>
<td>Aksi</td>
</tr>
</thead>
<tbody>
@foreach($data as $item)
<tr>
<td> {{$item->name}} </td>
<td> {{$item->email}} </td>
<td> {{$item->password}} </td>
<td> <button><a href="{{url('hapus')}}/{{$item->id}}">Hapus</a></button>
<button><a href="{{url('edit')}}/{{$item->id}}">Edit</a></button></td>
</tr>
@endforeach
</tbody>
</table>
</body>
</html>
6. Buat view di resources/views/ dengan nama form.blade.php.

<!DOCTYPE html>
<html>
<head>
<title>Tambah/Edit Data</title>
</head>
<body>

<form action="{{$url}}" method="post">
@csrf
<label>Nama</label>
<br>
<input type="text" name="name" value="{{$data->name}}">
<input type="text" name="id" value="{{$data->id}}" style="display: none;">
<br>
@error('name')
<div>{{ $message }}</div>
@enderror
<br>
<label>Email</label>
<br>
<input type="text" name="email" value="{{$data->email}}">
<br>
@error('email')
<div>{{ $message }}</div>
@enderror
<br>
<label>Password</label>
<br>
<input type="password" name="password">
<br>
@error('password')
<div>{{ $message }}</div>
@enderror
<br>
<button>Simpan</button>
<br>
<br>
</form>
</body>
</html>
7. Tambahkan route di Routes/web.php seperti berikut :
	
<?php

use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', 'App\Http\Controllers\UserController@index')->name('user');
Route::get('/tambah', 'App\Http\Controllers\UserController@form')->name('tambah');
Route::get('/hapus/{id}', 'App\Http\Controllers\UserController@hapus')->name('hapus');
Route::get('/edit/{id}', 'App\Http\Controllers\UserController@edit')->name('edit');
Route::post('/simpan', 'App\Http\Controllers\UserController@simpan')->name('simpan');
Route::post('/simpan_edit/{id}', 'App\Http\Controllers\UserController@simpan_edit')->name('simpan_edit');
8. Jalankan aplikasi, kemudian tes semua fitur mulai dari tambah data, hapus, dan edit data.

Thursday, March 24, 2022

Laravel Cara Menggunakan Passport Sebagai Authentikasi Token API

Secara default laravel menggunakan sanctum untuk membuat Authentikasi Token API. Namun pengguna dapat menggunakan package lain untuk membuat Authentikasi Token API salah satunya yaitu Passport.

Berikut cara pemasangan Passport pada Laravel :

1. Buka atau Buat project baru Laravel beserta databasenya (tabel biarkan kosong). 


2. Sebelumnya untuk mempermudah dalam pengetesan nantinya silahkan pasang Bootstrap Auth
 

3. Setelah terpasang lanjut untuk memasang package passport dengan menggunakan perintah "composer require laravel/passport" pada terminal.
 

4. Lakukan migration dengan perintah php artisan migrate kemudian install passport php artisan passport:install
 

5. Buka app\Models\User.php, cari kode use Laravel\Sanctum\HasApiTokens; ganti menjadi use Laravel\Passport\HasApiTokens;
 

6. Buka app\Providers\AuthServiceProvider.php kemudian tambahkan code use Laravel\Passport\Passport; di atas class AuthServiceProvider extends ServiceProvider.
 

7. Buka config\auth.php cari kode :


'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],
    ],

Ubah menjadi

'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],
        'api' => [
            'driver' => 'passport',
            'provider' => 'users',
        ],
    ],

8. Jalankan perintah "php artisan passport:install --uuids".

9. Buka routes\api.php tambahkan kode Route::post('/login', 'App\Http\Controllers\Auth\LoginController@login')->name('login');.

10. Buka app\Http\Controllers\Auth\LoginController.php. Isi sesuai dengan code di bawah :

<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\AuthenticatesUsers;

use Illuminate\Http\Request;

use App\Models\User;

class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/

use AuthenticatesUsers;

/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = RouteServiceProvider::HOME;

/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest')->except('logout');
}
public function login(Request $request)
{
$input = $request->all();

$this->validate($request, [
'email' => 'required',
// 'username' => 'required',
'password' => 'required',
]);

$fieldType = filter_var($request->email, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';

$arrayauthuser = [
$fieldType => $input['email'],
'password' => $input['password']
];



if(auth()->attempt($arrayauthuser))
{


$token = auth()->user()->createToken('isi_sesuai_keinginan')->accessToken;


return response()->json([
'token' => $token
], 200);



}else{
return response()->json([
"response" => [
"status" => 201,
"message" => "Failed"
],
"data" => null
], 201);
}
}
}

11. Sampai pada tahap pengetesan. Caranya buat akun baru melalui menu registrasi seperti pada gambar, jika tidak ada silahkan pasang Bootstrap Auth terlebih dahulu.


12. Buka Aplikasi Postman kemudian buat request seperti di bawah :



Url, email, password sesuaikan dengan web anda. Jika akun berhasil ditemukan akan muncul token seperti gambar di bawah :
 



 

Token inilah yang akan digunakan untuk Authentikasi apabila client API ingin melakukan request.


Laravel 8 Membuat Login Dengan Bootstrap Auth

Proses login merupakan bagian yang sangat utama dalam pembuatan website. Untuk membuat proses login pada laravel kita bisa menggunakan Boostrap Auth. Tinggal pasang sekali anda sudah bisa menggunakan fitur login, register, logout, forget password, profile, dan reset password.

Berikut tutorial membuat Login dengan Boostrap Auth.

1. Buat project baru dengan nama "login" (sesuaikan dengan keinginan anda).
2. Buka terminal atau cmd kemudian arahkan ke folder root project.
3. Ketikkan perintah "composer require laravel/ui", pastikan telah menginstall composer
4. Setelah ui terpasang sekarang ketikkan perintah "php artisan ui bootstrap --auth", kemudian tunggu hingga proses instalasi selesai.
5. Selanjutnya buat database dengan nama "login" (sesuaikan dengan keinginan).
6. Kembali ke terminal ketikkan perintah "php artisan migrate", perintah ini kan menjalankan migrate di folder database project. Dimana migration defaultnya akan membuat tabel user dan beberapa tabel lainnya.
7. Cek database apakah sudah terdapat tabel seperti pada gambar.



8. Jalankan web di browser. Jika anda belum menggunakan cara Menjalankan Project Laravel Menggunakan XAMPP, Laragon, atau WAMP tanpa port silahkan gunakan perintah "php artisan serve".
9. Berikut tampilan web setelah di pasang Boostrap auth

Tampilan Awal


 

Halaman Login



Halaman Dashboard


 

Halaman Register


10. Pasang css dan javascript bootstrap untuk mengaktifkan class yang telah terpasanga pada "resources/views/layouts/app.blade.php" tambahkan code berikut di atas tag "</head>":



	
<!-- boostrap -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>

11. Buka kembali web di browser dan tampilan akan berubah, contohnya seperti tampilan login akan menjadi seperti pada gambar di bawah :



Sunday, March 20, 2022

Menjalankan Project Laravel Menggunakan XAMPP, Laragon, atau WAMP

Jika biasanya untuk menjalankan project laravel kita menggunakan perintah "php artisan serve" pada terminal maka kali ini saya akan berbagi bagaimana cara menjalankan Project Laravel Menggunakan XAMPP, Laragon, atau WAMP.

Maksudnya kita akan menjalankan project sama halnya seperti ketika anda membangun aplikasi web native dimana website di tempatkan di folder root xampp, laragon, atau wamp.

Untuk caranya bisa anda simak di bawah ini :

1. Buat project baru seperti biasa dengan perintah "laravel new web", web = nama project. Hanya saja ketika membuat projectnya tempatkan di folder root, contoh htdocs untuk XAMPP atau www untuk Laragon.

2. Pastikan project sudah terpasang dengan sempurna dan bisa berjalan caranya. Untuk memastikannya bisa menggunakan perintah "php artisan serve", ini hanya untuk mengecek saja.

3. Setelah dipastikan project sudah aman, silahkan stop "php artisan serve" dengan cara CTRL-C untuk windows.

4. Buka folder utama project kemudian buat file dengan nama ".htaccess"

5. Isi .htaccess yang sudah di buat dengan kode di bawah :
	


<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>

RewriteEngine On

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]

RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php

</IfModule>


6. Jalankan project dengan menggunakan url "localhost/nama_web", pastikan XAMPP atau Laragon anda sudah berjalan.

Dengan menggunakan cara ini anda juga tidak perlu lagi menambahkan port ketika menjalankan project. Selain itu anda tidak harus bolak-balik mengecek terminal.

Wednesday, March 2, 2022

Membuat Controller Dengan Laravel

Sama halnya seperti Codeigniter, Laravel juga menerapkan sistem MVC (Model View Controller). Hal dasar yang perlu di pelajari untuk menggunakan Laravel adalah cara membuat controller.

Ada 2 cara yang bisa digunakan dalam membuat controller di laravel, pertama menggunakan terminal atau command line (di windows CMD), kedua dengan membuat langsung file controller secara manual.

Menggunakan Terminal, Commandline, atau CMD

Buka terminal atau cmd anda kemudian rahkan ke folder root project laravel yang sudah di buat. Ketikkan perintah php artisan make:controller DaftarController. "DaftarController" merupakan nama controller yang akan di buat.

Tunggu hingga pembuatan controller selesai kemudian buka app/Http/Controllers. Nanti akan muncul controller yang sudah di buat.

Membuat file langsung

Masuk ke app/Http/Controllers kemudian buat file baru dengan nama controller yang akan di buat misalnya DaftarController.php kemudian buka filenya dan isikan kode berikut :

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;


class DaftarController extends Controller
{

}

Perbedaan membuat controller menggunakan cmd dan manual, pada manual anda harus menuliskan code dasar controller secara manual sedangkan ketika menggunakan cmd code dasar tersebut langsung tergenerate.

Friday, February 11, 2022

Mengenal C++ dan Sejarah C++ Secara Lengkap


 

Salah satu bahasa pemrograman yang penting untuk dipelajari bagi Anda yang ingin jadi seorang programer adalah C++. Ulasan kali ini akan membahas tentang apa itu C++ dan juga sejarah c++ itu sendiri.


Apa itu C++

Sebelum membahas tentang sejarah c++, tentunya baik adanya jika Anda mengenal apa itu C++. Bahasa program yang satu ini dibuat oleh seorang ilmuwan komputer yang bernama Bjorne Stroustrup. Dimana sebagian dari C++ ini adalah evolusi dari bahasa C itu sendiri. 


Dalam hal ni C++ ini adalah bahasa komputer yang berorientasi pada objek itu sendiri. Adapun bahasa yang satu ini sengaja dikembangkan dengan tujuan untuk meningkatkan lintas platform dari C itu sendiri. Hasilnya pengembangan tingkat kontrol jadi lebih tinggi, dari memori dan juga sumber daya sistem yang ada.


C++ ini juga memperkenalkan prinsip prinsip pemrograman yang berorientasi pada objek, termasuk menggunakan kelas yang telah ditentukan, pada kerangka bahasa pemrograman C itu sendiri. Seiring waktu bahasa yang satu ini tetap berguna, dan mampu mendukung berbagai prosedural dan fungsional yang ada.


Sejarah C++

Hingga saat ini, semenjak diperkenalkannya C++ tersebut, sudah jadi salah satu pilihan bahasa pemrograman untuk berbagai jenis aplikasi tertentu. Salah satu pemrograman C++ yang cukup populer digunakan adalah untuk membangun infrastruktur perangkat lunak besar, walau berada di sebuah aplikasi yang berjalan di sumber daya yang terbatas. Salah satunya karena C++ ini, mampu memanipulasi perangkat keras atau juga mein yang dijalankan secara langsung.


Seperti yang dibahas di atas tentang tipe data c++, dalam hal ini bahasa C++, dibuat oleh seseorang bernama Bjorne Stroustrup dan timnya di AT&T Bell laboratories di tahun 1979. Dimana C++ ini sendiri adalah sebuah bahasa pemrograman yang dapat digunakan secara umum.  Dimana pertama kali, prototype C++ muncul sebagai C yang dibuat secara canggih, dari bentuk awalnya, dalam hal ini dibekali dengan fasilitas kelas. Hingga membuat bahasa tersebut disebut dengan C dengan kelas atau C with Class.


Kemudian pada tahun 1983 hingga 1984, bahasa ini kemudian disempurnakan dengan menambahkan fasilitas overloading operator, dimana yang awal nya disebut dengan ‘a better c’, kemudian berganti nama di tahun 1983, yang kemudian jadi C++. Digunakannya simbol ++ ini, sebagai tanda dari operator yang naik, dibandingkan bahasa C umumnya. Yang artinya C++ ini lebih canggih dibandingkan dengan bahasa C itu sendiri.


Seiring berjalannya waktu, bahasa C++ terus berkembang menjadi sebuah standar yang baru, dan juga menggunakan beberapa modul baru yang berasal dari Boost perpustakaan. Tentunya standar baru C++ seperti ini akan sangat membantu para programer untuk membuat aplikasi secara lebih baik, dan lebih cepat.


Demikianlah beberapa ulasan tentang apa itu dan juga sejarah c++. Semoga ulasan kali ini bermanfaat untuk Anda.


Tags : Tentang sejarah C++, bahasa program C++, standar baru C++, mengenal sejarah C++.

Thursday, February 3, 2022

Ini Kelebihan Bahasa C dan Juga Kekurangannya Dibandingkan Bahasa Pemrograman Lain


 

Tahukah Anda dibanding bahasa pemrograman lainnya, bahasa C, mempunyai beberapa kelebihan dan kekurangannya tersendiri. Ulasan kali ini akan membahas tentang beberapa kelebihan bahasa c yang dimaksud dan juga kekurangannya. 


Kelebihan bahasa C

Berikut ini adalah beberapa kelebihan dari bahasa C tersebut, antara lain :

1.    Ada di hampir semua jenis komputer

Kelebihan bahasa c ini adalah sudah terdapat di hampir semua jenis komputer, baik itu komputer mikro, makro, bahkan hingga komputer mini. Selain itu, bahasa C ini juga mudah untuk digunakan, terutama oleh orang awam. Lantaran proses mempelajarinya tidak terlalu sulit, bahkan oleh pemula sekalipun.


2.    Sifatnya portable

Selain itu sifat bahasa C juga terbilang portable. Yang dimaksud dengan portable disini adalah, bahasa C yang ditulis dalam 1 komputer ternyata dapat dipindahkan ke komputer lain, tanpa harus mengotak atiknya kembali. Jika memang tidak muncul, maka Anda dapat mengeditnya atau bahkan memodifikasinya.


3.    Mempunyai banyak struktur

Adapun kelebihan dari tipe data c++ dalam hal ini bahasa C adalah sudah dilengkapi dengan banyak struktur data ada juga pengendalian proses. Dalam hal ini bahasa C mempunyai struktur bahasa yang baik, sehingga membuatnya mudah untuk dipelajari. Selain itu, jika terjadi kesalahan akan mudah untuk Dideteksi. Sifat inilah yang membuat bahasa C ini, mudah mendokumentasikan sebuah program tertentu.  


4.    Lebih mudah dipahami

Selain itu bahasa C ini lebih mudah dipahami, dibandingkan dengan bahasa pemrograman lainnya. ini akan jadi satu keuntungan menarik, untuk seorang programer, karena tidak perlu memahami lagi semua komponen komputer secara utuh.


Bahasa C ini juga mempunyai orientasi pada masalah yang ada, dan bukan pada mesin hasilnya apabila ditemukan masalah pada program, sistem ini akan mudah menyelesaikannya.  


5.    Manipulatif

Kelebihan lain dari Bahasa C ini adalah memungkinkan program untuk memanipulasi data. Ini yang kelak membuat pihak programer dapat manipulasi data dari bentuk bit  byte, atau bahkan memanipulasi sebuah alamat dari data atau juga pointer yang ada. 

  

Kekurangan bahasa C

Selain memiliki kelebihan, pastinya bahasa C ini juga mempunyai kekurangan. Berikut ini adalah beberapa kekurangan tersebut ;


1.    Terlalu fleksibel

Seperti diketahui bersama bahasa C ini terlalu fleksibel, hasilnya banyak programer yang kebingungan karenanya. Lantaran ada cukup banyak operator yang bekerja. Terutama bagi programer baru, tentu ini akan jadi sebuah kesulitan tersendiri.   


2.    Pointer 

Pointer sendiri adalah salah satu bagian penting dalam bahasa C, namun sampai saat ini tidak banyak pengguna yang mampu memahami atau bahkan menggunakan secara baik dan bahkan maksimal.
Demikianlah beberapa ulasan tentang deretan kelebihan bahasa c dan juga kekurangannya. Semoga ulasan kali ini akan memberikan informasi bermanfaat untuk Anda yang baru belajar tentang bahasa C tersebut.


Tags : Deretan kelebihan bahasa C, kekurangan bahasa C,  sifat bahasa C, bahasa C.