Jump to content
Fórum Script Brasil
  • 0

The POST method is not supported for this route.


Frank K Hosaka

Question

Depois que eu aprendi a instalar o Laravel básico pelo Composer, eu pensei em levar todo o meu projeto PHP para o novo ambiente de trabalho.

Como eu ainda não sei como usar o Visual Studio Code, eu usei o Windows Explorer, copiei o arquivo index.php e colei na pasta views, e renomeiei o arquivo de index.blade.php, e alterei a rota no arquivo web.php assim:
 

routes > web.php
------------------------------------------------------------
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\DiarioController;
Route::get('/', function () {return view('index');});

Ativei o servidor pelo comando "php artisan serve", fui no navegador e digitei "localhost:8000", e a experiência deu certo!

Fiquei tão contente que fui logo copiando o arquivo menu.php na pasta views.

Digitei a senha, mas a resposta foi "404 not found".

Mudei o nome do arquivo para "menu.blade.php", mas não deu certo.

Mudei o código do index.php, onde estava <form action=menu.php>, eu mudei para <form action=menu>, mas não deu certo.

Então, acrescentei mais uma rota no web.php, assim:

<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\DiarioController;
Route::get('/', function () {return view('index');});
Route::get('/menu',function () {return view('menu');});

Finalmente, o index conseguiu abrir o menu, o problema é a nova mensagem do Laravel 

The POST method is not supported for this route.

Foi no Google, e a tradução correta é essa: o Laravel não suporta gambiarra.

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Tudo indica que é possível eu transferir todo o meu projeto PHP para o Laravel.

No arquivo index.blade.php eu tinha um <form method=post>, mudei para <form>, ou seja, estou usando o método GET para chamar a próxima página.

No arquivo menu.blade.php eu mudei tudo que é $_POST para $_GET. E o programa funciona exatamente como eu projetei. Ou seja, os dois anos que eu investi no PHP ainda funcionam dentro do Laravel, pelo menos eu já consegui adaptar os dois primeiros arquivos dos outros quinze que eu tenho que "converter".

Quem inventou o Laravel fez a pasta view para priorizar o HTML onde o programador pode introduzir a gramática Laravel sem aquele horror do <?php para cá e o ?> para lá. Mas, no meu caso, eu dei muita sorte. Ele aceita que o meu código use o clássico marcador do PHP. Por enquanto, a única reclamação que eu recebi é que não posso usar o método POST para mandar um valor de uma página para outra.

Edited by Frank K Hosaka
Link to comment
Share on other sites

  • 0

Copiei o arquivo diario.php como diario.blade.php nas pasta views.

Dessa vez, o Laravel reclamou do código require 'menu.php', ele disse que não estava encontrando.

O Google recomenda usar a área de trabalho do Laravel, e como eu não sei como usar esse recurso, eu apelei assim:

require("C:/users/frank/example-app/resources/views/menu.blade.php");

Ele ficou enorme, mas pelo menos funciona. Também tive que tirar todos os métodos POST de todos os <form>, bem como mudei $_POST para $_GET.

Não recebi nenhuma mensagem de erro, mas o link do documento não funciona. Falta um monte de arquivos e também adaptar o antigo projeto ao conceito de rota do Laravel.

Edited by Frank K Hosaka
Link to comment
Share on other sites

  • 0

Sobre o arquivo local menu.js

------------------------------

Não consegui manter a conexão entre o código PHP e o código JavaScript. Usei o endereço absoluto, mas o Laravel não permitiu carregar o arquivo. A única solução foi copiar todo o código JavaScript dentro do menu.php.

 

Sobre o WampServe

--------------------------------

Eu fiz o teste São Tomé para ver se o "php artisan serve" era capaz de encontrar o MySQL sem o WampServe. Desliguei o WampServe. O resultado foi desastre. Ele não é capaz de encontrar o MySQL sem a ajuda do WampServe.

Edited by Frank K Hosaka
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.1k
    • Total Posts
      652k
×
×
  • Create New...