Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何通过Laravel 5.2一次更新特定列数据?_Php_Laravel_Laravel 5.2 - Fatal编程技术网

Php 如何通过Laravel 5.2一次更新特定列数据?

Php 如何通过Laravel 5.2一次更新特定列数据?,php,laravel,laravel-5.2,Php,Laravel,Laravel 5.2,我有一个users表,其中有一列名为rank\u id。现在我想一次将所有用户rank\u id更新为2,其中rank\u id=6(单击一个按钮)。我该怎么做?到目前为止,我已经尝试过: 路线: Route::post('/test/rankup2', array('as' => 'user.rank2.post', 'uses' => 'TestController@RankUpgradeTwo')); function RankUpgradeTwo(Request $requ

我有一个
users
表,其中有一列
名为
rank\u id
。现在我想一次将所有用户
rank\u id
更新为
2
,其中
rank\u id=6
(单击一个按钮)。我该怎么做?到目前为止,我已经尝试过:

路线:

Route::post('/test/rankup2', array('as' => 'user.rank2.post', 'uses' => 'TestController@RankUpgradeTwo'));
function RankUpgradeTwo(Request $request)
{
    $memberAll = User::where('rank_id','=',6)->firstOrFail();
    //dd($memberAll);

    $memberAll->rank_id = '2';

    $memberAll->save();
    return Redirect::to('user/test')->with('message', 'Successfully Ugraded into Rank 2');

}
    <form method="POST"
        action="{{ route('user.rank2.post') }}"
        class="form-horizontal stdform"
        autocomplete="off"
        enctype="multipart/form-data"
        id="edit-form"
        role="form"
        {{--v-on:submit="submitChange" --}}
        novalidate />
    {{ csrf_field() }}


<div class="control-group action">


    <button type="submit" name="submit" value="submit" id="submit" class="btn btn-blue btn-left">
       Rank Up 2
    </button>       

</div>

{{ Form::close() }}
TestController.php:

Route::post('/test/rankup2', array('as' => 'user.rank2.post', 'uses' => 'TestController@RankUpgradeTwo'));
function RankUpgradeTwo(Request $request)
{
    $memberAll = User::where('rank_id','=',6)->firstOrFail();
    //dd($memberAll);

    $memberAll->rank_id = '2';

    $memberAll->save();
    return Redirect::to('user/test')->with('message', 'Successfully Ugraded into Rank 2');

}
    <form method="POST"
        action="{{ route('user.rank2.post') }}"
        class="form-horizontal stdform"
        autocomplete="off"
        enctype="multipart/form-data"
        id="edit-form"
        role="form"
        {{--v-on:submit="submitChange" --}}
        novalidate />
    {{ csrf_field() }}


<div class="control-group action">


    <button type="submit" name="submit" value="submit" id="submit" class="btn btn-blue btn-left">
       Rank Up 2
    </button>       

</div>

{{ Form::close() }}
testScript.blade.php:

Route::post('/test/rankup2', array('as' => 'user.rank2.post', 'uses' => 'TestController@RankUpgradeTwo'));
function RankUpgradeTwo(Request $request)
{
    $memberAll = User::where('rank_id','=',6)->firstOrFail();
    //dd($memberAll);

    $memberAll->rank_id = '2';

    $memberAll->save();
    return Redirect::to('user/test')->with('message', 'Successfully Ugraded into Rank 2');

}
    <form method="POST"
        action="{{ route('user.rank2.post') }}"
        class="form-horizontal stdform"
        autocomplete="off"
        enctype="multipart/form-data"
        id="edit-form"
        role="form"
        {{--v-on:submit="submitChange" --}}
        novalidate />
    {{ csrf_field() }}


<div class="control-group action">


    <button type="submit" name="submit" value="submit" id="submit" class="btn btn-blue btn-left">
       Rank Up 2
    </button>       

</div>

{{ Form::close() }}

{{csrf_field()}}
排名第二
{{Form::close()}}
这向我显示成功消息,但我在数据库中未看到任何更新。提前谢谢。

你可以试试

因为
firstOrFail
将只从数据库中获取第一条记录,因此您无法更新所有记录,但对于该e.x还有另一个解决方法

$memberAll = User::where('rank_id','=',6)->get();
foreach($memberAll as $member) {
    $member->rank_id = 2;
    $member->save();
}
你可以试试

因为
firstOrFail
将只从数据库中获取第一条记录,因此您无法更新所有记录,但对于该e.x还有另一个解决方法

$memberAll = User::where('rank_id','=',6)->get();
foreach($memberAll as $member) {
    $member->rank_id = 2;
    $member->save();
}

完美的谢谢,太好了!。。。多谢。