Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 提交数据Laravel后的自定义错误消息_Php_Html_Laravel_Laravel 5 - Fatal编程技术网

Php 提交数据Laravel后的自定义错误消息

Php 提交数据Laravel后的自定义错误消息,php,html,laravel,laravel-5,Php,Html,Laravel,Laravel 5,我已经问过这个问题了,但是这次有一些不同。上次问题解决得很好,所以现在我只需要一只手来告诉我如何更改代码,使其正常工作 我改变的是,我已经实现了一种方法,可以一次成功地出借多本书。现在我有了一个完美工作的数组 这就是我的观点,想象一下,对于你想借出的每一本书,代码是3倍: <div class="form-group row"> <label for="serialnumber" class="col-md-4 col-form-label text-md-right

我已经问过这个问题了,但是这次有一些不同。上次问题解决得很好,所以现在我只需要一只手来告诉我如何更改代码,使其正常工作

我改变的是,我已经实现了一种方法,可以一次成功地出借多本书。现在我有了一个完美工作的数组

这就是我的观点,想象一下,对于你想借出的每一本书,代码是3倍:

<div class="form-group row">
     <label for="serialnumber" class="col-md-4 col-form-label text-md-right">{{ __('Gerät 1 (serialnumber) :') }}</label>
     <div class="col-md-6">
          <input id="serialnumber" type="text" class="form-control{{ $errors->has('serialnumber') ? ' is-invalid' : '' }}" name="serialnumber[]" value="{{ old('serialnumber') }}" required   @if (Session::has('autofocus')) autofocus @endif>
          @if ($errors->any())
               <div class="alert alert-danger">The book with this serialnumber is already lend by antoher person
                    <ul>

                    </ul>
                </div>
          @endif
      </div>
</div>
最后是我的Request.php页面:

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class BookRequest extends FormRequest
{
    public function authorize()
    {
         return true;
    }

    public function rules()
    {
        return [
          'serialnumber[0]'  => 'required|unique:borrowed,serialnumber,null',
          'serialnumber[1]'  => 'required|unique:borrowed,serialnumber,null',
          'serialnumber[2]'  => 'required|unique:borrowed,serialnumber,null',
          'ma_id'      => 'required',

        ];
    }

    public function messages()
    {
        return [
            'serialnumber' => 'Seems like you have added the same book more than once!',
       ];
    }
}
更改您的视图:

@if(!empty(old('serialnumber')))
 @foreach(old('serialnumber') as $i=>$value)
<input id="serialnumber" type="text" class="form-control{{ $errors->has('serialnumber') ? ' is-invalid' : '' }}" name="serialnumber[]" value="{{ old('serialnumber.'.$i) }}" required   @if (Session::has('autofocus')) autofocus @endif>

@endforeach
    @endif


这三个序列号是固定的吗?你的意思是什么?你一直只有3个序列号吗?还是可以增加金额。如果是这样,你每次都必须调整规则和控制器。你最多可以输入3个序列号,但不能超过3个。我在哪里实现“$i”呢?因为它说它未定义,我不知道在哪里定义它:o谢谢你的详细回答@Devi检查刀片文件中的旧值,如@foreach(旧('serialnumber')为$i=>$value)是否有引号错误?在输入字段中,当我实现if和foreach时,我的输入字段消失。这仅适用于出现错误时的旧值,否则使用简单的html输入
@if(!empty(old('serialnumber')))
 @foreach(old('serialnumber') as $i=>$value)
<input id="serialnumber" type="text" class="form-control{{ $errors->has('serialnumber') ? ' is-invalid' : '' }}" name="serialnumber[]" value="{{ old('serialnumber.'.$i) }}" required   @if (Session::has('autofocus')) autofocus @endif>

@endforeach
    @endif
 public function rules(){
      return [
       'serialnumber.0'  => 'required|unique:borrowed,serialnumber,null',
       'serialnumber.1'  => 'required|unique:borrowed,serialnumber,null',
       'serialnumber.2'  => 'required|unique:borrowed,serialnumber,null',
       'ma_id'      => 'required',

      ];
  }
public function rules(){
      return [
       'serialnumber.*'  => 'required|unique:borrowed,serialnumber,null',          
       'ma_id'      => 'required',

      ];
  }
public function messages()
{
    return [
        'serialnumber.*' => 'Seems like you have added the same book more than once!',
   ];
}