ساخت فرم ثبت نام با ذخیرهسازی در دیتابیس
ساخت فرم ثبت نام با فریم ورک لاراول
برای اضافه کردن دکمه ثبت نام در صفحه اصلی که فرم را باز کند و داده ها را در دیتابیس ذخیره کند، این مراحل را دنبال کنید:

- ایجاد Route ها
در فایل routes/web.php:web.phpuse App\Http\Controllers\Auth\RegisterController;Route::get('/register', [RegisterController::class, 'showRegistrationForm'])->name('register');Route::post('/register', [RegisterController::class, 'register']); - ایجاد کنترلر
Ubuntu 22.04cd first-websiteUbuntu 22.04docker exec laravel-app php artisan make:controller Auth/RegisterController - (دستور اول)
- (دستور دوم)
- ایجاد ویو ثبت نام
کد زیر را کپی کرده و در فایل resources/views/auth/register.blade.php پیست کنیدhtml<!DOCTYPE html><html lang="fa" dir="rtl"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><!--<title> ایجاد ویو ثبت نام</title>--><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet"></head><body><div class="container"><div class="row justify-content-center"><div class="col-md-8"><div class="card"><div class="card-header">ثبت نام</div><div class="card-body"><form method="POST" action="{{ route('register') }}">@csrf<div class="form-group row"><label for="name" class="col-md-4 col-form-label text-md-right">نام</label><div class="col-md-6"><input id="name" type="text" class="form-control " name="name" required autocomplete="name" autofocus></div></div><div class="form-group row"><label for="email" class="col-md-4 col-form-label text-md-right">ایمیل</label><div class="col-md-6"><input id="email" type="email" class="form-control " name="email" required autocomplete="email"></div></div><div class="form-group row"><label for="password" class="col-md-4 col-form-label text-md-right">رمز عبور</label><div class="col-md-6"><input id="password" type="password" class="form-control " name="password" required autocomplete="new-password"></div></div><div class="form-group row"><label for="password-confirm" class="col-md-4 col-form-label text-md-right">تکرار رمز عبور</label><div class="col-md-6"><input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password"></div></div><div class="form-group row mb-0"><div class="col-md-6 offset-md-4"><button type="submit" class="btn btn-primary">ثبت نام</button></div></div></form></div></div></div></div></div><script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script></body></html> - در مرورگر به آدرس زیر بروید
- اضافه کردن دکمه ثبت نام به صفحه اصلی
در فایل ویو صفحه اصلی (مثلاً resources/views/welcome.blade.php):html<a href="{{ route('register') }}" class="btn btn-primary">ثبت نام</a> - مشاهده نتایج در دیتابیس
- به phpMyAdmin بروید (آدرس: http://localhost:8080)
- با اطلاعات زیر وارد شوید:
- سرور: db
- کاربر: laravel
- رمز عبور: secret
- دیتابیس laravel را انتخاب کنید
- جدول users را باز کنید
- تست عملکرد سیستم
- به آدرس http://localhost:8000/register بروید
- فرم را پر کنید و ثبت نام کنید
- به phpMyAdmin مراجعه کنید و کاربر جدید را در جدول users ببینید
سپس محتوای app/Http/Controllers/RegisterController.php:
php
<?phpnamespace App\Http\Controllers\Auth;use App\Http\Controllers\Controller;use App\Models\User;use Illuminate\Http\Request;use Illuminate\Support\Facades\Hash;class RegisterController extends Controller{ public function showRegistrationForm() { return view('auth.register'); } public function register(Request $request) { $request->validate([ 'name' => 'required|string|max:255', 'email' => 'required|string|email|max:255|unique:users', 'password' => 'required|string|min:8|confirmed', ]); User::create([ 'name' => $request->name, 'email' => $request->email, 'password' => Hash::make($request->password), ]); return redirect('/')->with('success', 'ثبت نام با موفقیت انجام شد!'); }}
bash
docker exec laravel-app mkdir -p resources/views/auth
bash
docker exec laravel-app touch resources/views/auth/register.blade.php
bash
http://localhost:8000/register
فرمی به شکل زیر باید در این صفحه موجود باشد

بدین ترتیب اگر مراحل فوق را به درستی انجام داده باشید با کلیک روی دکمه ثبت نام به صفحه مربوط به ثبت نام هدایت خواهید شد.
برای مشاهده کاربران ثبت نام شده: