вставить данные через флажок в laravel - PullRequest
0 голосов
/ 10 апреля 2020

Я пытаюсь вставить данные флажка в базу данных, в которую данные поступают динамически из базы данных. Вот форма:

<form action="{{ $action }}" method="post" enctype="multipart/form-data">
                                @csrf()
                                @if(!empty($method)) @method($method) @endif
                                <table class="table table-striped table-bordered table-hover" id="dataTables-example">   
                                    @foreach($users as $k=>$u)
                                    <tr>
                                        <td><input type="checkbox" name="user_id[]" value="{{ $u->id }}"></td>
                                        <td>{{ $u->name }}</td>
                                        <td>{{ trim($evtitle) }}</td>
                                        <td>{{ trim($evteacher) }}</td>
                                    </tr>
                                    @endforeach
                                </table>
                                <input type="text" name="question_id[]" value="{{ trim($evid) }}">
                                <input type="submit" class="btn btn-lg btn-success" value="Share" name="btn_btn_add_product">
                            </form>

Вот контроллер:

$rs = ShareQuestion::create([
            'user_id' => $request->input('user_id'),
            'question_id' => $request->input('question_id')
        ]); 

        if($rs)
        {
          $message = array('flag'=>'alert-success', 'message'=>'Successfully');
          return redirect()->route('auth.question.index')->with(['message'=>$message]);
        }

        $message = array('flag'=>'alert-danger', 'message'=>'Please try again');
        return redirect()->route('auth.question.share')->with(['message'=>$message]);

Пожалуйста, помогите мне,

Ответы [ 2 ]

0 голосов
/ 11 апреля 2020

$ request-> user_id и $ request-> question_id , массив значений, которые вы должны использовать json_encode () метод

$rs = ShareQuestion::create([
            'user_id' => json_encode($request->user_id),
            'question_id' => json_encode($request->question_id)
        ]); 
0 голосов
/ 10 апреля 2020

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

, поэтому измените с (если вы хотите отправить все user_id)

<td><input type="checkbox" name="user_id[]" value="{{ $u->id }}"></td>
* От 1005 * до
<td><input type="checkbox" name="user_id[]" checked value="{{ $u->id }}"></td>

или вы можете передать условие для проверенного атрибута как

{{ Form::checkbox('user_id[]',$u->id,true, array('class'=>'some_class')) }}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...