Есть ли способ сохранить значение foreach в базе данных - PullRequest
0 голосов
/ 19 июня 2019

Я пытаюсь сохранить значение представления foreach в базе данных с помощью контроллера. Есть ли другой способ сохранения значения контроллером без представления foreach

Просмотр

@foreach ($ticket_details as $key=>$ticket_detailss)
        <li>
            <h3 style="text-align:center ">TICKET ID<small  class="text-success "><br type="text" id="ticket_id" name="ticket_id" >{{$ticket_detailss->ticket_id }}</small></h3>
        </li>
        <li>
            <h3 style="text-align:center ">SUBJECT<small  class="text-success "><br>{{$ticket_detailss->subject }}</small></h3>
        </li>
        <li>
            <h3 style="text-align:center ">NAME<small  class="text-success "><br type="text" id="names" name="names" >{{$ticket_detailss->name }}</small></h3>
        </li>
        <li>
            <h3 style="text-align:center ">ID<small  class="text-success "><br type="text" id="user_filter_id" name="user_filter_id" >{{$ticket_detailss->user_filter_id }}</small></h3>
        </li>
        <li>
            <h3 style="text-align:center ">STAFF ID<small  class="text-success "><br type="text" id="user_staff_id" name="user_staff_id" >{{$ticket_detailss->user_staff_id }}</small></h3>
        </li>
    @endforeach 

Контроллер

public function manager_send_messageChat(Request $request)
{

    $this - >validate($request, [

    'message' = >'required|string|max:255', 'ticket_id' = >'string|max:255',

    ]);

    foreach($ticket_details as $ticket_detailss) {

        $ticket_detailss['name'] = $ticket_detailss - >name;
        $ticket_detailss['user_filter_id'] = $ticket_detailss - >user_filter_id;
        $ticket_detailss['user_staff_id'] = $ticket_detailss - >user_staff_id;

        $input['message'] = $request - >message;
        $input['manager_staff_id'] = Auth::user() - >staff_id;
        $input['manager_filter_id'] = Auth::user() - >id;
        $input['manager_name'] = Auth::user() - >name;
        $input['reply_by'] = 'staff';
        $input['ticket_id'] = $request - >ticket_id;

        User_Ticket_Chat::create($input);

        return redirect('/ticket') - >with('success', ' THIS TICKET ASSIGNED FOR YOU .');
    }
}

1 Ответ

0 голосов
/ 19 июня 2019

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

    $data['ticket_details']='assign record'; //this goes to the view
    $ticket_details[]='assign record'; this goes to the controller

    foreach($ticket_details as $key=>$ticket_detailss)
    //checking if exacts record exists     
                   if(DB::table('table')->where('id',$ticket_detailss->ticket_id)->where('subject',$ticket_detailss->subject)->where('name',$ticket_detailss->name)->where('user_filter_id',$ticket_detailss->user_filter_id)->where('user_staff_id',$ticket_detailss->user_staff_id)->first())
                         {
                        //if record exists, do not insert
                        }else{
                           //if record do not exists, insert into db
                          $save =  DB::table('table')->insert([
                          'subject'             => $ticket_detailss->subjecte,
                          'name'          => $ticket_detailss->name,
                          'user_filter_id'        => $ticket_detailss->user_filter_id,
                          'user_staff_id'=> $ticket_detailss->user_staff_id,

                        ]);
                        }
                     }

return view('blade',$data);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...