Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 15.08.2017 21:55:02

Вопрос по странице с формой

Здравствуйте, помогите разобраться.
Прописываю роут

Route::match(['get','post'],'/contact', ['uses'=>'Admin\ContactController@show','as'=>'contact']);

далее контроллер

<?php

namespace App\Http\Controllers\Admin;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;


class ContactController extends Controller
{
    public function show(Request $request) {
        $array = array(
            'title'=>'Contacts'
        );

        if (view()->exists('default.contact')){
             print_r($request->all());
            return view('default.contact', $array);
        }
        abort(404);
    }
}

после чего сама форма

@extends('default.layouts.layout')
@section('content')
    <h2>Contact us!</h2>
    <form method="post" action="{{route('contact')}}">
        {{ csrf_field() }}
        <div class="form-group">
            <label for="exampleInputEmail1">Email address</label>
            <input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="Enter email">
            <small id="emailHelp" class="form-text text-muted">We'll never share your email with anyone else.</small>
        </div>
        <div class="form-group">
            <label for="exampleInputPassword1">Password</label>
            <input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
        </div>
        <div class="form-check">
            <label class="form-check-label">
                <input type="checkbox" class="form-check-input">
                Check me out
            </label>
        </div>
        <button type="submit" class="btn btn-primary">Submit</button>
    </form>
@endsection

Когда открываю страницу contact, загружается форма и в самом верху отображается
Array ( [_token] => LaJLs0QIDiLykZTwjr3DjasbY3dyKfOsbBh6OezQ )
Не могу понять почему он отображается на странице, я ведь его нигде не вывожу?
И ещё, в контроллере я прописываю print_r($request->all()), однако данный метод я так понимаю не срабатывает, по крайней мере я ничего не вижу (код страницы открывал - там ничего нет).

Не в сети

#2 15.08.2017 23:10:13

Re: Вопрос по странице с формой

Вот эта строчка и срабатывает:

print_r($request->all());

Не в сети

#3 16.08.2017 06:57:26

Re: Вопрос по странице с формой

Хм.... действительно.... а почему тогда в $request не приходят данные которые я отправляю из формы (POST).
В массив приходит только токен.

Не в сети

#4 16.08.2017 08:52:59

Re: Вопрос по странице с формой

Потому, что атрибут name у элементов формы отсутствует. Сделай так:

<input type="email" name="email" class....

Изменено AlexeyMezenin (16.08.2017 08:54:04)

Не в сети

#5 16.08.2017 09:49:30

Re: Вопрос по странице с формой

Да, Вы правы, всё получилось. Спасибо за помощь.

Не в сети

Подвал раздела