php - 如何在 Laravel 中调试 "Parse error: syntax error, unexpected ' <', expecting ' ]'"?

标签 php mysql laravel

我正在尝试创建一个表单,列出汽车表中的汽车,如果单击,则会发送到另一个表单,该表单基于返回所选汽车数据的数据库查询(由 $modelesc 标识) )。该表单将数据发送到“orders”表。

我现在在orders.blade.php 中收到以下错误:

Parse error: syntax error, unexpected '<', expecting ']'

我不明白为什么我会得到“<”;我在代码中没有看到这一点!

到目前为止,这是我的代码:

汽车 Controller

function catalog() {
    $cars = DB::table('cars')->get();
    return view('catalog', compact('cars'));
}

function orders($modelesc=null) {
    $cars = DB::table('cars')->where('Model', '=', '$modelesc');
    return view('orders', compact('cars'));
}

Catalog.blade.php

@foreach($cars as $car)
    {!! Form::open(array('action' => 'CarController@orders', 'method' => 'GET')) !!}
    {!! Form::hidden('$modelesc', $car->Model) !!}
    {!! Form::submit($car->Model) !!}
    {!! Form::close() !!}                                       
@endforeach

Orders.blade.php

{!! Form::open(array('action' => 'index', 'method' => 'POST')) !!}
    {!! Form::text('Model', $car->Model) !!}
    {!! Form::hidden(users_id, Auth::user()->id) !!}
    {!! Form::hidden(Fabrication_date, date(Y-m-d)) !!}
    {!! Form::select('Colour', [
        @foreach($colours as $colour)
            '$colour->Colour' => '$colour->Colour'
        @endforeach
    ]) !!}
    {!! Form::hidden(Order_status_id, '1' !!}
{!! Form::close() !!}

这是订单表的结构。 *_id 字段来自其他表,我想用相关条目填充表单的一些值(id、users_id、Model、Fabrication_date、Colour_id、Order_status_id)。

最佳答案

首先,您需要将表单名称括在引号内,订单状态 ID 也缺少右括号:

{!! Form::hidden('users_id', Auth::user()->id) !!}

{!! Form::hidden('Fabrication_date', date('Y-m-d')) !!}

{!! Form::hidden('Order_status_id', '1') !!}

接下来,如果 $colours 是一个集合,您可以在 Laravel 5.4 中执行以下操作(我不确定您使用的是哪个版本)

{!! Form::select('Colour', $colours->pluck('Colour')) !!}

如果您使用的是 Laravel 5.1 或更早版本,您将执行以下操作:

{!! Form::select('Colour', $colours->lists('Colour')) !!}

这是因为 lists 方法在 5.2 中被删除。

@pseudoanime的回答也是正确的,数据库调用需要添加get方法

关于php - 如何在 Laravel 中调试 "Parse error: syntax error, unexpected ' <', expecting ' ]'"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42493944/

相关文章:

javascript - 我怎样才能在同一个函数中收到多个 ajax 响应

PHP RabbitMQ setTimeout 或其他停止等待队列的选项

mysql - 使用 __construct 更新模型以限制返回结果

php - Laravel SSL 协议(protocol)错误

php - Laravel - 多少查询太多了?

php - ORM 的 Kohana 数据库配置设置

php - Yii2 翻译不起作用

php - 表 1 中的标志字段也适用于表 2

php - 如何在 Laravel 中以多对多关系正确检索数据?

Laravel 单元测试自动依赖注入(inject)不起作用?