@laravel_pro

Страница 353 из 2014
Alone
10.02.2017
19:49:13
Доброго времени суток. Может, кто сможет помочь. Начал изучать Laravel, установил его на хостинг (благо есть такая возможность VPS), попробывал сделать отправку из формы из html-файла по POST, получаю ошибку: TokenMismatchException in VerifyCsrfToken.php line 68: Волшебные пилюли типа: <meta name="csrf-token" content="{{ csrf_token() }}"> и <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>"> успеха не принесли. В Интернете найти ничего не смог.

Ubuntu 16.04

php 5.6

Dmitriy
10.02.2017
19:53:34
сессия стартует ?

Google
Alone
10.02.2017
19:54:25
Стартует

Виктор
10.02.2017
19:57:52
Парни, чет решил тут сделать передачу данных в шаблон через View::composer В AppServiceProvider.php в методе boot прописал View::composer([ 'product.filters', 'product.loop', 'product.tools-top', 'product.tools-bottom', ], 'App\ViewComposers\ProductFilterComposer'); Все хорошо, но то что отрабаывается в классе композере отрабатывается 4 раза, потому как в 4 шаблона надо передать эти данные. Момент в том, что они разом у меня вызываются и мне в каждый шаблон надо передать эти данные, но чтобы это сгенерить один раз

Alone
10.02.2017
20:00:27
Да, оно лежит внутри формы

<form action="/comments" method="POST"> <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>"> Имя: <input type="text" name="name"/><br/> Комментарий:<br/> <textarea name="text"></textarea> <!--<input type="hidden" name="_method" value="PUT">--> <br/> <input type="submit" value=" Добавить"/> </form>

Виктор
10.02.2017
20:02:00
в сгенерированном html сам токен есть?

Alone
10.02.2017
20:04:24
Он передается через <meta> ?

Виктор
10.02.2017
20:04:49
<form action="/comments" method="POST"> <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>"> Имя: <input type="text" name="name"/><br/> Комментарий:<br/> <textarea name="text"></textarea> <!--<input type="hidden" name="_method" value="PUT">--> <br/> <input type="submit" value=" Добавить"/> </form>
форму не перехватывает какой-нить ajax обработчик? а то не помещало бы устанавливать данные для его вызова, выдергивая этот token из html типа $.ajaxSetup({ headers: { 'X-CSRF-Token': $('input[name="_token"]').val() } });

Alone
10.02.2017
20:05:13
<script language="JavaScript"> $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); </script>

Виктор
10.02.2017
20:07:20
в форме у тебя поле называется _token, а не csrf-token

Evgeny
10.02.2017
20:07:44


открой консоль -> сеть, посмотри какие данные уходят при запросе

Google
Alone
10.02.2017
20:09:19
Я поправил, но все равно то же самое

Виктор
10.02.2017
20:10:01
открой консоль -> сеть, посмотри какие данные уходят при запросе
Да, дейстительно, открой Network в консоли да посмотри

Alone
10.02.2017
20:10:55


Виктор
10.02.2017
20:11:32
body запроса покажи

Evgeny
10.02.2017
20:12:57
параметры запроса

Alone
10.02.2017
20:13:20
Сейчас

Загружу FF :)



Evgeny
10.02.2017
20:16:34
ну так

у тебя blade шаблонизатор?

Alone
10.02.2017
20:18:38
Наверное да, я как бы начинаю. Роутер смотрит в blade^ а данные я хочу получить просто из html

Evgeny
10.02.2017
20:19:41
напиши {{csrf_field()}} вместо <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">

Alone
10.02.2017
20:20:46
Тогда выводится {{csrf_field()}}

Или так и должно быть

?



Evgeny
10.02.2017
20:23:37
ну как бы нет =)

Alone
10.02.2017
20:24:07
:)

Я тоже подумал, что нет, пожтому там input %)

Evgeny
10.02.2017
20:25:23
можеш код на гитхаб выкинуть?

Google
Alone
10.02.2017
20:26:28
В прниципе, я его весь и выкинул :)

Сейчас попробую

Michael
10.02.2017
20:30:33
Наверное да, я как бы начинаю. Роутер смотрит в blade^ а данные я хочу получить просто из html
То есть в файл *.html ты пытаешься вставить php код? Не очень понял

Alone
10.02.2017
20:30:44
Да, именно так

В учебных целях

Я сразу написал :)

Что только начал :)

