Php 使用ajax将录制的gif(base64字符串)保存为特定目录中的gif

Php 使用ajax将录制的gif(base64字符串)保存为特定目录中的gif,php,jquery,Php,Jquery,我的问题是,我用gifshot.js插件录制了一个gif,现在想保存它,但什么都不行。我使用ajax函数将src字符串发送到php,然后php解码base64字符串(正常工作)。在这之后,gif将被保存在你将在下面看到的目录中,但它只是不起作用。非常沮丧。。。你有什么办法吗 HTML: php: 您有任何错误消息给我们吗?您还使用具有绝对路径的文件内容。您的服务器上很可能没有/images/文件夹。您可能需要尝试一些不同的文件内容(\uuuuu DIR\uuuu.'/../images/save

我的问题是,我用gifshot.js插件录制了一个gif,现在想保存它,但什么都不行。我使用ajax函数将src字符串发送到php,然后php解码base64字符串(正常工作)。在这之后,gif将被保存在你将在下面看到的目录中,但它只是不起作用。非常沮丧。。。你有什么办法吗

HTML:

php:


您有任何错误消息给我们吗?您还使用具有绝对路径的文件内容。您的服务器上很可能没有/images/文件夹。您可能需要尝试一些不同的
文件内容(\uuuuu DIR\uuuu.'/../images/saved.gif',$decodedpic)为什么要在要写入磁盘文件的表单提交上运行mysqli\u real\u escape\u string和htmlspecialchars?AJAX调用也不提供您正在读取的_POST变量(用户名)。@colburton感谢您的帮助。。。一段代码中有太多愚蠢的错误。。。真的很感谢@伊恩:谢谢你的帮助。。。一段代码中有太多愚蠢的错误。。。真的很感谢!!
<section id="reingif" class="gifshot-image-preview-section" style="height: 210.7px; width: 210.7px;">
    <img src="data:image/gif;base64,ROIGODIh9AH0AQAAA...">
</section>
$("#create-gif").click(function(){      
    gifshot.createGIF({
        gifWidth: 500,
        gifHeight: 500,
        interval: 0.2,
        numFrames: 25,
        sampleInterval:7,
        numWorkers: 3
    }, function (obj) {
        if (!obj.error) {

            var image = obj.image, animatedImage = document.createElement('img');
            animatedImage.src = image;
            $("#reingif").html(animatedImage);

            var viewportHeight  = $(window).height();
            var gifdims         = 0.7 * viewportHeight + "px";
            $("#reingif img").addClass("addcrimg").height(gifdims).width(gifdims);

            var datastring = $("#reingif img").attr('src');
            $.ajax({ 
                url: 'savegif.php',
                type: 'post',
                dataType: 'text',
                data: { 'base64data' : datastring }
            });
        }
    });
});
@$base64data = mysqli_real_escape_string($db, trim(htmlspecialchars($_POST["username"])));

$decodedpic = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $base64data));

file_put_contents('/images/saved.gif', $decodedpic);