【问题标题】:Laravel submitting blank formLaravel 提交空白表单
【发布时间】:2016-05-29 21:05:05
【问题描述】:

我在 Laravel 4 中提交空白表单时收到以下错误。

未定义索引:字段

目前在 Laravel 之外没有任何问题。即使没有选择,用户也应该能够提交表单。

我当然可以检查 isset 并采取相应措施,但我只是想知道 Laravel 是否会引起注意。

$submission = $_POST['fields'];

表格:

{{ Form::open(array('url' => 'results')) }}
  <table>            
    <tbody>
      <tr>
        <td><span>text 1</span>
           {{ Form::checkbox('fields[]', 'value_1', false, array('class'=>'checkbox_style'))  }} 
        </td>
        <td><span>text 2</span>
           {{ Form::checkbox('fields[]', 'value_2', false, array('class'=>'checkbox_style'))  }}
       </td>
     </tr>
    </tbody>
  </table>
  {{  Form::submit('Submit', array('class'=>'btn'))  }}
{{  Form::close()  }}

【问题讨论】:

    标签: php forms laravel


    【解决方案1】:

    仔细检查可能为空或未定义的变量总是一个好习惯。

    $submission = empty($_POST['fields']) ? $_POST['fields'] : [];
    

    这样,如果$_POST['fields'] 未定义,它将被设置为一个空数组。

    【讨论】:

    • 这是我的计划,但我想知道为什么 Laravel 会抛出错误。在 Laravel 之外,它被认为是一个空数组,不会出现任何问题。
    • 它不知道这应该是一个数组,因为您正在检查密钥 'fields',而不是 $_POST 本身
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多