title: ProfileController@store is not send post method and not save any data to profile table
body: <p>I am new with PHP and Laravel.
  I am using Laravel Framework version 5.3.29 and PHP 7</p>
  
  <p>I am making extend register form with two parts.
  register form which makes login credentials; Username and password
  and after login credentials has been created, second part is creating profile to new user.</p>
  
  <p>Process: Register form save data to user table and use user model.
  after succesfully created username &amp; password, it will redirect to
  profile form and send post data to proceed form and validation.</p>
  
  <p>Profile form is using profile model.</p>
  
  <p>1) how to troubleshoot, when data has been sent by post method and n there is no error message. it only return back to profile form after submit button has been pressed.</p>
  
  <p>2) I can see there is no data save to profile table.</p>
  
  <p>register (user table) and profile table are in same database as
   register form can save it, database part works fine.</p>
  
  <p>code skeleton has made from "php artisan make:auth
  complete code can be found <a href="https://github.com/mikromika/project1/" rel="nofollow noreferrer">https://github.com/mikromika/project1/</a></p>
  
  <p>my route file is following: </p>
  
  <pre><code>// Registration Routes
  Route::get('auth/register', 'Auth\RegisterController@getRegister');
  Route::post('auth/register', 'Auth\RegisterController@register');
  
  // Show profile form
  Route::get('bio/create', ['as' =&gt; 'bio.create', 'uses' =&gt; 'Bio\ProfileController@create']);
  
  Route::post('bio/store', ['as' =&gt; 'bio.store', 'uses' =&gt; 'Bio\ProfileController@store']);
  </code></pre>
  
  <p>ProfileController:store
  this should validate data and save it to profile table</p>
  
  <pre><code>        public function store(Request $request)
  
      {    $this-&gt;validator($request-&gt;all())-&gt;validate();
          $this-&gt;guard()-&gt;login($this-&gt;createx($request-&gt;all()));
         Session::flash('success', 'Data was successfully save!');
  
         if ($exception instanceof TokenMismatchException) {
           Session::flash('success', 'Data was failed to save!');
                  return redirect('/auth/login');
         }
  
    //  show profile form info after success post; does not work yet
  return redirect()-&gt;route('bio.show');  }
  </code></pre>
  
  <p>Here is profile form way to send post method.  </p>
  
  <pre><code>&lt;form id="profile-form"  action="{{ url('/bio/store')  }}" method="POST" form class="form-horizontal"&gt;
        {{ csrf_field() }}
  </code></pre>
  
  <p>post method is never reach that ProfileController:store part.</p>
  
  <p>I have tried to use "GET" method, but I'm getting error </p>
  
  <pre><code>MethodNotAllowedHttpException in RouteCollection.php line 218:
  </code></pre>
  
  <p>I have changed route to </p>
  
  <pre><code>Route::get('bio/store', ['as' =&gt; 'bio.store', 'uses' =&gt; 'Bio\ProfileController@store']);
  </code></pre>
  
  <p>and  form   <code>&lt;form id="profile-form"  action="{{ url('/bio/store')  }}" method="GET" form class="form-horizontal"&gt;</code></p>
  
  <p>Because form need to send by "POST" method, I understand that error!.</p>
  
  <p>Here is validate part from ProfileController:validator</p>
  
  <pre><code>protected function validator(array $data)    // copied from register controller
    {
        return Validator::make($data, [
  
          'firstname'         =&gt; 'required|max:255',
          'lastname '         =&gt; 'required|max:255',
          'email'             =&gt; 'required|email|max:255|unique',
          'phone'             =&gt; 'integer',
          'mobile'            =&gt; 'integer',
  
        ]);
    }
  </code></pre>
  
  <p>Here is ProfileController:createx part 
  I took it from registerController.</p>
  
  <pre><code>protected function createx(array $data)    //copied from register controller
    {                                          // was dublicate name "create"
        return Profile::createx([              // changed to "createx"
            'firstname' =&gt; $data['firstname'],
            'lastname' =&gt; $data['lastname'],
  
  
       ]);
    }
  </code></pre>
  
  <p>Here is profile model</p>
  
  <pre><code>&lt;?php
  
  namespace App;
  
  use Illuminate\Database\Eloquent\Model;
  
  class Profile extends Model
  {
      //
        protected $table = 'profiles';
        protected $fillable = [
            'firstname',
             'lastname',
             'email',
             'phone',
             'mobile',
              // 'name', 'email', 'password',
        ];
  
  
        protected $hidden = [
            'status',
            //'location',
        ];
  }
  </code></pre>
  
  <p>Thanks to Alexey Mezenin DD() tip for troubleshoot</p>
  
  <blockquote>
    <p>@MikroMika this data shows that you do not pass firstname and
    lastname. Look at result of the dd($data); It should be something like
    ['firstname' => 'John', 'lastname' => 'Smith'] – Alexey Mezenin 20
    mins ago</p>
  </blockquote>
  
  <p>Now I am back to beginning, </p>
  
  <p>Why form is not pass data by POST method ?</p>