TAMPIL KURSUS

This commit is contained in:
HANIF FEBRIANSYAH 2024-08-26 00:19:41 +07:00
parent e19b346a64
commit 8fdc0b70c4
7 changed files with 164 additions and 34 deletions

View File

@ -2,12 +2,14 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Models\DataKursus; // Pastikan model diimport
use Illuminate\Http\Request; use Illuminate\Http\Request;
class AdminDataKursusController extends Controller class AdminDataKursusController extends Controller
{ {
public function index() public function index()
{ {
return view('admin.dataKursusAdmin'); $courses = DataKursus::all(); // Mengambil semua data dari tabel data_kursus
return view('admin.dataKursusAdmin', ['courses' => $courses]); // Mengirim data ke view
} }
} }

View File

@ -8,6 +8,7 @@ class UserDetailDataKursusController extends Controller
{ {
public function index() public function index()
{ {
return view('user.detailKursus'); $courses = DataKursus::all(); // Mengambil semua data dari tabel data_kursus
return view('user.detailKursus', compact('courses')); // Mengirim data ke view
} }
} }

12
app/Models/DataKursus.php Normal file
View File

@ -0,0 +1,12 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class DataKursus extends Model
{
use HasFactory;
protected $table = 'data_kursus';
}

View File

@ -0,0 +1,36 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up()
{
Schema::create('data_kursus', function (Blueprint $table) {
$table->id(); // Kolom id dengan auto increment
$table->string('nama_kursus'); // Kolom nama_kursus
$table->string('img')->nullable(); // Kolom img (nullable jika tidak wajib diisi)
$table->text('deskripsi'); // Kolom deskripsi
$table->string('paket'); // Kolom paket
$table->string('metode'); // Kolom metode
$table->text('fasilitas'); // Kolom fasilitas
$table->string('lokasi'); // Kolom lokasi
$table->decimal('latitude', 10, 7); // Kolom latitude (10 digit, 7 desimal)
$table->decimal('longitude', 10, 7); // Kolom longitude (10 digit, 7 desimal)
$table->timestamps(); // Kolom created_at dan updated_at
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('data_kursus');
}
};

View File

@ -3,52 +3,38 @@
<div class="container"> <div class="container">
<div class="py-10"> <div class="py-10">
<div class="relative overflow-x-auto shadow-md sm:rounded-lg"> <div class="relative overflow-x-auto shadow-md sm:rounded-lg">
<table class="w-full text-sm text-left rtl:text-right text-gray-500"> <table class="w-full text-sm text-left rtl:text-right text-gray-500">
<thead class="text-xs text-gray-700 uppercase bg-gray-50"> <thead class="text-xs text-gray-700 uppercase bg-gray-50">
<tr> <tr>
<th scope="col" class="px-6 py-3"> <th scope="col" class="px-6 py-3">No</th>
No <th scope="col" class="px-6 py-3">Nama Kursus</th>
</th> <th scope="col" class="px-6 py-3">Deskripsi</th>
<th scope="col" class="px-6 py-3"> <th scope="col" class="px-6 py-3">Gambar</th>
Nama Kursus <th scope="col" class="px-6 py-3">Aksi</th>
</th>
<th scope="col" class="px-6 py-3">
Deskripsi
</th>
<th scope="col" class="px-6 py-3">
Gambar
</th>
<th scope="col" class="px-6 py-3">
Aksi
</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@foreach ($courses as $index => $course)
<tr class="odd:bg-white even:bg-gray-50"> <tr class="odd:bg-white even:bg-gray-50">
<th scope="row" class="px-6 py-4 font-medium text-gray-900 whitespace-nowrap"> <th scope="row" class="px-6 py-4 font-medium text-gray-900 whitespace-nowrap">
1 {{ $index + 1 }}
</th> </th>
<td class="px-6 py-4"> <td class="px-6 py-4">
Kampung Inggris LC - Language Center {{ $course->nama_kursus }}
</td> </td>
<td class="px-6 py-4"> <td class="px-6 py-4">
Jl. Langkat No.88, Singgahan, Pelem, Kec. Pare, Kabupaten Kediri, Jawa Timur 64213 {{ $course->deskripsi }}
0858-5611-1118
Instagram:
@kampunginggrislc
</td> </td>
<td class="px-6 py-4"> <td class="px-6 py-4">
<img src="{{ asset('img/Rectangle 294.png') }}" class="w-72 h-auto object-cover" alt=""> <img src="{{ asset('storage/' . $course->img) }}" class="w-72 h-auto object-cover" alt="">
</td> </td>
<td class="px-6 py-4 flex space-x-2"> <td class="px-6 py-4 flex space-x-2">
<a href="#" <a href="#" class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Edit</a>
class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Edit</a> <a href="#" class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Hapus</a>
<a href="#"
class="font-medium text-white hover:underline py-2 px-4 bg-[#4F7F81] rounded-xl">Hapus</a>
</td> </td>
</tr> </tr>
@endforeach
</tbody> </tbody>
</table> </table>
</div> </div>

View File

@ -1 +1,89 @@
w <x-adminlayout>
<div class="container">
<div class="py-10">
<form action="#" method="POST" enctype="multipart/form-data">
@csrf
<div class="grid gap-6 mb-6 md:grid-cols-2">
<!-- Nama Kursus -->
<div>
<label for="nama_kursus" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Nama Kursus</label>
<input type="text" id="nama_kursus" name="nama_kursus"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Nama Kursus" required />
</div>
<!-- Gambar -->
<div>
<label for="img" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Gambar</label>
<input type="file" id="img" name="img"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
required />
</div>
<!-- Deskripsi -->
<div>
<label for="deskripsi" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Deskripsi</label>
<textarea id="deskripsi" name="deskripsi"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Deskripsi" required></textarea>
</div>
<!-- Paket -->
<div>
<label for="paket" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Paket</label>
<input type="text" id="paket" name="paket"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Paket" required />
</div>
<!-- Metode -->
<div>
<label for="metode" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Metode</label>
<input type="text" id="metode" name="metode"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Metode" required />
</div>
<!-- Fasilitas -->
<div>
<label for="fasilitas" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Fasilitas</label>
<textarea id="fasilitas" name="fasilitas"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Fasilitas" required></textarea>
</div>
<!-- Lokasi -->
<div>
<label for="lokasi" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Lokasi</label>
<input type="text" id="lokasi" name="lokasi"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Lokasi" required />
</div>
<!-- Latitude -->
<div>
<label for="latitude" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Latitude</label>
<input type="text" id="latitude" name="latitude"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Latitude" required />
</div>
<!-- Longitude -->
<div>
<label for="longitude" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Longitude</label>
<input type="text" id="longitude" name="longitude"
class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder="Longitude" required />
</div>
</div>
<button type="submit"
class="text-white bg-blue-700 hover:bg-blue-800 focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg text-sm w-full sm:w-auto px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800">Submit</button>
</form>
</div>
</div>
</x-adminlayout>

View File

@ -12,7 +12,11 @@
Route::get('/admin/dashboard', [AdminDashboardController::class, 'index'])->name('admin.home'); Route::get('/admin/dashboard', [AdminDashboardController::class, 'index'])->name('admin.home');
Route::get('/admin/data-kursus', [AdminDataKursusController::class, 'index'])->name('admin.dataKursus'); Route::get('/admin/data-kursus', [AdminDataKursusController::class, 'index'])->name('admin.dataKursus');
// Route::get('/admin/tambah-data-kursus', [AdminTambahDataKursusController::class, 'create'])->name('admin.tambahDataKursus'); Route::get('/admin/tambahData', [AdminTambahDataKursusController::class, 'create'])->name('admin.tambahDataKursus');
Route::get('/admin/courses', [AdminDataKursusController::class, 'index']);
Route::get('/login', [LoginController::class, 'index'])->name('login'); Route::get('/login', [LoginController::class, 'index'])->name('login');
// Route::post('/login', [LoginController::class, 'login'])->name('login.post'); // Route::post('/login', [LoginController::class, 'login'])->name('login.post');
@ -20,3 +24,4 @@
Route::get('/kursus', [UserKursusController::class, 'index'])->name('user.kursus'); // Perbaikan pada rute ini Route::get('/kursus', [UserKursusController::class, 'index'])->name('user.kursus'); // Perbaikan pada rute ini
Route::get('/peta', [UserPetaController::class, 'index'])->name('user.peta'); Route::get('/peta', [UserPetaController::class, 'index'])->name('user.peta');
Route::get('/detailKursus', [UserDetailDataKursusController::class, 'index'])->name('user.detailKursus'); Route::get('/detailKursus', [UserDetailDataKursusController::class, 'index'])->name('user.detailKursus');