А, что я должен был сделать?

Не ругайте сильно

Michael
10.02.2017
20:31:36
Чтобы php код обработался, файл должен заканчиваться на *.php

Alone
10.02.2017
20:31:44
Я в public создал html файл

Сейчас попробую

Michael
10.02.2017
20:32:17
Иначе сервак тупо выкидывает html, как текст, то есть без обработки интерпретатором

Evgeny
10.02.2017
20:32:20
тю

Alone
10.02.2017
20:32:21
А можно без него?

Не озото все в echo всталять :)

Виктор
10.02.2017
20:32:38
тю
даа

Michael
10.02.2017
20:32:41
Можно отключить проверку csrf

Alone
10.02.2017
20:32:45
охота

Evgeny
10.02.2017
20:32:53
нет уж

Google
Alone
10.02.2017
20:32:58
Наверное не самый лучший вариант, да?

Evgeny
10.02.2017
20:33:06
надо сделать чтобы работало

Alone
10.02.2017
20:33:08
Не зря же его вкорячили :)

Michael
10.02.2017
20:33:29
А почему ты хочешь именно html файл?

Alone
10.02.2017
20:33:41
Извините, а почему нельзя в html прописывать php код?

Ну, я по аналогии

Michael
10.02.2017
20:34:04
Ты можешь сделать *.php файл, пихнуть в него html и php вставки, как предлагали

Admin
ERROR: S client not available

Alone
10.02.2017
20:34:13
Можно и не его

Evgeny
10.02.2017
20:34:23
потому что html не обрабатывается php интерпритатором

Michael
10.02.2017
20:34:56
Можно сделать, чтоб обрабатывал, но это жесткая дыра в безопасности))

Alone
10.02.2017
20:35:02
А, как было бы сделать совсем правильно по laraval ному?

Evgeny
10.02.2017
20:35:16
https://laravel.com/docs/5.4/views

Alone
10.02.2017
20:36:04
Спасибо

Хорошо, когда есть сообщество :)

Denis
10.02.2017
20:47:54
теперь понимаю почему в гиттере всех шлют читать доку))

Andrey
10.02.2017
20:48:55
Denis
10.02.2017
20:50:35
Ну не то чтобы. Я доку прочитал раза три, от начала до конца. Но все равно приходилось задавать нубские вопросы в тот чат)) Но чтобы про блэйд и токены не поонять - доку надо не прочитать совсем)

Agaponiz
10.02.2017
20:59:23


Google
Юрий
10.02.2017
22:42:48
Мне кажется, это вопросы не уровня фреймворка, а базового непонимания, что такое php и как это все работает

Luka
11.02.2017
03:28:00
Всем добра утром субботы. Вопрос, как правильно хранить значение версии на ларе 5.4 и выводить ее в шаблон?

.Самому пилить или есть из коробки ?

Dmitriy
11.02.2017
03:32:43
И тебе ночной пятницы

$laravel = app(); $version = $laravel::VERSION Работает ?

Или так {{ App::VERSION() }}

https://github.com/laravel/framework/blob/9cee8db07cfac13a3a49d17388c9ced4c52e17ac/src/Illuminate/Foundation/Application.php#L31

?
11.02.2017
06:43:22
есть кто с Хабаровка? нужен разраб на зп в свой прожект, один не вывожу, на удаленку не вариант

Luka
11.02.2017
07:29:47
$laravel = app(); $version = $laravel::VERSION Работает ?
{{ App::VERSION() }} работает, выводит версию лары. я могу менять на другое значение это не будет сказываться на работе всего проекта?

Roman
11.02.2017
08:48:56
Всем привет, я новичок в laravel такой вопрос, как лучше реализовать запрет на доступ к url? сначала пытался что то сделать руками потом наткнулся в доках на policy и еще увидел midleware Задача не давать пользователям заходить по url /admin/*

laravel 5.4

Евгений
11.02.2017
08:49:56
не давать, значит редиректить или давать ошибку 403?

вообще админку легче всего мидлварей закрыть

а через policy делать доступ к конкретным страницам в админке для разных ролей, например. Ну или еще другие применения у policy можно придумать массу

Roman
11.02.2017
08:51:06
редиректить на другую страницу

Евгений
11.02.2017
08:51:15
midleware

Roman
11.02.2017
08:51:30
примерно таким примером? https://laravel.com/docs/5.4/middleware#middleware-parameters

Страница 353 из 2014