Laravel по-русски

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

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

#1 Re: Laravel 5.x » Как вывести определенную ошибку? » 05.11.2019 17:35:11

Можно так:

{{ $errors->first('email') }}
{{ $errors->first('password') }}

Но у password две ошибки и как их отдельно вывести?

#2 Laravel 5.x » Как вывести определенную ошибку? » 05.11.2019 17:03:22

rvsbox
Ответов: 2

Есть массив {{ Print_r($errors) }}, который могу вывести в шаблоне:

        
Illuminate\Support\ViewErrorBag Object
(
    [bags:protected] => Array
        (
            [default] => Illuminate\Support\MessageBag Object
                (
                    [messages:protected] => Array
                        (
                            [email] => Array
                                (
                                    [0] => The email must be a valid email address.
                                )

                            [password] => Array
                                (
                                    [0] => The password must be at least 8 characters.
                                    [1] => The password confirmation does not match.
                                )

                        )

                    [format:protected] => :message
                )

        )

)
1

Как мне вывести одну ошибку из трех?

Пытался, но я понимаю что это совсем не то:

{{ $errors['email'] }} 
{{ $errors->getBug() }}

#3 Re: Laravel 5.x » Не работает запрос, вывводит ошибку TokenMismatchException in compi... » 24.08.2019 01:57:43

Нашел решение:

app/Http/Middleware/VerifyCsrfToken.php

<?php
namespace App\Http\Middleware;

use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;

class VerifyCsrfToken extends BaseVerifier
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        //тут прописываем маршруты которые хотим исключить
        'comments/*',
    ];
}

#4 Laravel 5.x » Не работает запрос, вывводит ошибку TokenMismatchException in compi... » 23.08.2019 23:28:52

rvsbox
Ответов: 3

При отправки запроса из формы, не выводится содержимое переменной $_POST.
Выводит ошибку:

TokenMismatchException in compiled.php line 3227:
1. in compiled.php line 3227
2. at VerifyCsrfToken->handle(object(Request), object(Closure))
3. at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in compiled.php line 9963

app/Http/routes.php

Route::post('/comments', function () {
    print_r($_POST);
});

public/form.html

<form action="/comments" method="POST">
    Имя:
    <input type="text" name="name" ><br>
    Комментарий:<br>
    <textarea name="text"></textarea><br>    
    <input type="submit" value="Добавить">
</form>

Поискал в чем проблема и все ссылается на csrf. Что это, для чего это? Туда смотрю?
Предложили сделать так, но не работает:

<input type="hidden" name="_token" value="{{ csrf_token() }}">

Я полный новичок, только начал изучать.

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