omnicode / lara-form by omnicode

Form for Laravel
10,667
2
1
Package Data
Maintainer Username: omnicode
Package Create Date: 2017-08-12
Package Last Update: 2019-11-19
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-05-03 15:05:24
Package Statistics
Total Downloads: 10,667
Monthly Downloads: 23
Daily Downloads: 0
Total Stars: 2
Total Watchers: 1
Total Forks: 1
Total Open Issues: 0

Lara Form - Laravel Form Package with Form Tampering protection

LaraForm is a Laravel Form wrapper with convenient methods, that includes Form Tampering protection and prevents double form submission.

Contents

  1. Installation
  2. Quick start
  3. Security
  4. Helpers
    • Create Form
    • Text Input
    • Textarea
    • Select
    • Checkbox
    • Radio Buttons
    • Hidden
    • Password
    • close
    • buttons
  5. License

Installation

At composer.json of your Laravel installation, add the following require line:

{
    "require": {
        "omnicode/lara-form": "~0.0"
    }
}

Run composer update to add the package to your Laravel app.

Laravel 5.0

At config/app.php, add the Service Provider and the Facade:

    'providers' => [
        // ...
	'LaraForm\ServiceProvider\LaraFormServiceProvider'
    ]

	//...

    'aliases' => [
        'LaraForm' => 'LaraForm\Facades\LaraForm'
    ]

Laravel 5.1+

At config/app.php, add the Service Provider and the Facade:

    'providers' => [
        LaraForm\ServiceProvider\LaraFormServiceProvider::class,
    ]

    //...

    'aliases' => [
        'LaraForm' => LaraForm\Facades\LaraForm::class,
    ]

Quick start

To create a simple form

{!! LaraForm::create($model, ['action' => route('posts.create') ]) !!}
					
{!! LaraForm::input('email') !!}

{!! LaraForm::submit('Submit') !!}

{!! LaraForm::end() !!}

Security

LaraForm has form tampering protection, this ensures that

  • Unknown fields cannot be added to the form
  • Existing fields cannot be removed from the form
  • Values of hidden inputs cannot be changed

Please note, however, that it will not prevent adding new values to select dropdown or radio buttons - this information should be validated by Laravel Validations

It also prevents submitting the same form twice (server side implementation)

Helpers

Create Form

@TODO