Laravel jQuery - 检查数据库

时间:2018-04-16 09:17:14

标签: javascript php jquery laravel laravel-5

目前我正在开发一个项目,需要一些jQuery才能完成任务。我需要完成的工作是检查数据库中是否存在具有特定ID的某一行的每一分钟。

我有一个刀片文件,当用户完成某个步骤时,用户可以访问该文件。在此刀片文件中,需要有一个jQuery脚本,每分钟检查一个名为“Droplets”的数据库表中是否存在具有特定webshop->id的行。如果是,则需要将进度条设置为一定宽度。我怎样才能做到这一点?

到目前为止,我的尝试看起来像这样:

HTML(进度安装)

<div class="col-md-12 mb-3">
 <div class="progress mb-3">
   <div id="progress-install" class="progress-bar andcode-progress progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="10" aria-valuemin="0" aria-valuemax="100" style="width: 10%"></div>
 </div>
</div>

jQuery脚本需要检查表中是否有一行名为“Droplet”的行  webshop->id我可以通过我的刀片文件中的{{ webshop->id }}来调用

jQuery尝试

$(document).ready(function() {

    var checkdb = function () {
        $.ajax({
           type: 'POST',
           url: '/droplet/get/' {{ $webshop->id }},
           data: '_token = <?php echo csrf_token() ?>',
           success:function(data) {
               $("#dropletInfo").html(data.info)
           }
        });

        var ele = document.getElementById('progress-install');
        ele.style.width = 30+'%';

    };
    setInterval(checkdb(),1000 * 60);
})

jQuery脚本调用的路径是

Route::post('/droplet/get/{id}', 'DropletController@getAll')->name('getAllDroplets');

看起来像这样:

public function getAll($id)
{
    $info = Droplet::where("webshop_id", "=", $id)->get();

    return response()->json(array($info));
}

我如何实现上述目标?

1 个答案:

答案 0 :(得分:0)

此处您的网址未正确构建:

url: '/droplet/get/' {{ $webshop->id }},  // here you are missing the contenation, so change it to:

url: '/droplet/get/' + {{ $webshop->id }},