在控制器 Laravel5.7 中运行存储功能之前检查下拉所选值



>我在商店里有不同的案例,我有三个输入(客户名称 - 公司名称 - 代理名称(和下拉列表称为 (payment_type( 如果

案例:付款类型是(现金(所需的值是客户名称,并且(公司名称 - 代理名称(必须为空

案例:付款类型是(贷方(所需的值是公司名称,并且(客户名称 - 代理名称(必须为空

案例:付款类型为(待处理(所需的值是代理名称,并且(客户名称 - 公司名称(必须为空

我的问题是控制器内的 if 语句不起作用

这是我的控制器代码:

if ( Input::has('payment_type') == 'cash') {
$this->validate($request,[
'tkt_no'=>'required',
'sector'=>'required',
'airline'=>'required',
'supplier'=>'required',
'fare'=>'required',
'tax'=>'required',
'total_vat'=>'required',
'total_cost'=>'required',
'k7'=>'required',
'comm'=>'required',
'profit'=>'required',
'sale_price'=>'required',
'pax_name'=>'required',
'client'=>'required',
'mob'=>'required',
'amount_arabic'=>'required',
'amount_english'=>'required',
'action_type'=>'required',
'trans_type'=>'required',
'payment_type'=>'required',
]);
$ticket = new Ticket();
$ticket->date = Carbon::now();
$ticket->pnr = $request->get('pnr');
$ticket->tkt_no = $request->get('tkt_no');
$ticket->sector = $request->get('sector');
$ticket->airline = $request->get('airline');
$ticket->supplier = $request->get('supplier');
$ticket->fare = $request->get('fare');
$ticket->tax = $request->get('tax');
$ticket->total_vat = $request->get('total_vat');
$ticket->total_cost = $request->get('total_cost');
$ticket->k7 = $request->get('k7');
$ticket->comm = $request->get('comm');
$ticket->profit = $request->get('profit');
$ticket->sale_price = $request->get('sale_price');
$ticket->sign = Auth::user()->shortsign;
$ticket->branch =Auth::user()->branch_id;
$ticket->pax_name = $request->get('pax_name');
$ticket->client = $request->get('client');
$ticket->agent = null;
$ticket->company = null;
$ticket->mob = $request->get('mob');
$ticket->amount_arabic = $request->get('amount_arabic');
$ticket->amount_english = $request->get('amount_english');
$ticket->action_type = $request->get('action_type');
$ticket->trans_type = $request->get('trans_type');
$ticket->payment_type = $request->get('payment_type');
$ticket->post_flag = '0';
$ticket->save();
session()->flash('success',__('site.added_successfully'));
return redirect()->route('tickets.index');
} else if( Input::has('payment_type') == 'credit'){
$this->validate($request,[
'tkt_no'=>'required',
'sector'=>'required',
'airline'=>'required',
'supplier'=>'required',
'fare'=>'required',
'tax'=>'required',
'total_vat'=>'required',
'total_cost'=>'required',
'k7'=>'required',
'comm'=>'required',
'profit'=>'required',
'sale_price'=>'required',
'pax_name'=>'required',
'company'=>'required',
'mob'=>'required',
'amount_arabic'=>'required',
'amount_english'=>'required',
'action_type'=>'required',
'trans_type'=>'required',
'payment_type'=>'required',
]);
$ticket = new Ticket();
$ticket->date = Carbon::now();
$ticket->pnr = $request->get('pnr');
$ticket->tkt_no = $request->get('tkt_no');
$ticket->sector = $request->get('sector');
$ticket->airline = $request->get('airline');
$ticket->supplier = $request->get('supplier');
$ticket->fare = $request->get('fare');
$ticket->tax = $request->get('tax');
$ticket->total_vat = $request->get('total_vat');
$ticket->total_cost = $request->get('total_cost');
$ticket->k7 = $request->get('k7');
$ticket->comm = $request->get('comm');
$ticket->profit = $request->get('profit');
$ticket->sale_price = $request->get('sale_price');
$ticket->sign = Auth::user()->shortsign;
$ticket->branch =Auth::user()->branch_id;
$ticket->pax_name = $request->get('pax_name');
$ticket->client = null;
$ticket->agent = null;
$ticket->company = $request->get('company');
$ticket->mob = $request->get('mob');
$ticket->amount_arabic = $request->get('amount_arabic');
$ticket->amount_english = $request->get('amount_english');
$ticket->action_type = $request->get('action_type');
$ticket->trans_type = $request->get('trans_type');
$ticket->payment_type = $request->get('payment_type');
$ticket->post_flag = '0';
$ticket->save();
session()->flash('success',__('site.added_successfully'));
return redirect()->route('tickets.index');
}else if( Input::has('payment_type') == 'pending'){
$this->validate($request,[
'tkt_no'=>'required',
'sector'=>'required',
'airline'=>'required',
'supplier'=>'required',
'fare'=>'required',
'tax'=>'required',
'total_vat'=>'required',
'total_cost'=>'required',
'k7'=>'required',
'comm'=>'required',
'profit'=>'required',
'sale_price'=>'required',
'pax_name'=>'required',
'agent'=>'required',
'mob'=>'required',
'amount_arabic'=>'required',
'amount_english'=>'required',
'action_type'=>'required',
'trans_type'=>'required',
'payment_type'=>'required',
]);
$ticket = new Ticket();
$ticket->date = Carbon::now();
$ticket->pnr = $request->get('pnr');
$ticket->tkt_no = $request->get('tkt_no');
$ticket->sector = $request->get('sector');
$ticket->airline = $request->get('airline');
$ticket->supplier = $request->get('supplier');
$ticket->fare = $request->get('fare');
$ticket->tax = $request->get('tax');
$ticket->total_vat = $request->get('total_vat');
$ticket->total_cost = $request->get('total_cost');
$ticket->k7 = $request->get('k7');
$ticket->comm = $request->get('comm');
$ticket->profit = $request->get('profit');
$ticket->sale_price = $request->get('sale_price');
$ticket->sign = Auth::user()->shortsign;
$ticket->branch =Auth::user()->branch_id;
$ticket->pax_name = $request->get('pax_name');
$ticket->client = null;
$ticket->agent = $request->get('agent');
$ticket->company = null;
$ticket->mob = $request->get('mob');
$ticket->amount_arabic = $request->get('amount_arabic');
$ticket->amount_english = $request->get('amount_english');
$ticket->action_type = $request->get('action_type');
$ticket->trans_type = $request->get('trans_type');
$ticket->payment_type = $request->get('payment_type');
$ticket->post_flag = '0';
$ticket->save();
session()->flash('success',__('site.added_successfully'));
return redirect()->route('tickets.index');
}

这是我的刀片文件代码:

<div class="form-group col-md-2">
<label>@lang('site.payment_type')</label>
<select class="form-control select2 status-type" style="width: 100%;"
name="payment_type"
onchange="showresult(this.value)"
id="payment_type">
<option selected value="cash">@lang('site.cash')</option>
<option value="credit">@lang('site.credit')</option>
{{--                                            <option value="advance">@lang('site.advance')</option>--}}
<option value="pending">@lang('site.pending')</option>
</select>
</div>
<div id="pax_name_div" class="col-md-3">
<div class="form-group">
<label for="pax_name">@lang('site.pax_name')</label>
<div class="position-relative has-icon-left">
<input type="text" id="pax_name" class="form-control"
name="pax_name"
value="{{ old('pax_name') }}" >
<div class="form-control-position">
<i  class="la la-keyboard-o"></i>
</div>
</div>
</div>
</div>
<div id="company_div" style="display: none" class="form-group col-md-3">
<label >@lang('site.company_name')</label>
<select class="form-control select2 status-type" style="width: 100%;"
name="company"
id="company">
@foreach ($companies as $company)
<option value="{{ $company->id }}">{{ $company->name }}</option>
@endforeach
</select>
</div>
<div id="agent_div" style="display: none" class="form-group col-md-3">
<label >@lang('site.agent_name')</label>
<select class="form-control select2 status-type" style="width: 100%;"
name="agent"
id="agent">
@foreach ($agents as $agent)
<option value="{{ $agent->id }}">{{ $agent->name }}</option>
@endforeach
</select>
</div>

<div id="client_div" style="display: block" class="col-md-3">
<div class="form-group">
<label for="client">@lang('site.client_name')</label>
<div class="position-relative has-icon-left">
<input type="text" id="client" class="form-control"
name="client"
value="{{ old('client') }}">
<div class="form-control-position">
<i class="la la-keyboard-o"></i>
</div>
</div>
</div>
</div>

你能帮我吗?

这是因为您正在使用:

if (输入::has('payment_type'( == '现金'(

has('field'( 返回布尔值,所以尝试像这样获取:

Input::get('payment_type') == 'cash'

或者您可以直接使用:

$request->payment_type

最新更新