如何在Laravel中使用Ajax在数据库中插入数据?

时间:2019-08-14 14:15:12

标签: ajax laravel

我正在使用laravel框架中的简单Web应用程序。我有刀片,控制器和模型文件,我想借助ajax将数据插入数据库。但是,我无法插入数据。下面是代码:

谢谢。

<script>
    $(document).ready(function(){
         $("#button").on("click", function(){
           var name=$("#name").val();
           var email=$("#email").val();
           $.ajax({
                    url:'insert.php',
                    method:'POST',
                    data:{
                        name:name,
                        email:email,
                    },
                   success:function(data){
                       alert(data);
                   }
              });
          });
      });
</script>

2 个答案:

答案 0 :(得分:1)

您的代码有太多问题:

url:'insert.php',  // here you are not working in core php so url is not passed in this way

它将是:

url:'{{ url("/insert") }}',  // This 'insert' will be a route and that will be mapped to a controller function.

如果您正在使用:

method:'POST',

然后,您必须像这样设置csrf令牌:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
    }
});

headers: {
   'X-CSRF-TOKEN': '{{ csrf_token() }}'
}

解决以上问题,然后重试。

答案 1 :(得分:0)

至少,您必须调用脚本。

        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
            }
        });

由于是POST请求,因此需要您的csrf_token。