我在 laravel 上的文本区域在更新时没有给出任何值 - laravel 8



我需要一些建议。我制作了一个视图,用于编辑包含textarea表单的数据库。不幸的是,当我点击保存按钮时,它不会对数据库进行任何更改。我该怎么办?

下面是infoupdate.blade.view中的表单:

<form action="{{ route('updateinfo') }}" method="POST">
@method('PUT')
@csrf
<div class="intro-y box p-5">
<div>
<div class="mt-3"> <label for="by" class="form-label">Oleh</label> <input name="by" id="by" type="text" class="form-control" value="{{ auth()->user()->username }}" readonly></div>
</div>
<div>
<div class="mt-3"> <label for="selectedTime" class="form-label">Waktu Pengumuman</label> <input name="selectedTime" id="selectedTime" type="text" class="form-control" value="{{ $infos->selectedTime }}" readonly></div>
</div>
<div class="mt-3">
<label class="pb-8" for="contentInfo">Isi Pengumuman</label>
<textarea name="contentInfo" id="contentInfo" class="w-full border-2" rows="10" cols="100">{{ $infos->contentInfo }}</textarea>
</div>
<div class="text-right mt-5">
<button type="submit" class="btn btn-primary w-24">Simpan</button>
</div>
</div>
</form>

还有DBIController.php中的update函数:

public function update(Request $request){
$request->validate([
'contentInfo' => 'required|min:16'
]);
DB::table('infos')->where('id', $request->id)->update([
'contentInfo' => $request->contentInfo
]);
return redirect()->route('DBI')->with('message','Data Pengumuman Berhasil di Update');
}

和web.php中显示表单的路由和更新数据库的路由:

Route::get('/infoeditor/{id}',[DBIController::class, 'edit'])->middleware('admin')->name('infoeditor');
Route::put('/updateinfo',[DBIController::class,  'update'])->middleware('admin')->name('updateinfo');

在您的更新路由中,您需要添加/{id}

Route::put('/updateinfo/{id}',[DBIController::class, 'update'])->middleware('admin')->name('updateinfo');

然后,在你的控制器方法中,你将添加$id作为参数
public function update(Request $request, int $id)
{
$request->validate([
'contentInfo' => 'required|min:16'
]);
DB::table('infos')->where('id', $id)->update([
'contentInfo' => $request->contentInfo
]);
return redirect()->route('DBI')->with('message','Data Pengumuman Berhasil di Update');
}

在你的视图中,你用$id

更新动作url<form action="{{ route('updateinfo', ['id' => $infos->id]) }}" method="POST">

相关内容

  • 没有找到相关文章

最新更新