Форум программистов, компьютерный форум, киберфорум
PHP: Laravel
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.67/21: Рейтинг темы: голосов - 21, средняя оценка - 4.67
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818

Route post выдает ошибку Laravel 5

11.10.2016, 12:05. Показов 4392. Ответов 39
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
форма

HTML5
1
2
3
4
5
<form enctype="multipart/form-data" action="fileUpload" method="post">
    <input type="hidden" name="_token" value="{{ csrf_token() }}">
    <input name="photo" type="file" />
    <button>Предложить фото</button>
</form>
маршрут

PHP
1
Route::post('fileUpload', 'CompgenController@fileUpload');
обработчик

PHP
1
2
3
4
5
6
7
8
9
    public function fileUpload(Request $request){
 
        $input = $request->input('photo');
        $file = Input::file('photo');
        dd($file);die;
 
        $save_path = $this->save_path_upload.$request->input('photo');
        Image::make($request->input('photo'))->save($save_path);
    }
при обращении к странице получаю ошибку

PHP
1
MethodNotAllowedHttpException in RouteCollection.php line 207:
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.10.2016, 12:05
Ответы с готовыми решениями:

Laravel Ajax запросы не работают, выдает ошибку 500
Доброго времени суток! Проблема в том, что ajax запрос в консоли браузера выдает вот что: &quot;Ошибка: Failed to load resource: the...

Пустое значение $POST выдает ошибку
Привет всем. Когда в $POST нет ни какого значения браузер выводит ошибку такого вида Undefined index: description in . Как можно...

Тестер POST Card, выдаёт ошибку 39, что она означает?
Тестер POST Card, выдаёт ошибку 39, что она означает?

39
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.10.2016, 13:37
Адрес при запросе какой в обозревателе?

Добавлено через 1 минуту
HTML5
1
<input type="hidden" name="_token" value="{{ csrf_token() }}">
Можно заменить на
HTML5
1
{{ csrf_field() }}
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
11.10.2016, 15:40  [ТС]
Para bellum, помогло вот это

PHP
1
Route::resource
кстати, не подскажите, правильно ли так делать

у меня есть модель Photo, я в неё добавила метод

PHP
1
2
3
4
5
    public function newUserUpload($save_path){
        $this->photo_src = $save_path;
        $this->photo_moderation_id = 2;
        $this->save();
    }
и вызываю его. или все-таки надо вызывать не метод, а прямо в том месте, где мне нужна вставка в БД делать

PHP
1
2
3
4
            $photo = new Photo();
            $photo->photo_src = $save_path;
            $photo->photo_moderation_id = 2;
            $photo->save();
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.10.2016, 16:31
А чем массовая заливка не подходит?
PHP
1
2
3
4
Photo::create([
    'photo_src' => $save_path,
    'photo_moderation_id' => 2
]);
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
11.10.2016, 16:41  [ТС]
Para bellum, и еще не могу понять, я сделала ссылку на страницу регистрации, т.е. "/home". после Регистрации меня постоянно редиректит на эту страницу, а нужно чтоб на главную
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.10.2016, 17:03
Добавьте в Controllers\Auth\RegisterController:
PHP
1
protected $redirectTo = '/';
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
11.10.2016, 17:12  [ТС]
Para bellum, там нет такого, там 2 файла

AuthController.php и PasswordController.php

и даже если в AuthController.php Добавить такую строку ничего не происходит
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.10.2016, 17:25
А, ну да. Вы же говорили, что версия не последняя.
Добавьте в AuthController тогда.

Добавлено через 46 секунд
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
ничего не происходит
Попробуйте redirectPath.

Добавлено через 1 минуту
У Вас какая версия? Судя по Illuminate\Foundation\Auth\Authenticates AndRegistersUsers, всё должно работать и с redirectTo
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
11.10.2016, 17:58  [ТС]
Para bellum,

у меня вообще в этом контроллере вот это только

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php namespace App\Http\Controllers\Auth;
 
use App\Http\Controllers\Controller;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Contracts\Auth\Registrar;
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers;
 
class AuthController extends Controller {
    /*
    |--------------------------------------------------------------------------
    | Registration & Login Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles the registration of new users, as well as the
    | authentication of existing users. By default, this controller uses
    | a simple trait to add these behaviors. Why don't you explore it?
    |
    */
 
    use AuthenticatesAndRegistersUsers;
 
    /**
     * Create a new authentication controller instance.
     *
     * @param  \Illuminate\Contracts\Auth\Guard  $auth
     * @param  \Illuminate\Contracts\Auth\Registrar  $registrar
     * @return void
     */
    public function __construct(Guard $auth, Registrar $registrar)
    {
        $this->auth = $auth;
        $this->registrar = $registrar;
 
        $this->middleware('guest', ['except' => 'getLogout']);
    }
 
}
Добавлено через 1 минуту
если добавляю

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php namespace App\Http\Controllers\Auth;
 
