Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将`toDataURL`映像保存到服务器_Javascript_Ajax_Post_Todataurl - Fatal编程技术网

Javascript 将`toDataURL`映像保存到服务器

Javascript 将`toDataURL`映像保存到服务器,javascript,ajax,post,todataurl,Javascript,Ajax,Post,Todataurl,我试过实现,但我真的不明白 如何返回图像值并将其发布到服务器 编辑: 我试过解码: JavaScript“app.js”: PHP,“script.PHP”: 在PHP代码中,您必须获得$\u POST['imgBase64']而不是$\u POST['img'] PHP代码不会返回json数据 试试这个: echo json_encode(['result'=>$success?$file:'无法保存文件')谢谢。我又读了一些书,意识到了这一点。您的解决方案有效吗?还是我应该使用我在编辑的OP

我试过实现,但我真的不明白

如何返回图像值并将其发布到服务器

编辑:

我试过解码:

JavaScript“app.js”:

PHP,“script.PHP”:


在PHP代码中,您必须获得
$\u POST['imgBase64']
而不是
$\u POST['img']

PHP代码不会返回
json
数据

试试这个:
echo json_encode(['result'=>$success?$file:'无法保存文件')

谢谢。我又读了一些书,意识到了这一点。您的解决方案有效吗?还是我应该使用我在编辑的OP中尝试的解决方案?我在编辑的OP中所做的尝试不起作用,但我认为它已接近成功。在
$中。ajax
调用add
数据类型:“json”
,以确定数据类型,并按照我在PHP代码中的回答执行。我尝试了你的修复,但仍然没有得到任何回报。我也应该做些别的事情吗?我不知道怎么把控制台弄起来。我主要使用Coda,一个只允许你编辑文件的应用程序。我尝试在DreamWeaver中打开整个站点,但也不知道如何获得控制台。抱歉。@Yeeeee在chrome中,您可以
右键单击
并单击
检查
项目。然后选择
控制台
选项卡。(CTRL+SHIFT+I[在windows中])
saveButton.addEventListener("click", function (event) {
    if (signaturePad.isEmpty()) {
        alert("Please provide signature first.");
    } else {
        saveSignature(signaturePad.toDataURL());
    }
});

function saveSignature(dataURL) {
$.ajax({
  type: "POST",
  url: "script.php",
  data: { 
     imgBase64: dataURL
  }
}).done(function(o) {
  console.log('saved'); 
});
}
<?php
    // requires php5
    define('UPLOAD_DIR', 'images/');
    $img = $_POST['img'];
    $img = str_replace('data:image/png;base64,', '', $img);
    $img = str_replace(' ', '+', $img);
    $data = base64_decode($img);
    $file = UPLOAD_DIR . uniqid() . '.png';
    $success = file_put_contents($file, $data);
    print $success ? $file : 'Unable to save the file.';
?>