私はこの質問がすでにたくさんあったことを知っていますが、解決策はどれも私のために働いているようには見えません. だから、私は Kinetics.js を使用しており、人々が自分のイメージを描画できるキャンバス アプリケーションを構築しました (非常にシンプルです)。アイデアは、画像の準備ができたらユーザーは次のページに移動するということですが、彼の図面をサーバーにファイルとして保存する必要があります。
これが私のコードです: JavaScript:
$('#someButton').click(function(){
hiddenCanvas.toDataURL({
callback:function(dataUrl){
$.ajax({
type: "POST",
url: "scripts/imgsave.php",
data: {image: dataURL}
});
}
});
window.location = 'scripts/imgsave.php';
)};
そしてPHP:
if ( isset($_POST["image"]) && !empty($_POST["image"]) ) {
$dataURL = $_POST["image"];
$parts = explode(',', $dataURL);
$data = $parts[1];
$data = base64_decode($data);
$fp = fopen('../images/test.png', 'w');
fwrite($fp, $data);
fclose($fp);
}
問題は、私が何をしても、PHP が空のファイルをサーバーに保存することです。したがって、dataURL が正しく送信されていないと思います。ここで何が問題になる可能性がありますか?