난 내가 제로 크기의 PNG 파일 이미지를 가지고이 코드를 실행할 때이캔버스 태그에서 PHP 서버로 이미지를 저장하는 방법은 무엇입니까?
var testCanvas = document.getElementById('canvas-1');
var canvasData = testCanvas.toDataURL("image/png");
var ajax = new XMLHttpRequest();
ajax.open("POST",'http://www.domain.com/imgsave.php',true);
ajax.setRequestHeader('Content-Type', 'canvas/upload');
ajax.send("canvasData"+canvasData);
내 PHP 코드와 같은 자바 스크립트 코드는이
if (isset($GLOBALS["HTTP_RAW_POST_DATA"]))
{
// Get the data
$imageData=$GLOBALS['HTTP_RAW_POST_DATA'];
$filteredData=substr($imageData, strpos($imageData, ",")+1);
$unencodedData=base64_decode($filteredData);
$fp = fopen('test.png', 'wb');
fwrite($fp, $unencodedData);
fclose($fp);
echo "saved";
}
else{
echo "no raw data";
}
처럼 있나요? 내 코드의 문제점은 무엇입니까?
물론'$ unencodedData'가 비어 있지 않은지 확인했습니다. 맞습니까? – dfsq