Как сопоставить поле ввода с данными внутри базы данных столбцов, используя PHP Laravel? - PullRequest
1 голос
/ 14 января 2020

У меня есть одно поле ввода с именем «policy_no». Итак, из этой группы я хочу выбрать столбец, который состоит из любого ввода. Ввод может быть "12345 12346 12347". Я уже поместил оператор LIKE в sql, но все равно он выбирает все столбцы. Кажется, он не распознает, какой столбец состоит из политики no, так как я ввожу несколько policy_no одновременно. Итак, как мне выбрать базу данных из этого? Или я должен подстроковать поле ввода?

Это мой view.blade. php

        <div class="form-group">
                    <label>Policy No</label>
                    <textarea name="policy_no" value="$items->policy_no" type="text" class="form-control"></textarea>
                </div>

Это мой контроллер.

public function Exported(Request $request) {

        $item = InsuranceEnrollment::find($request->policy_no);

        $policy_no = $request->get('policy_no');

        $group1 = $request->get('group');

       if (InsuranceEnrollment::where('policy_no', 'LIKE','%". $policy_no ."%')->where('insurance_enrollments.exported', '=', '0')->exists()) {
           $item = DB::table('insurance_enrollments')->update(['exported' => 1, 'group' => $group1]);
       }

        \Session::flash('message', 'The policy number is successfully exported');
        return redirect()->route('admin-insurance.sales');
    }

1 Ответ

1 голос
/ 14 января 2020

Если вы всегда используете пробел для разделения чисел, я полагаю, что вы можете просто отделить входную строку от пробела, используя explode().

Затем вы можете использовать whereIn для выборки все элементы политики, которые соответствуют идентификаторам в разобранном массиве.

public function Exported(Request $request) {
        $policyNumbers = explode ( ' ' , $request->policy_no);
        $items = InsuranceEnrollment::whereIn('policy_no', $policyNumbers)->get();    
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...