javascript - 我正在尝试将 ajax 变量传递到数据库

标签 javascript php ajax laravel

我不熟悉 AJAX,但我必须在这个项目中使用它。现在问题就出在这里。我正在使用支付网关,并且能够成功运行代码,但在将引用号提取到我创建的数据库中时遇到问题。下面是我认为问题所在的代码部分。

 callback: function(response){
                            let reference= response.reference;
                            //Verify payment using jqajax
                            $.ajax({
                                type: "GET",
                                url: "{{ URL::to('verify-payment') }}/"+reference,
                                success: function (response){
                                    console.log(response);
                                    if(response[0].status == true){

                                        var name = $('#FirstName').val();
                                        var lastname = $('#LastName').val();
                                        var class = $('#class').val();
                                        var amount = $('#amount').val();
                                        var email = $('#email').val();



                                        $.ajaxSetup({
                                            headers: {
                                                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                                            }
                                        });
                                        //ajax request send

                                        $.ajax({


                                        type: 'GET',
                                        url: 'save-data/'+name+'/'+lastname+'/'+class+'/'+amount+'/'+email+'/'+reference,
                                        success: function(result){

                                        $('form').prepend('<h4 >Payment successful</h4>').css("textAlign", "center");

                                        document.getElementById("paymentForm").reset();
                                        }
                                        });

我正在尝试获取引用号并将其传递到我的数据库中的列中。 这是处理存储数据的 Controller 方面。

public function save_data($name, $lastname, $classes, $amount, $email, $reference)
{

    //
    $paymentData = new Payment();
    $paymentData->First_name = $name;
    $paymentData->Last_name = $lastname;
    $paymentData->Class = $class;
    $paymentData->Amount = $amount;
    $paymentData->Email = $email;
    $paymentData->reference->$reference;
   
    $paymentData->save();
    return view('');
}

这是我为其创建的路线。

Route::get('save-data/{name}/{lastname}/{class}/{amount}/{email}/{reference}', [PaymentController::class, 'save_data'])->name('save-data');

请注意,当我运行代码时,这就是我在控制台上看到的内容。

jquery.min.js:2          GET http://127.0.0.1:8000/save-data/lucy/cage/J%201/200/<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="dfb2a6bab2beb6b39fb8b2beb6b3f1bcb0b2" rel="noreferrer noopener nofollow">[email protected]</a>/775387417 500 (Internal Server Error)

我可以看到引用号已获取,但我不知道为什么它不会保存到数据库中。

最佳答案

我认为您在 $ paymentData->reference->$reference; 中的 function save_date(...) 有问题,应该是 $ paymentData->引用 = $引用;

关于javascript - 我正在尝试将 ajax 变量传递到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72021505/

相关文章:

javascript - 使用jquery和ajax从html字符串中的div获取值

javascript - validateLogin 是一个未定义的函数。(javascript 异常)

php - 安装了 "Memcache"PECL 扩展后无法运行 PHP 运行时

javascript - DataTables 中的 PHP 重定向按钮不起作用

javascript - 将登录 API key 保存在存储中的最佳实践?

javascript - ng-repeat 不迭代范围内的项目

javascript - 使用变量作为数组名称

javascript - 如何使用 javascript 或 jquery 运行放置在数组中的函数

javascript - Django 使用 ChartJS 显示图表

php - 为已登录的 FB 用户强制执行新的权限请求