use App\Http\Controllers\Controller;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Contracts\Auth\Registrar;
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers;
 
class AuthController extends Controller {
    protected $redirectTo = '/';
    /*
    |--------------------------------------------------------------------------
    | Registration & Login Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles the registration of new users, as well as the
    | authentication of existing users. By default, this controller uses
    | a simple trait to add these behaviors. Why don't you explore it?
    |
    */
 
    use AuthenticatesAndRegistersUsers;
 
    /**
     * Create a new authentication controller instance.
     *
     * @param  \Illuminate\Contracts\Auth\Guard  $auth
     * @param  \Illuminate\Contracts\Auth\Registrar  $registrar
     * @return void
     */
    public function __construct(Guard $auth, Registrar $registrar)
    {
        $this->auth = $auth;
        $this->registrar = $registrar;
 
        $this->middleware('guest', ['except' => 'getLogout']);
    }
 
}
все равно редиректит на home

Добавлено через 1 минуту
в доках написано, что нужно в файл PasswordController это добавить, но опять же после добавления редиректит на home постоянно

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php namespace App\Http\Controllers\Auth;
 
use App\Http\Controllers\Controller;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Contracts\Auth\PasswordBroker;
use Illuminate\Foundation\Auth\ResetsPasswords;
 
class PasswordController extends Controller {
    protected $redirectTo = '/';
    /*
    |--------------------------------------------------------------------------
    | Password Reset Controller
    |--------------------------------------------------------------------------
    |
    | This controller is responsible for handling password reset requests
    | and uses a simple trait to include this behavior. You're free to
    | explore this trait and override any methods you wish to tweak.
    |
    */
 
    use ResetsPasswords;
 
    /**
     * Create a new password controller instance.
     *
     * @param  \Illuminate\Contracts\Auth\Guard  $auth
     * @param  \Illuminate\Contracts\Auth\PasswordBroker  $passwords
     * @return void
     */
    public function __construct(Guard $auth, PasswordBroker $passwords)
    {
        $this->auth = $auth;
        $this->passwords = $passwords;
 
        $this->middleware('guest');
    }
 
}
Добавлено через 22 минуты
Para bellum,

если в файле app/Http/Controllers/Middleware/RedirectIfAuthenticated.php

заменить

PHP
1
2
3
4
5
6
        if ($this->auth->check())
        {
            return new RedirectResponse(url('/home'));
        }
 
        return $next($request);
на

PHP
1
2
3
4
5
6
        if ($this->auth->check())
        {
            return new RedirectResponse(url('/'));
        }
 
        return $next($request);
то сайт падает с ошибкой Сайт ***.ru выполнил переадресацию слишком много раз.
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
12.10.2016, 07:16
Так, стоп. Вы сказали:
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
после Регистрации меня постоянно редиректит на эту страницу, а нужно чтоб на главную
Значит в middleware не нужно сейчас менять ничего. Там для другого перенаправления.
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
у меня вообще в этом контроллере вот это только
Там же trait используется:
PHP
1
use AuthenticatesAndRegistersUsers;
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
в доках написано
Вы в trait гляньте, как всё работает. Определённо, Вы не то нашли в документации.

Версия какая, вы так и не сказали? 5.0?
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
12.10.2016, 10:37  [ТС]
Para bellum, 5.0.35

в трейте вот такая штука

PHP
1
2
3
4
5
6
7
8
    public function redirectPath()
    {
       if(property_exists($this, 'redirectPath'))
       {
           return $this->redirectPath();
       }
       return property_exists($this, 'redirectTo') ? $this->redirectTo : '/home';
    }
но! если устанавливаю это свойство, то все-равно на home кидает
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
12.10.2016, 10:42
Вы это свойство в какой области видимости устанавливаете? Не в private, часом?
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
12.10.2016, 10:47  [ТС]
Para bellum, нет, public

после переопределения этого метода у себя

PHP
1
2
3
4
5
6
7
8
    public function redirectPath()
    {
       if(property_exists($this, 'redirectPath'))
       {
           return $this->redirectPath();
       }
       return property_exists($this, 'redirectTo') ? $this->redirectTo : '/home';
    }
вообще ловлю ошибку

TokenMismatchException in VerifyCsrfToken.php

