簡體   English   中英

使用選擇選項更新數據庫(Laravel 4)

[英]Updating db with select options (Laravel 4)

我有一個表,其中顯示了來自db的數據,其中在狀態列中我留下了使用select更改狀態的選項。 我希望能夠通過更改選項來僅更新“狀態”列,並且希望能夠通過一個按鈕更改多行。 以前我可以更改,但我必須為每一行都有一個按鈕。

//狀態列的視圖代碼如下:

  <td>
                    <select class="btn pull-left" name="status[]" id="status[]" onchange="javascript:changeStatus('{{$row->id}}','{{$arr}}')">
                        <option>{{ $row->status }}</option>
                        <option>Eligible</option>
                        <option>Not Eligible</option>
                    </select>
                </td>
            </tr>
            <input name="recordid[]" id="recordid[]" type="hidden">
            <?php $arr++;?>
            @endforeach
            <script type="text/javascript">
                function changeStatus(id,arr){
                //alert(id);
               // $('#recordid['+arr+]').val(id);
                // $("input[name='recordid']").eq(1).val(id);
                 $('[id^=recordid]').eq(arr).val(id);
                        // document.status.submit();
                }
            </script>

//控制器

 public function select(){

        $status = Input::get('status');
        $id = Input::get('recordid');
//        print_r($id);
//       print_r($status);exit;
        $user = User::find($id);
       If (isset($status)){
            $user->status = $status;
            $user->save();
        }
        return View::make('search')->with('status',$status);
    }

從id和status的print_r中,如果我也使用get id來更改選項,則我將獲得此輸出,如下面的代碼所示,其中我更改了數組1和2中的狀態。

數組([0] => 2 [1] => 3 [2] => [3] =>)數組([0] =>志願者[1] =>志願者[2] =>志願者[3] =>符合條件)

您可以像這樣更新多個記錄:

User::>whereIn('id', $id)->update(['status' => $status]);

完整方法:

public function select(){
    $status = Input::get('status');
    $id = Input::get('recordid');

    for ($i = 0; $i <= count($status) - 1; $i++) {
         User::where('id', $id[$i])->update(['status' => $status[$i]]);
    // Even better
    // User::find($id[$i])->update(['status' => $status[$i]]);
    }

    return View::make('search')->with('status',$status);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM