第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

選中復(fù)選框時(shí)laravel非法運(yùn)算符和值組合

選中復(fù)選框時(shí)laravel非法運(yùn)算符和值組合

PHP
胡子哥哥 2021-10-22 14:11:27
當(dāng)我通過 POST 方法發(fā)送我的表單時(shí),我需要檢查復(fù)選框是否被選中。在我的控制器中,我有 4 個(gè) if 是我檢查的地方,但是當(dāng)我這樣做時(shí),我會(huì)出錯(cuò)非法的運(yùn)算符和值組合。我的看法{!! Form::open(['action' => 'PersonsController@raport', 'method' => 'POST']) !!}    @csrf    <div class="form-group">        <label for="exampleFormControlFile1">Personel:</label>        <input class="form-control form-control-sm" type="text" name="data" id="data" value="{{date('Y-m-01')}}" width="100%" readonly/>        {!! $errors->first('data', '<strong><p style="color:red;" class="help-block">:message</p></strong>') !!}             <div class="form-check">            <input class="form-check-input" name="all" type="checkbox" value="1" id="all">            <label class="form-check-label" for="defaultCheck1">                All            </label>                    </div>    </div>    <div class="form-group">        <label for="exampleFormControlFile1">User </label>        {!! Form::select('users', $users, null, ['class'=>'form-control form-control-sm', 'placeholder'=>'All users']) !!}        {!! $errors->first('users', '<strong><p style="color:red;" class="help-block">:message</p></strong>') !!}    </div>    {{Form::submit('Raport', ['class'=>'btn btn-primary btn-sm'])}}    {!! Form::close() !!}和控制器 public function raport(Request $request)    {       //... some code        if($request->input('all') !== 'on' && empty($request->input('users')))        {           $raport = Users::where('data', '>=', $request->input('data'))            ->orderBy('id_users', 'asc')->get();        }        elseif($request->input('all') === 'on' && !empty($request->input('users')))        {            $raport = Users::where('id_users', $request->input('users'))              ->orderBy('id_users', 'asc')->get();        }}
查看完整描述

3 回答

?
慕姐4208626

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊

我建議首先重構(gòu)這個(gè)代碼:


public function raport(Request $request)

{

    //... some code

    if(!$request->has('all')){

        $date=date('Y-m-01');

        if(!$request->filled('users')){

            $query = Users::where('data', '>=', $date);

        }else{

            $query = Users::where('id_users', $request->input('users'))->where('data', '>=', $date);

        }

    }else{

        if(!$request->filled('users')){

            $query = Users::all();

        }else{

            $query = Users::where('id_users', $request->input('users'));

        }

    }

    $raport=$query->orderBy('id_users', 'asc')->get();

    //... another some code

}

它可能無法解決您的問題,但它更清楚。


筆記:


錯(cuò)誤Illegal operator and value combination可能是由于空值和字段(例如日期時(shí)間)之間的比較

如果您想確定請(qǐng)求中是否存在某個(gè)值且不為空,您可以使用該filled方法


查看完整回答
反對(duì) 回復(fù) 2021-10-22
?
慕尼黑的夜晚無繁華

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超6個(gè)贊

你有這個(gè)價(jià)值


   <input class="form-check-input" name="all" type="checkbox" value="1" id="all">

這意味著您發(fā)送值復(fù)選框 = 1


如果您沒有設(shè)置該值,那么它的默認(rèn)值是 = on


因此將整數(shù)與字符串進(jìn)行比較導(dǎo)致您的錯(cuò)誤


在您的情況下,laravel 在 request 中有方法,因此您可以檢查表單中的復(fù)選框是否已選中


你可以像這樣在你的代碼中應(yīng)用它


    if(!$request->has('all') && empty($request->input('users')))

    {

       $raport = Users::where('data', '>=', $request->input('data'))

        ->orderBy('id_users', 'asc')->get();

    }

    elseif($request->has('all') && !empty($request->input('users')))

    {

        $raport = Users::where('id_users', $request->input('users'))

          ->orderBy('id_users', 'asc')->get();

    }

    elseif($request->has('all') && empty($request->input('users')))

    {

        $raport = Users::orderBy('id_users', 'asc')->get();

    }

    elseif(!$request->has('all') && !empty($request->input('users')))

    {

        $raport = Users::where('id_users', $request->input('users'))

         ->where('data', '>=', $request->input('data'))

           ->orderBy('id_users', 'asc')->get();

    }


查看完整回答
反對(duì) 回復(fù) 2021-10-22
?
楊__羊羊

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個(gè)贊

我遇到了同樣的問題,我發(fā)現(xiàn)我在變量中傳遞了空值。


查看完整回答
反對(duì) 回復(fù) 2021-10-22
  • 3 回答
  • 0 關(guān)注
  • 179 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)