logout laravel

hallo , saya mau bertanyatentang logout di laravel

di router.php saya seperti ini:

dicontroller saya:

dihtml saya:

tapi saya dapat error dihtml. ada yang bisa tau? terima kasih

avatar bulqisk
@bulqisk

9 Kontribusi 1 Poin

Diperbarui 7 tahun yang lalu

11 Jawaban:

Logout kenapa harus pakai metode post ?

Coba rubah metode logout nya jadi get() jangan post()

// Taruh di html untuk menampilkan url logout
{{ url()->route('logout') }}

// Ini buat Controller logout nya
Auth::logout();
return redirect('/');

avatar riyanxp
@riyanxp

70 Kontribusi 50 Poin

Dipost 7 tahun yang lalu

hallo @riyannxp, saya uda ganti jadi get metode dan error yang keluar sekarang 'NotFoundHttpException'

dihtmlnya uda saja samain dengan code yang kamu tulis. di controller saya : \App\Http\Controllers\Auth\LoginController

dan sebenarnya saya aga bingung, soalnya saya ada 2 file buat routing, satu web.php (\routes\web.php ) atau di routes.php(vendor\laravel\src\illuminate\Routing/routes.php). dan saat ini saya nulis routenya di route.php

mungkin ada masukan? thanks :D

avatar bulqisk
@bulqisk

9 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

Pakai laravel versi berapa mas @bulqisk ?

avatar satmaxt
@satmaxt

46 Kontribusi 23 Poin

Dipost 7 tahun yang lalu

hallo mas @satmaxt, saya pake laravel yang terbaru 5.3 dan saya bukan mas2 :D terima kasih hehe

avatar bulqisk
@bulqisk

9 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

di App\Http\Controllers\Auth\LoginController coba tambahkan method logout seperti ini

public function logout(){
        Auth::logout();
        return redirect('/'); // ini untuk redirect setelah logout
    }

Buat route logout baru di routes\web.php

Route::get('/logout', 'Auth\LoginController@logout');

di htmlnya langsung aja seperti ini

<a href="{{ url('/logout') }}">Logout</a>

CMIIW

avatar satmaxt
@satmaxt

46 Kontribusi 23 Poin

Dipost 7 tahun yang lalu

hallo mas @satmaxt, errornya malahan kayak gni jadinya:

avatar bulqisk
@bulqisk

9 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

Revisi code di App\Http\Controllers\Auth\LoginController

public function logout(){
        \Auth::logout();
        return redirect('/'); // ini untuk redirect setelah logout
    }

avatar satmaxt
@satmaxt

46 Kontribusi 23 Poin

Dipost 7 tahun yang lalu

mas @satmaxt errornya malah jadi gini:

avatar bulqisk
@bulqisk

9 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

Error yang di komentar terkahir Class .. not exist, berarti di routenya mungkin salah ngasih Lokasi. Perhatikan lagi route nya, pastikan sesuai lokasi dimana class controllernya, kalo di taro di dalam folder auth, berarti harus ditambah nama folder sebelumnya

 Route::get('/logout', 'Auth\LoginController@logout');

Kalau errornya ...\Auth\Auth not found, berarti belum nambahin

use Auth

pas make kelasnya.

Saran, jangan ganti kode langsung yang ada di vendor, karena itu kode asli laravel, bakal sulit di maintenance. Di track ini juga sudah ada kelas untuk sistem authentikasinya https://sekolahkoding.com/track/tutorial-laravel

avatar hilmanski
@hilmanski

2665 Kontribusi 2131 Poin

Dipost 7 tahun yang lalu

@hilmanrdn skrg yang aku tanyain kenapa errornya ada didatabase ya (dia ga bisa baca tokennya)? pdahal klo aku liat databasenya sebenarnya ada tokennya.

terima kasih :)

avatar bulqisk
@bulqisk

9 Kontribusi 1 Poin

Dipost 7 tahun yang lalu

dari keterangan errornya, di table "users" ngga ada kolom dengan nama "remember_token"

avatar hilmanski
@hilmanski

2665 Kontribusi 2131 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban