0

再会!我只想将捕获的图像放在指定的文件夹上,而不是通过 ajax 调用放在数据库本身上。这就是我所做的:

JS 文件:

$('#btn-save-snapshot').on('点击', function() {

        网络摄像头.snap(功能(data_uri)
        {

            $.ajax({
                网址:'/捕获',
                类型:'POST',
                数据:
                {
                    捕获图像:data_uri
                },
                成功:函数(数据)
                {
                    alert('已保存!');
                },
                错误:函数(xhr)
                {
                    alert($.parseJSON(xhr.responseText)['error']['message']);
                }
            });
        });
    });

我不知道如何将它保存到指定的文件夹。我已经在控制器上使用了 Input::file('captimage')->move($destination) 但它不起作用。

4

1 回答 1

1

你只得到一个字符串,而不是图像本身(通常是base64-格式)。所以你要做的就是将信息发送到一个单独的 php 文件中,然后file_put_contents用来保存图像。在保存之前,您必须删除前缀。

所以你可以做这样的事情:(如果你得到一个base64-string):

file_put_contents('/capture/img.jpg', base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $_POST['captImage'])));

如果不是base64,请发布结果,以及你的captImage-variable的内容。

于 2015-10-13T16:46:25.877 回答