如何发送数据从一个按钮点击到控制器在laravel 4


How to send data from a button click to a controller in laravel 4

我正试图将id数据从按钮返回到我的一个控制器上的按钮单击。根据发送的id,我希望控制器函数将用户重定向到不同的视图。

按钮:

<a href="/oauth/facebook" id="{{$artist->id}}" class="sign">

/oauth/facebook路线:

Route::get('oauth/{provider}', 'Oauth2Controller@action_session')->before('guest');

action_session in Oauth2Controller:

public function action_session($provider) {
        $id=Input::get('id');
        if($id > 5) {
                return Redirect::to('/fans');
                }
                else {
                return Redirect::to('/artists');
                }
}

我尝试使用ajax,但似乎oauth/facebook路由被称为按钮点击第一,之前的ajax请求可以通过(所以$id字段是空白时,控制器运行)。有什么办法可以做到吗?谢谢你!

使用这种方法,你不会在输入中找到id,但你可以使用一个可选的参数(除非你希望所有的提供商都使用它)来扩展路由,像这样:

路线
Route::get('oauth/{provider}/{id?}', 'Oauth2Controller@action_session')->before('guest');
控制器

public function action_session($provider, $id = null) {
    if ($id > 5) {
        return Redirect::to('fans');
    } else {
        return Redirect::to('artists');
    }
}

按钮
<a href="/oauth/facebook/{{$artist->id}}" class="sign">...</a>