【问题标题】:Laravel form submit giving 500Laravel 表单提交给 500
【发布时间】:2020-04-06 11:51:42
【问题描述】:

我使用引导模式框提交表单。这是我的 HTML

<div class="modal-body">
    <div class="card-body">
        <form action="" method="POST" id="customerSubmit">
            @csrf
            <div class="row">
                <div class="col">
                    @if(session('success'))
                    <div class="alert alert-success">{{session('success')}}</div>
                    @endif
                    @if(session('error'))
                    <div class="alert alert-error">{{session('error')}}</div>
                    @endif

                    <div class="row">
                        <div class="form-group col-md-6">
                            <label for="name">Name</label>
                            <input class="form-control" name="name" id="name" type="text" placeholder="Enter Name" data-original-title="" title="" required>
                        </div>
                        <div class="form-group col-md-6">
                            <label for="hpcontact">HP Contact No</label>
                            <input class="form-control" name="hpcontact" id="hpcontact" type="text" placeholder="HP Contact No" data-original-title="" title="" required>
                        </div>
                    </div>
                    <div class="row">
                        <div class="form-group col-md-6">
                            <label for="icno">IC No</label>
                            <input class="form-control" name="icno" id="icno" type="text" placeholder="Enter IC No" data-original-title="" title="" required>
                        </div>
                        <div class="form-group col-md-6">
                            <label for="homephone">Home Contact No</label>
                            <input class="form-control" name="homephone" id="homephone" type="text" placeholder="Enter home contact no" data-original-title="" title="" required>
                        </div>
                    </div>
                    <div class="row">
                        <div class="form-group col-md-6">
                            <label for="dob">D.O.B</label>
                            <input class="form-control" name="dob" id="dob" type="date" placeholder="Enter DOB" data-original-title="" title="" required>
                        </div>
                        <div class="form-group col-md-6">
                            <label for="officeno">Office No</label>
                            <input class="form-control" name="officeno" id="officeno" type="text" placeholder="Enter Office No" data-original-title="" title="" required>
                        </div>
                    </div>
                    <div class="row">
                        <div class="form-group col-md-6">
                            <label for="address">Address</label>
                            <input class="form-control" name="address" id="address" type="text" placeholder="Enter Address" data-original-title="" title="" required>
                        </div>
                        <div class="form-group col-md-6">
                            <label for="email">Email</label>
                            <input class="form-control" name="email" id="email" type="email" placeholder="Enter Email" data-original-title="" title="" required>
                        </div>
                    </div>
                </div>
            </div>
        </form>
    </div>
</div>
<div class="modal-footer">
    <button class="btn btn-primary" id="addcustomer" type="submit" data-original-title="" data-token="{{ csrf_token() }}" title="">Add Customer</button>
    <input class="btn btn-light" type="reset" value="Cancel" data-original-title="" title="">
</div>

这是表单提交的路径

Route::post('modaluser/add', 'CustomerController@adduser')->name('customer.adduser');

这是控制器和方法

public function adduser(Request $request)
{
    $input = $request->all();
    return Response()->json($input);
}

这是用于 Ajax 的 jQuery

$(document).ready(function(){
    $('body').on('click','#addcustomer',function(e){
        e.preventDefault();
        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });

        // AJAX request
        $.ajax({
            method: 'post',
            url: '/admin/modaluser/add',
            data: $('#customerSubmit').serialize(),
            success: function(msg) {
                console.log(msg);
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) {
                console.log("some error");
            }
        });
    });
});

这是我要提交此https://eu.2e.my/admin/booking/choose 的地方。选择套餐并提交随机数后,您可以在每一行找到“+添加客户”链接。只需点击其中任何一个。之后,表格将出现。我已经给出了上面的代码。现在当我提交这个时,它给了我 500 错误。

提前谢谢你。

【问题讨论】:

  • 错误信息说什么?尝试 console.log() 它,这样你就可以知道问题了
  • 控制台出现 500 内部服务器错误。
  • 也可以在url中看到。 eu.2e.my/admin/booking/choose
  • 我不确定,但是return Response()-&gt;json($input); 大写R 在这里不是问题吗?不应该是response()还是大小写无关?
  • @Ranjit 日志文件位于storage/logs

标签: jquery ajax laravel bootstrap-modal


【解决方案1】:

ajax 网址不正确

改变

    url: '/admin/modaluser/add',

到

url: '{{ url('modaluser/add') }}'

或

url: '{{ route('customer.adduser') }}'

【讨论】:

  • 你的 laravel 版本是什么
  • 看到错误请切换到开发者模式
猜你喜欢
  • 1970-01-01
  • 2020-03-05
  • 1970-01-01
  • 1970-01-01
  • 2020-02-25
  • 2014-08-07
  • 2015-10-25
  • 2018-04-09
  • 2018-05-10
相关资源
最近更新 更多