فرم ها و HTML

  • نحوه باز نمودن یک فرم
  • حفاظت از CSRF
  • اتصال مدل های فرم
  • برچسب ها
  • متن، ناحیه نوشتن متن، پسورد و فیلد های مخفی
  • چک باکس ها و دکمه های رادیویی
  • ورودی فایل
  • لیست های drop down
  • دکمه ها
  • ماکرو های سفارشی شده

نحوه باز نمودن یک فرم

 

 

 

به طور پیش فرض، برای این عمل یک متد POST فرض می شود، اگرچه می توانید آزادانه از متد های دیگر نیز استفاده نمایید.

((‘echo Form::open(array(‘url’ => ‘foo/bar’, ‘method’ => ‘put

توجه: از آنجایی که فرم های HTML فقط متدهای POSTو Get را پشتیبانی می کنند، متد های PUT و DELETE  را میتوان با استفاده از یک فیلد مخفی _method به صورت خودکار به فرم اضافه کرد.

شما همچنین می توانید فرم هایی را باز کنید که به مسیرهای نامگذاری شده و یا اعمال کنترلر اشاره می کنند.

((‘echo Form::open(array(‘route’ => ‘route.name

((‘echo Form::open(array(‘action’ => ‘Controller@method

می توانید پارامترهای مسیر را هم انتقال دهید:

 

 

 

 

 

اگر فرم شما می خواهد آپلود کردن فایل هم بپذیرد، به آرایه خود یک گزینه Option اضافه کنید.

((echo Form::open(array(‘url’ =Z> ‘foo/bar’, ‘files’ => true

حفاظت از CSRF

لاراول متدهای آسانی برای حفاظت برنامه شما از درخواست های جعلی بین سایتی فراهم می آورد. در ابتدا، یک نشانه یا token تصادفی در session کاربری شما قرار داده می شود. این کار به صورت خودکار انجام می شود. نشانه CSRF به طور خودکار به عنوان یک فیلد مخفی به فرم شما اضافه می شود. اگر چه، اگر بخواهید برای فیلد مخفی HTML تولید کنید می توانید از متد Token استفاده کنید.

نحوه اضافه نمودن CSRF Token به یک فرم

                                                        ;()echo Form::token

نحوه متصل کردن فیلتر CSRF به یک مسیر

 

 

 

اتصال مدل های فرم

معمولا یک فرم را براساس محتویات یک مدل، درست کنید. برای انجام این کار، از متد Form::model  استفاده کنید.

نحوه باز کردن یک فرم مدل

 

 

اکنون، زمانیکه از یک عنصر، یک فرم تولید می کنید، مثل ورودی متن، مقدار مدل که با نام فیلد آن مطابقت دارد، به طور خودکار به عنوان مقدار فیلد تنظیم می شود. پس، به عنوان مثال برای یک ورودی متن با نام email مشخصه مدل کاربری email به عنوان مقدار آن، ست می شود.البته موارد بیشتری هم وجود دارد، اگر آیتمی در داده فلش session باشد که مطابق با نام ورودی باشد، بر مقدار مدل مقدم است و اولویت بیشتری دارد.

 

پس اولویت به شکل زیر خواهد بود:

داده فلش (session)داده ورودی قدیمی

ارزش داده شده واضح و آشکار

داده مشخصه مدل

این به شما اجازه می دهد که فرم ها را به سرعت بسازید که این فرم ها نه تنها به مدل وصل می شوند بلکه به آسانی می توانند در صورتی که خطای اعتبار سنجی در سرور وجود داشته باشد؛ مجددا ساخته شوند.

توجه: زمان استفاده از Form::model مطمئن شوید که با Form::close فرم خود را بسته باشید.

برچسب ها

نحوه تولید کردن یک عنصر label

                        ;(‘echo Form::label(’email’, ‘E-Mail Addres

نحوه مشخص کردن مشخصه های اضافی HTML

;((‘echo Form::label(’email’, ‘E-Mail Address’, array(‘class’ => ‘awesome

توجه: پس از ایجاد کردن یک label، هر عنصر فرم با نامی همنام با label را که ایجاد می کنید ، به طور خودکار یک ID همنام با نام label هم دریافت می کند.

متن، ناحیه نوشتن متن، پسورد و فیلد های مخفی

نحوه تولید یک ورودی متن

;(‘echo Form::text(‘username

نحوه مشخص کردن مقدار پیش فرض

;(‘echo Form::text(’email’, ‘example@gmail.com

توجه: متد های hidden و textarea اثری همانند اثر متد text دارند.

تولید یه ورودی کلمه عبور

;(‘echo Form::password(‘password

تولید فیلدهای ورودی متنی دیگر

;(()echo Form::email($name, $value = null, $attributes = array

                  ;(()echo Form::file($name, $attributes = array

چک باکس ها و دکمه های رادیویی

نحوه تولید کردن چک باکس یا ورودی رادیویی

;(‘echo Form::checkbox(‘name’, ‘value

;(‘echo Form::radio(‘name’, ‘value

نحوه تولید کردن یک چک باکس یا ورودی رادیویی که چک شده باشد

;(echo Form::checkbox(‘name’, ‘value’, true

 

;(echo Form::radio(‘name’, ‘value’, true

ورودی فایل

نحوه تولید کردن ورودی فایل

;(‘echo Form::file(‘image

لیست های drop down

نحوه تولید یک drop down list

;((‘echo Form::select(‘size’, array(‘L’ => ‘Large’, ‘S’ => ‘Small

نحوه تولید لیستی با پیش فرض های انتخاب شده

;(‘echo Form::select(‘size’, array(‘L’ => ‘Large’, ‘S’ => ‘Small’), ‘S

نحوه تولید لیست گروه بندی شده

 

 

 

نحوه تولید لیستی با بازه مشخص

 

;(echo Form::selectRange(‘number’, 10, 2

نحوه تولید لیستی با نام ماهها

;(‘echo Form::selectMonth(‘month

دکمه ها

نحوه تولید یک دکمه تایید submit

;(‘!echo Form::submit(‘Click Me

توجه: آیا می خواهید یک دکمه ایجاد کنید؟ متد button را امتحان کنید. این متد اثری همانند متد submit دارد.

ماکرو های سفارشی شده

تعریف “ماکرو ها” به عنوان کمک کننده های کلاس فرم کار بسیار ساده ای است. در اینجا توضیحی برای نحوه کارکرد آن می دهیم. ابتدا، یک ماکرو را به سادگی با نام داده شده و یک closure ثبت می کنیم.

نحوه ثبت کردن یک form macro

 

 

 

حال ماکروی را با استفاده از نام آن فراخوانی می کنیم.

نحوه فراخوانی یک ماکروی سفارشی شده

;()echo Form::myField

 

اسکرول به بالا