Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.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 无法将画布转换为图像-服务器端_Javascript_Php_Html_Canvas_Nginx - Fatal编程技术网

Javascript 无法将画布转换为图像-服务器端

Javascript 无法将画布转换为图像-服务器端,javascript,php,html,canvas,nginx,Javascript,Php,Html,Canvas,Nginx,我无法在服务器上将html5画布转换为图像 我的代码:JavaScript var testCanvas = document.getElementById("viewport"); var canvasData = testCanvas.toDataURL("image/png"); $.ajax({ type: 'POST', url: 'process.php', data: { text1: c

我无法在服务器上将html5画布转换为图像

我的代码:JavaScript

var testCanvas = document.getElementById("viewport");

    var canvasData = testCanvas.toDataURL("image/png");


    $.ajax({
        type: 'POST',
        url: 'process.php',
        data: {
            text1: canvasData
        },
        success: function(response) {

alert(response + '.png');
}
<?php
function generateRandomString($length = 6) {
    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $charactersLength = strlen($characters);
    $randomString = '';
    for ($i = 0; $i < $length; $i++) {
        $randomString .= $characters[rand(0, $charactersLength - 1)];
    }
    return $randomString;
}


$rawData  = $_POST['text1'];
$filteredData = explode(',', $rawData);

$unencoded = base64_decode($filteredData[1]);
$dr = generateRandomString() ;

$fp = fopen('upload/' . $dr .'.png', 'w');
fwrite($fp, $unencoded);
fclose($fp); 

echo $dr;


?> 
php代码:process.php

var testCanvas = document.getElementById("viewport");

    var canvasData = testCanvas.toDataURL("image/png");


    $.ajax({
        type: 'POST',
        url: 'process.php',
        data: {
            text1: canvasData
        },
        success: function(response) {

alert(response + '.png');
}
<?php
function generateRandomString($length = 6) {
    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $charactersLength = strlen($characters);
    $randomString = '';
    for ($i = 0; $i < $length; $i++) {
        $randomString .= $characters[rand(0, $charactersLength - 1)];
    }
    return $randomString;
}


$rawData  = $_POST['text1'];
$filteredData = explode(',', $rawData);

$unencoded = base64_decode($filteredData[1]);
$dr = generateRandomString() ;

$fp = fopen('upload/' . $dr .'.png', 'w');
fwrite($fp, $unencoded);
fclose($fp); 

echo $dr;


?> 

我不明白我的代码出了什么问题,我在谷歌上搜索了很多,但没有找到任何有用的解决方案
我在centos上使用nginx时遇到了同样的问题,然后我发现我需要为保存图像所需的目录授予写权限

您可以通过以下命令执行此操作:

导航到文件夹并

chmod-R 777
-R
使其递归