Php 发布Laravel表单不起作用
我正在laravel中设置一个简单的表单: 这是路由文件:Php 发布Laravel表单不起作用,php,forms,laravel,Php,Forms,Laravel,我正在laravel中设置一个简单的表单: 这是路由文件: Route::get('backoffice/upload', [ 'as' => 'backoffice/upload', 'uses' => 'UploadController@uploadForm']); Route::post('backoffice/saveimage',[ 'as' => 'backoffice/sav
Route::get('backoffice/upload', [ 'as' => 'backoffice/upload',
'uses' => 'UploadController@uploadForm']);
Route::post('backoffice/saveimage',[ 'as' => 'backoffice/saveimage',
'uses' => 'UploadController@saveImage']);
这是控制器:
class UploadController extends \BaseController
{
public function uploadForm()
{
return View::make("backoffice.upload.create");
}
public function saveImage()
{
return "Uploading...";
}
}
这是视图文件:
<h1>Upload Image</h1>
{{ Form::open(['action' => 'UploadController@saveImage']) }}
<div class='formfield'>
{{ Form::label('newfilename','New File Name (optional):') }}
{{ Form::input('text','newfilename') }}
{{ $errors->first('newfilename') }}
</div>
<div class='formfield'>
{{ Form::submit($action,['class'=>'button']) }}
{{ Form::btnLink('Cancel',URL::previous(),['class'=>'button']) }}
</div>
{{ Form::close() }}
这对我来说毫无意义。到目前为止,我在处理表单时一直使用route::resource,并且没有问题。我正试图用GET和POST做一个简单的表单,我的悲伤无止境。我错过了什么
此外,如果我修改routes.php并将其从post改为any,然后打开一个浏览器窗口并键入:然后我会收到消息“upload…”,这样该部分就可以正常工作。试试这个,确保在
app/config/app.php处正确配置url
{{Form::open(['url'=>'backoffice/saveimage'])}}
//code
{{Form::close()}}
找到了解决办法。在制作系统的后台时,我重新使用了frontoffice模板,但删除了所有多余的模板。至少我是这么想的。然而,前台标题模板有一个表单,我只是部分删除了它 所以问题是有一个我不知道的开始表单标签。因此,当我点击提交到我的表单时,它实际上正在提交到另一个表单 因为另一种形式没有动作,所以它是默认的
当然,如果我刚刚验证了HTML,就会立即显示出来。这里学到的经验是在提交问题之前验证我的html 恐怕也是这样。无论您使用路由、操作还是URL,generateed HTML都是相同的:action=”“在所有情况下,生成的HTML正是我想要的。然而,出于某种原因,它似乎把我带回了最初的形式。然而,如果我只是打字hxxp://my.local/backoffice/saveimage 在浏览器中,我会收到我希望看到的消息。“正在上载…”请尝试routes.php中的Route::GET而不是Route::POST。我认为Laravel会自动地将所有类型的请求(获取、删除、放置)转换为post。这不会造成任何问题。如果你使用了覆盖所有基础的ANY,它仍然不起作用。试着注释一下。我在一个表单中有一个表单,我得到了这个错误。所以表单中没有表单!多亏了你的回答,我才能够诊断出这个问题。是的@Puzbie,我非常感谢在花了6个多小时调试我所有的应用程序之后,我找到了你的答案,但没有结果,直到我发现可怜的表单标签没有任何动作就打开了。这导致应用程序中的多个表单失败。我现在需要一杯冰镇啤酒。
http://my.local/backoffice/upload?pz_session=x9g4SW2R7t9kia2B8HRJTm1jbLRl3BB8sPMwvgAM&_token=x9g4SW2R7t9kia2B8HRJTm1jbLRl3BB8sPMwvgAM&newfilename=ddd
{{Form::open(['url'=>'backoffice/saveimage'])}}
//code
{{Form::close()}}