【问题标题】:Laravel 4 pass input from blade to controllerLaravel 4将输入从刀片传递到控制器
【发布时间】:2017-07-31 20:30:42
【问题描述】:

我在 laravel 4 中有一个项目。

在我的刀片文件中,我有:

<div class="col-sm-12">
            <a href="{{ action('HomeController@getMore') }}" data-limit="12" data-gap="12">Show more </a>
</div>

我想将我的限制和差距传递给控制器​​。在控制器中我使用 Input::get('limit');但我得到一个空值。 即使 Input::all() 返回 null。

有什么建议吗?

谢谢!

【问题讨论】:

    标签: php laravel laravel-4 blade laravel-blade


    【解决方案1】:

    HTML(查看)代码

    1. a 标签的代码 <a href="url('submit/Parameters...')">click ok </a>

    2. 表格代码 <form method="POST" action="{{url('submit/Parameters..')}}" method="post"> {{ csrf_field() }} ... </form>

    路线代码

    1. 带有操作的路由代码 Route::get('user/{id}', function ($id) { echo "id is : ".$id ; });

    2. 控制器的路由代码
      Route::get('user/{id}', 'UserController@show');

      控制器代码
      <?php

    namespace App\Http\Controllers;
    use App\User;
    use App\Http\Controllers\Controller;

    class ShowProfile extends Controller { public function index($id) { echo $id; } }

    有关更多信息,您可以查看以下内容 https://laravel.com/docs/5.4/controllershttps://laravel.com/docs/5.4/routing

    【讨论】:

      【解决方案2】:

      试试这个:

      <div class="col-sm-12">
              <a href="{{ action('HomeController@getMore', ['dataLimit'=>12, 'dataGap'=>12]) }}" data-limit="12" data-gap="12">Show more </a>
      

      并确保您的路由和控制器通过了参数。 Route 必须配置dataLimitdataGap 参数,并且控制器方法必须接受它。

      【讨论】:

        【解决方案3】:

        输入用于表单。如果要使用锚点,则必须像这样将参数传递给 url

        <a href="/url?limit=12&gap=12" >Show more </a>
        

        这使得它们对您的控制器来说是可选的。您只需通过request() 获取它们。

        $limit = request('limit');
        $gap = request('gap');
        

        【讨论】:

          猜你喜欢
          • 2019-04-13
          • 2017-09-03
          • 2016-06-25
          • 1970-01-01
          • 2020-12-29
          • 1970-01-01
          • 2020-12-23
          • 1970-01-01
          • 2017-12-07
          相关资源
          最近更新 更多