Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Здравствуйте, помогите разобраться.
Прописываю роут
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()), однако данный метод я так понимаю не срабатывает, по крайней мере я ничего не вижу (код страницы открывал - там ничего нет).
Не в сети
Вот эта строчка и срабатывает:
print_r($request->all());
Не в сети
Хм.... действительно.... а почему тогда в $request не приходят данные которые я отправляю из формы (POST).
В массив приходит только токен.
Не в сети
Потому, что атрибут name у элементов формы отсутствует. Сделай так:
<input type="email" name="email" class....
Изменено AlexeyMezenin (16.08.2017 08:54:04)
Не в сети
Да, Вы правы, всё получилось. Спасибо за помощь.
Не в сети
Страницы 1