Добавлено через 4 минуты
Para bellum, ой, нет. в Protected. Но даже если в public ставлю то тоже самое
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
12.10.2016, 11:21
Где Вы ловите, по какому адресу? Происходит ли перенаправление?
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
12.10.2016, 12:31  [ТС]
Para bellum, на странице /auth/login, редиректа нет
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
12.10.2016, 13:11
В Ваших действиях (именно в Ваших) определённо присутствует ошибка. Либо Вы регистрацию с аутентификацией путаете. Почему у Вас адрес аутентификации (то есть логина), а говорите Вы при регистрацию?
Есть ещё предположение: перенаправление всё же происходит, но после регистрации пользователь не аутентифицируется, отсюда возникает перенаправление на страницу входа в систему, но почему-то не на саму форму, а на обработчик (т.е. туда, куда должен был быть POST, а не GET запрос).
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
12.10.2016, 14:10  [ТС]
Para bellum, у меня после регистрации и авторизации одинаковая проблема.

т.е. страница авторизации myip/home выглядит как форма для ввода логина и пароля. Но стоит мне авторизироваться меня постоянно редиректит на myip/home, но на ней уже нет формы, на ней только надпись You are logged in!

стоит мне нажать logout, меня опять кидает на главную и я спокойно хожу по сайту
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
13.10.2016, 06:45
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
т.е. страница авторизации myip/home выглядит как форма для ввода логина и пароля
А почему она так выглядит? Из-за этого непонятно, куда хочет перенаправить Laravel -- то ли на главную, то ли на страницу аутентификации, потому что по умолчанию "home" -- это главная страница.
Ещё это смущает:
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
на странице /auth/login
У Вас там напутаны маршруты. Помочь могу только одним способом: только получив доступ к Вашему сайту. Можно все контроллеры и маршруты убрать, оставив только те, что были по умолчанию.

Но это на Ваше усмотрение. По-другому сложно помочь.
0
 Аватар для Mashka_mulashka
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
13.10.2016, 10:31  [ТС]
Цитата Сообщение от Para bellum Посмотреть сообщение
А почему она так выглядит? Из-за этого непонятно, куда хочет перенаправить Laravel -- то ли на главную, то ли на страницу аутентификации, потому что по умолчанию "home" -- это главная страница.
вся маршрутизация выглядит так

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Route::get('/', 'WelcomeController@index');
 
Route::get('home', 'HomeController@index');
 
Route::get('generate', 'CompgenController@generateImage');
 
Route::get('perehod', 'CompgenController@perehod');
 
Route::resource('fileUpload', 'CompgenController@fileUpload');
 
Route::get('userFiles', 'CompgenController@userFiles');
 
/*
 * GET, POST, PUT, DELETE
 * **/
 
Route::controllers([
    'auth' => 'Auth\AuthController',
    'password' => 'Auth\PasswordController',
]);
Цитата Сообщение от Para bellum Посмотреть сообщение
У Вас там напутаны маршруты. Помочь могу только одним способом: только получив доступ к Вашему сайту. Можно все контроллеры и маршруты убрать, оставив только те, что были по умолчанию.
Но это на Ваше усмотрение. По-другому сложно помочь.
я попробую доступ достать) VDS Не мой

Добавлено через 1 минуту
а home.blade.php выглядит именно вот так

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<div class="container">
    <div class="row">
        <div class="col-md-10 col-md-offset-1">
            <div class="panel panel-default">
                <div class="panel-heading">Home</div>
 
                <div class="panel-body">
                    You are logged in!
                </div>
            </div>
        </div>
    </div>
</div>
как и страница на которую меня перекидывает
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
13.10.2016, 10:43
Нормальные маршруты. А Вы говорили:
Цитата Сообщение от Mashka_mulashka Посмотреть сообщение
страница авторизации myip/home выглядит как форма для ввода логина и пароля
Отсюда сделал вывод, что форма входа находится по адресу "/home".
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.10.2016, 10:43
Помогаю со студенческими работами здесь

Winsock и POST запрос: Ответ от сервера выдаёт ошибку 400
Почему ответ от сервера выдаёт ошибку 400? Отправляю эти данные: POST /auth/auth/?back_url= HTTP/1.1 Host:vbbook.ru ...

Выдает ошибку при Post Запросе http/1.1 404 bad request
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms,...

No route matches [POST]
Добрый день, возникает такая ошибка когда я нажимаю submit в вьюхе new. Вьюха:&lt;h1&gt;Создание задачи&lt;/h1&gt; &lt;%= form_for...

СМА Hansa PG5510A412 s/n 04454930213108 после нескольких минут выдает ошибку, выдает ошибку
Hansa PG5510A412 s/n 04454930213108 отработала 2 месяца на этом же месте, магазин где брали закрылся. После нескольких минут работы на...

Laravel post запрос на другой сайт
Хочу через апи вытащить данные с другого сайта(также на laravel). Пробовал через rmccue/requests, guzzle, laracurl отправлять запрос и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru