php 我在laravel9的基本级别,并试图保存()或更新()在数据库中,这个错误发生尝试分配属性“名称”为空

zbdgwd5y  于 2023-01-16  发布在  PHP
关注(0)|答案(2)|浏览(128)

this is controller codeand this is route,这是刀片式服务器代码:

<div class="container mt-5 mb-5 w-25" >
  <div class="card">
    <div class="card-header">
      <p class="fs-1">Update Members</p>
    </div>
    <div class="card-body">
      <form class="row g-3" action="/update" method="POST">
        @csrf
        <div class="col-12">
          <label for="id" class="form-label">Id</label>
          <input type="hidden" value="{{$data['id']}}" class="form-control "  id="id">
        </div>
        <div class="col-12">
          <label for="name" class="form-label">Name</label>
          <input type="text" class="form-control" value="{{$data['Name']}}"  id="name">
        </div>
        <div class="col-12">
          <label for="email" class="form-label">Email</label>
          <input type="text" class="form-control" value="{{$data['Email']}}" id="email">
        </div>
        <div class="col-12">
          <label for="address" class="form-label">Address</label>
          <input type="text" class="form-control" value="{{$data['Address']}}" id="address">
        </div>
        <div class="col-12">
          <label for="phone" class="form-label">Phone</label>
          <input type="text" class="form-control" value="{{$data['Phone']}}" id="phone">
        </div>
        
        <div class="col-12">
          <button type="submit" class="btn btn-primary">Update</button>
          <hr class="border border-primary border-3 opacity-75">
        </div>
      </form>
      
    </div>
  </div> 
</div>

我试图保存这四列在数据库名称电子邮件地址电话然后这个错误发生。请回答我快,如果你知道吗?
I am trying to save data in this columns

nuypyhwy

nuypyhwy1#

一种可能性是,在控制器中,$data为空。你可以通过将“find”更改为“findOrFail”来使代码失败。代码将返回NotFoundException。然后你可以调查$data为空的原因。
请访问https://laravel.com/docs/9.x/eloquent#not-found-exceptions。

eivnm1vs

eivnm1vs2#

问题可能出在您更新函数中,它应该如下所示:

function update(Request $req){
$data = Member::find($req->id);

$data->Name = $req->Name;
$data->Email= $req->Email;
$data->Address = $req->Address;
$data->Phone = $req->Phone;
$data->save();

return redirect()->input();
}

在您的更新函数中,您已将大写更改为小写,这将导致尝试在空值上分配属性“name”错误

相关问题