【问题标题】:Empty request with update Ajax Laravel带有更新 Ajax Laravel 的空请求
【发布时间】:2018-03-15 00:26:50
【问题描述】:

我正在尝试使用 ajax 修改数据库,但是当我发送信息时,它在插入时给了我以下错误,就好像请求为空一样:

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'date' cannot be null (SQL: update `appointments` set `date` = , `startTime` = , `finalTime` = , `user_id` = , `patient_id` = , `updated_at` = 2017-10-03 18:05:40 where `id` = 32)

这是控制器:

 public function update(Request $request, $id)
{
    $appointment =Appointment::find($id);
    $appointment->patient_id = $request->patient_id;
    $appointment->user_id = $request->user_id;
    $appointment->date = $request->date;
    $appointment->startTime = $request->startTime;
    $appointment->finalTime = $request->finalTime;

    $appointment->save();
}

路线:

Route::name('appointments.update')->put('/citas/{id}', 'AppointmentController@update'); 

ajax:

$('#update').on('click', function(){
        var x = $(this);
        var update_url = x.attr('data-href')+'/'+x.attr('data-id');

        var user_id = $('select[name="user_id"').val();
        var patient_id = $('select[name="patient_id"').val();
        var date = $('input#date').val();
        var startTime = $('input#startTime').val();
        var finalTime = $('input#finalTime').val();
        console.log(date);
        console.log(startTime);
        console.log(finalTime);
        $.ajax({
            url: update_url,
            headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
            type:'PUT',
            date:{user_id:user_id, patient_id:patient_id, date:date, startTime:startTime, finalTime:finalTime},
            success:function(result){
                alert('success');
            },
            error:function(result){
                alert('error');
            }

        });
    });

【问题讨论】:

  • 根据错误,您将日期发送为 null.dd($request->all() 并发布结果

标签: php jquery ajax laravel laravel-5


【解决方案1】:

看起来您在$.ajax 中可能有错误,data 字段当前为date,应该是:

$.ajax({
    url: update_url,
    headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
    type:'PUT',
    data:{user_id:user_id, patient_id:patient_id, date:date, startTime:startTime, finalTime:finalTime},
    success:function(result){
        alert('success');
    },
    error:function(result){
        alert('error');
    }

});

【讨论】:

  • 发生在我们所有人身上。
猜你喜欢
  • 1970-01-01
  • 2018-02-17
  • 1970-01-01
  • 1970-01-01
  • 2019-07-23
  • 1970-01-01
  • 1970-01-01
  • 2021-06-05
  • 2015-10-09
相关资源
最近更新 更多