如何显示表格的内容

时间:2019-03-24 14:11:38

标签: php laravel

显示在laravel中以表格形式输入的内容的问题。 添加什么代码以显示在表单中输入的值?

-web.php

 Route::get('/show-name', ['uses' => 'NameController@show-name', 'middleware' => 'auth']);

- NameContoller.php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class NameController extends Controller
{
    public function show-name()
    {   
        return view('show-name');
    }
}

- show-name.blade.php

<?php
print_r($_POST);
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" class="">
    <div class="required field">
            <label>Name</label>
            <input type="text" name="email" id="name">
    </div>
    <input type="submit" class="ui primary button" id="send" name="send" value="Send"></input>
</form>  

使用按钮后的消息-MethodNotAllowedHttpException。 感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您发送的是POST请求,而不是GET请求。

Route::post('/show-name', [
  'uses' => 'NameController@show-name', 
  'middleware' => 'auth'
]);

文档告诉您如何获取所有数据 https://laravel.com/docs/5.8/requests#retrieving-input

文档告诉您必须将数据传递到视图https://laravel.com/docs/5.8/views#passing-data-to-views

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class NameController extends Controller
{
    public function show-name(Request $request)
    {   
        $input = $request->all();
        return view('show-name')->with('data', $input);
    }
}

文档告诉您如何访问传递到视图https://laravel.com/docs/5.8/blade#displaying-data

中的数据
@php
echo print_r($data);
@endphp

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" class="">
    <div class="required field">
            <label>Name</label>
            <input type="text" name="email" id="name">
    </div>
    <input type="submit" class="ui primary button" id="send" name="send" value="Send"></input>
</form> 

此外,如果没有CSFR https://laravel.com/docs/5.8/blade#forms

,该表格将无法使用

输入是自动关闭的,这意味着不需要</input>

此外,不需要<?php echo $_SERVER['PHP_SELF']; ?>,因为使用Laravel,您可以专门定义路线的名称。

<form method="post" action="/show-name" class="">

观看有关Laravel的一些基本教程,因为这一切都是错误的。