Как я могу получить значения некоторых входных данных из базы данных после выбора опции в раскрывающемся списке - PullRequest
0 голосов
/ 30 апреля 2019

Я создаю HTML-форму, которая содержит всю информацию о клиентах и ​​другую информацию, поэтому я выбрал бы имя клиента, который находится в раскрывающемся списке (выберите параметры, содержащие все имена клиентов), другоеполя ввода, такие как (адрес, телефон, электронная почта), должны быть заполнены автоматически.

Я не знаю, что мне нужно использовать ajax или jquery и как его использовать.

это мое мнение:

@extends('layouts.master')

@section('content')

<div class="container">
    <div class="row">
        <div class="col-md-11">
            <div class="panel panel-default">
                <div class="panel-heading">Création de commandes</div>

                <div class="panel-body">
                    <form id="form2" class="form-horizontal" method="POST" action="{{url('gestion_commandes/create')}}">
                        {{ csrf_field() }}

                        <div class="form-group{{ $errors->has('nomp') ? ' has-error' : '' }}">
                            <label for="nomp" class="col-md-1 control-label">Client</label>

                            <div class="col-md-5">

                                     <select name="nomclient" id="nomclient"  class="form-control dynamic" data-dependent="organisme" required autofocus>
                                          <option>--Select--</option>
                                          @foreach ($clientscombos as $clientcombos)
                                          <option value="{{$clientcombos->nom}}">{{$clientcombos->nom}} </option>
                                          @endforeach
                                     </select>

                         </div>
                         {{ csrf_field() }}

                             <label for="organisme" class="col-md-1 control-label">Organisme</label>

                          <div class="col-md-5">
                                <input id="organisme" type="text" class="form-control" name="organisme" value="{{$clientcombos->organisme}}"  required  autofocus>

                                @if ($errors->has('organisme'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('organisme') }}</strong>
                                    </span>
                                @endif
                            </div>




                        </div>

                        <div class="form-group{{ $errors->has('adresse') ? ' has-error' : '' }}">

                            <label for="adresse" class="col-md-1 control-label">Adresse</label>

                            <div class="col-md-5">
                                <input id="adresse" type="text" class="form-control" name="adresse" value="{{$clientcombos->adresse}}"   autofocus>

                                @if ($errors->has('adresse'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('adresse') }}</strong>
                                    </span>
                                @endif
                            </div>

                            <label for="emailp" class="col-md-1 control-label">E-Mail Address</label>

                            <div class="col-md-5">
                                <input id="emailp" type="email" class="form-control" name="emailp" placeholder="Saisir l'adresse email" required autofocus>

                                @if ($errors->has('emailp'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('emailp') }}</strong>
                                    </span>
                                @endif
                            </div>




                      </div>

                      <div class="form-group{{ $errors->has('adressep') ? ' has-error' : '' }}">

                          <label for="tel" class="col-md-1 control-label">Tel</label>

                            <div class="col-md-3">
                                <input id="tel" type="Tel" class="form-control" name="tel"  value="{{$clientcombos->tel1}}" required autofocus>

                                @if ($errors->has('tel'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('tel') }}</strong>
                                    </span>
                                @endif
                            </div>

                            <label for="tel2p" class="col-md-1 control-label">Tel2</label>

                            <div class="col-md-3">
                                <input id="tel2p" type="Tel" class="form-control" name="tel2p"  value="+2126" required autofocus>

                                @if ($errors->has('tel2p'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('tel2p') }}</strong>
                                    </span>
                                @endif
                            </div>

                         <label for="faxp" class="col-md-1 control-label">Fax</label>

                            <div class="col-md-3">
                           <input id="faxp" type="Tel" class="form-control" name="faxp" value="{{$clientcombos->fax}}" required autofocus>

                               @if ($errors->has('faxp'))
                              <span class="help-block">
                              <strong>{{ $errors->first('faxp') }}</strong>
                                </span>
                               @endif
                            </div>


                      </div>


















                            <div class=" panel panel-success">                             </div>
                            <div class=" panel panel-success">                             </div>


                        <div class="form-group{{ $errors->has('daterecep') ? ' has-error' : '' }}">

                                <label for="commercial" class="col-md-1 control-label">Commercial</label>

                            <div class="col-md-3">
                            <select name="commercial" id="commercial"  class="form-control" required autofocus>
                                          <option>--Select--</option>
                                          @foreach ($combocommerciaux as $combocommercial)
                                          <option value="{{$combocommercial->name}}">{{$combocommercial->name}} </option>
                                          @endforeach
                                     </select>

                            </div>

                            <label for="datereception" class="col-md-1 control-label">Date de réception</label>

                            <div class="col-md-3">
                                <input id="datereception" type="date" class="form-control" name="datereception" placeholder="Saisir le nom complet"  required autofocus>

                                @if ($errors->has('datereception'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('datereception') }}</strong>
                                    </span>
                                @endif
                            </div>

                            <label for="dateprelev" class="col-md-1 control-label">Date de prélevement</label>

                            <div class="col-md-3">
                                <input id="dateprelev" type="date" class="form-control" name="dateprelev" placeholder="Saisir le nom complet"  required autofocus>

                                @if ($errors->has('dateprelev'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('dateprelev') }}</strong>
                                    </span>
                                @endif
                            </div>


                     </div>


                      <div class="form-group{{ $errors->has('commercial') ? ' has-error' : '' }}">
                             <label for="savedby" class="col-md-9 control-label">Enregistrée par </label>

                            <div class="col-md-3">
                                <input id="savedby" type="text" class="form-control" name="savedby" value="{{Auth::user()->name}}" required autofocus>

                                @if ($errors->has('savedby'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('savedby') }}</strong>
                                    </span>
                                @endif
                            </div>
                        </div>

                        <div class="form-group{{ $errors->has('nbrrowsol') ? ' has-error' : '' }}">
                            <label for="nbrrowsow" class="col-md-1 control-label">Sol </label>

                            <div class="col-md-3">
                                <input id="nbrrowsol" type="number" class="form-control" name="nbrrowsol"  required autofocus>

                                @if ($errors->has('nbrrowsol'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('nbrrowsol') }}</strong>
                                    </span>
                                @endif
                            </div>


                        </div>

                        <div class="form-group{{ $errors->has('nbrroweau') ? ' has-error' : '' }}">
                            <label for="nbrroweau" class="col-md-1 control-label">Eau </label>

                            <div class="col-md-3">
                                <input id="nbrroweau" type="number" class="form-control" name="nbrroweau"  required autofocus>

                                @if ($errors->has('nbrroweau'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('nbrroweau') }}</strong>
                                    </span>
                                @endif
                            </div>


                        </div>
                        <div class="form-group{{ $errors->has('nbrrowveg') ? ' has-error' : '' }}">
                            <label for="nbrrowveg" class="col-md-1 control-label">VEG </label>

                            <div class="col-md-3">
                                <input id="nbrrowveg" type="number" class="form-control" name="nbrrowveg"  required autofocus>

                                @if ($errors->has('nbrrowveg'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('nbrrowveg') }}</strong>
                                    </span>
                                @endif
                            </div>


                        </div>
                        <div class="form-group{{ $errors->has('nbrrowbiof') ? ' has-error' : '' }}">
                            <label for="nbrrowbiof" class="col-md-1 control-label">Fertilisant </label>

                            <div class="col-md-3">
                                <input id="nbrrowbiof" type="number" class="form-control" name="nbrrowbiof" placeholder="Saisir l'adresse email" required autofocus>

                                @if ($errors->has('nbrrowbiof'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('nbrrowbiof') }}</strong>
                                    </span>
                                @endif
                            </div>

                            <div class="col-md-6 control-label">
                            <button type="submit" class="btn btn-primary" onclick="location.href='{{url('gestion_regions/create')}}'" >Executer</button>
                            </div>

                        </div>
                        <div class="form-group{{ $errors->has('nbrrowmicair') ? ' has-error' : '' }}">
                            <label for="nbrrowmicair" class="col-md-1 control-label">Mic Air </label>

                            <div class="col-md-3">
                                <input id="nbrrowmicair" type="number" class="form-control" name="nbrrowmicair"  required autofocus>

                                @if ($errors->has('nbrrowmicair'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('nbrrowmicair') }}</strong>
                                    </span>
                                @endif
                            </div>


                        </div>
                        <div class="form-group{{ $errors->has('nbrrowmiceau') ? ' has-error' : '' }}">
                            <label for="nbrrowmiceau" class="col-md-1 control-label">Mic Eau</label>

                            <div class="col-md-3">
                                <input id="nbrrowmiceau" type="number" class="form-control" name="nbrrowmiceau"  required autofocus>

                                @if ($errors->has('nbrrowmiceau'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('nbrrowmiceau') }}</strong>
                                    </span>
                                @endif
                            </div>


                        </div>
                        <div class="form-group{{ $errors->has('nbrrowmicsurface') ? ' has-error' : '' }}">
                            <label for="nbrrowmicsurface" class="col-md-1 control-label">Mic Surface </label>

                            <div class="col-md-3">
                                <input id="nbrrowmicsurface" type="number" class="form-control" name="nbrrowmicsurface" placeholder="Saisir l'adresse email" required autofocus>

                                @if ($errors->has('nbrrowmicsurface'))
                                    <span class="help-block">
                                        <strong>{{ $errors->first('nbrrowmicsurface') }}</strong>
                                    </span>
                                @endif
                            </div>


                      </div>



                        <div class="form-group">
                            <div class="col-md-6 col-md-offset-4">

                                <button type="submit" class="btn btn-success">
                                    Enregistrer
                                </button>

                            </div>
                        </div>
                    </form>
                </div>




            </div>
        </div>
    </div>
</div>
@endsection

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

<?php

namespace App\Http\Controllers;


use Illuminate\Http\Request;
use DB;
use App\Client;

class DynamicDependent extends Controller
{

    public function comboboxclients()
    {
        $clientscombos = DB::select('select * from clients');
        $combocommerciaux = DB::select('select * from commercials');


        return view('gestion_commandes.create',['clientscombos' => $clientscombos , 'combocommerciaux' => $combocommerciaux]);

    }
}

1 Ответ

0 голосов
/ 30 апреля 2019

Вы должны:

1) На стороне сервера: создайте другое действие, которое будет извлекать данные клиента на основе значения из выбора (я предлагаю вам использовать идентификатор клиента в качестве значения выбора внутри вашего шаблона).

2) На стороне клиента: добавьте ловушку при изменении значения выбора (событие 'change' внутри JS), которое отправит запрос AJAX (содержащий выбранное значение) действию, созданному на шаге 1, и заполнит входные данные формы полученными данными.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...