为了账号安全,请及时绑定邮箱和手机立即绑定

尽管已输入输入,但请求包含 null

尽管已输入输入,但请求包含 null

PHP
湖上湖 2023-07-21 18:14:44
我正在尝试使用 Laravel 更新我的数据。我能够创建、读取、删除数据,但不知何故我无法更新我的数据。我已经检查了我的控制器、模型、路线和视图,但我认为没有任何错字或任何东西。尽管我输入了新的输入,但它仅重定向到其索引页面而没有更新。根本没有错误消息,所以我检查了问题出在哪里。所以我在控制器中检查了我的更新函数,并尝试显示请求,echo "$request->kode_kontak";但echo $request->kode_kontak;它没有显示任何内容,我认为它是空/空的,但是当我echo "yes"它在屏幕上显示“是”时,我对此进行了测试,因为我想知道函数本身是否正常工作,所以这里的问题是请求包含空,难怪我无法更新它。为什么请求没有通过?为什么会这样?以及如何解决它?编辑和更新路径Route::get('contact/{contact}/edit', 'ContactController@edit')->name('contact.edit');Route::patch('contact/{contact}','ContactController@update')->name('contact.update');具有编辑和更新功能的控制器use Illuminate\Http\Request;use App\Contact;use DB;public function edit($kode_kontak){        $contact = DB::table('contact')->where('kode_kontak',$kode_kontak)->get();        return view('contact.edit',['contact' => $contact]);    }public function update(Request $request){        DB::table('contact')->where('kode_kontak',$request->kode_kontak)->update([            'email' => $request->email,            'telepon' => $request->telepon,        ]);        return redirect('contact');    }模型class Contact extends Model{    public $timestamps = false;        protected $table = 'contact';    protected $fillable = [        'kode_kontak',        'kode_pegawai',        'email',        'telepon'            ];    protected $primaryKey = 'kode_kontak';}
查看完整描述

2 回答

?
Qyouu

TA贡献1786条经验 获得超11个赞

您的问题是您已禁用这些输入。禁用的输入将不会被提交。

如果您想显示禁用的输入,但仍然修补这些值,您将需要添加具有这些值的隐藏输入,例如:

     <div class="form-group">

            <label for="kode_contact" class="control-label">Kode Kontak</label>

            <input type="text" id="kode_kontak" class="form-control" value="{{ $p->kode_kontak}}" disabled>

            <input type="hidden" name="kode_kontak" value="{{ $p->kode_kontak}}">

        </div>

        <div class="form-group">

            <label for="kode_pegawai" class="control-label">Kode Pegawai</label>

            <input type="text" id="kode_pegawai" class="form-control" value="{{ $p->kode_pegawai}}" disabled>

            <input type="hidden" name="kode_pegawai" value="{{ $p->kode_pegawai}}">

        </div>

希望有帮助!


查看完整回答
反对 回复 2023-07-21
?
SMILET

TA贡献1796条经验 获得超4个赞

$request->kode_kontak在$contact这里,$request->kode_kontak在 中不可用$request,请更改$contact:


public function update(Request $request, $contact){

   DB::table('contact')->where('kode_kontak',$contact)->update([

      'email' => $request->email,

      'telepon' => $request->telepon,

   ]);

  return redirect('contact');

}


查看完整回答
反对 回复 2023-07-21
  • 2 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信