【问题标题】:How to send data from a button click to a controller in laravel 4如何从按钮单击将数据发送到laravel 4中的控制器
【发布时间】:2014-03-20 04:51:11
【问题描述】:

我正在尝试在单击按钮时将 id 数据从按钮发送回我的控制器之一。根据发送的 id,我希望控制器功能将用户重定向到不同的视图。

按钮:

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

/oauth/facebook 路由:

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

Oauth2Controller 中的函数 action_session:

public function action_session($provider) {

        $id=Input::get('id');

        if($id > 5) {
                return Redirect::to('/fans');
                }
                else {
                return Redirect::to('/artists');
                }
}

我尝试使用 ajax,但似乎在 ajax 请求可以通过之前首先单击按钮调用 oauth/facebook 路由(因此控制器运行时 $id 字段为空白)。有没有办法做到这一点?谢谢你。

【问题讨论】:

    标签: php laravel laravel-4


    【解决方案1】:

    使用这种方法您不会在输入中找到 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>
    

    【讨论】:

    • 是否需要提供一个 id 才能让 oauth/facebook 运行 action_session 函数?
    • 像魅力一样工作。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2014-05-17
    • 1970-01-01
    • 2019-12-29
    • 1970-01-01
    • 2019-07-25
    • 1970-01-01
    • 2021-06-04
    • 2021-05-17
    相关资源
    最近更新 更多