Laravel 6-“未定义变量:值”首次出现错误

问题描述 投票:0回答:3

第一次我想将数据从表保存到数据库时,出现此错误。

ErrorException未定义的变量:值

所以我必须从tinkermysql手动输入数据>

public function store(Request $request)

{

    $validateData = $request->validate([

        'name_device_type' => 'required|max:255',

        'signature' => 'Nullable'

    ]);



    $id = DeviceType::getidDeviceTypes();

    foreach ($id as $value);   // Error happend in this line.

    $lastdevicetypeId = $value->id;

    $newdevicetypeId = $lastdevicetypeId + 1;

    $GetnewdevicetypeId = sprintf('DT%04d', $newdevicetypeId);



    $devicetypes = new DeviceType();

    $devicetypes->idDeviceType = $GetnewdevicetypeId;

    $devicetypes->name_device_type = $request->input('name_device_type');

    $devicetypes->signature = $request->input('signature');

    $devicetypes->save();



    return redirect('/devicetypes')->with('success', 'New Device Type is added');

}

但是如果表中有数据,此错误将消失,并且如果我删除所有数据并使表为空,也会再次出现此错误。

我第一次要从表中将数据保存到数据库时,会出现此错误。 ErrorException未定义的变量:值,所以我必须手动输入来自修补匠或mysql public ...

php laravel laravel-6
3个回答
1
投票

您在foreach循环定义之后有一个分号:foreach ($id as $value);并且您正在使用下一行$lastdevicetypeId = $value->id;中的值,该值超出了循环范围。


0
投票

一种可能性是尝试:$ id = json_encode(json_decode($ id));在foreach循环之前


-1
投票
if ($id->count())
© www.soinside.com 2019 - 2024. All rights reserved.