0
私はhtml2canvas divを使用して画像を変換してから画像をPHPに送信します。この処理は700kb未満の画像のみ実行されます。<サイズ画像はPHPで投稿できません。いくつかのアイデアとサンプルコードをお知らせください。html2canvasは、1mbのサイズの画像をPHPサーバにアップロードすることはできません。
私のhtmlコードは次のとおりです。
<div id="popup_div">
<h1>i put some special</h1>
</div>
<form method="POST" enctype="multipart/form-data" action="work_cards.php" id="myForm">
<input type="hidden" name="img_val" id="img_val" value="" />
</form>
私のクエリ:
function capture() {
$('#popup_div').html2canvas({
useCORS: true,
allowTaint: true,
onrendered: function (canvas) {
//Set hidden field's value to image data (base-64 string)
$('#img_val').val(canvas.toDataURL("image/jpeg").replace("image/jpeg", "image/octet-stream"));
//Submit the form manually
document.getElementById("myForm").submit();
}
});
}
work_cards.phpコードは次のとおりです。
にpost_max_size
の値を設定し
$filteredData=substr($_POST['img_val'], strpos($_POST['img_val'], ",")+1);
//Decode the string
$unencodedData=base64_decode($filteredData);
$url = "Kings_design";
//Save the image
file_put_contents('img/order/'.$url.'.jpeg', $unencodedData);
echo $_POST['img_val'];
私はphp.iniファイルのpost_max_size = "800mb"を変更しますが、同じ問題が発生します。 –
また、PHPコードの前に任意のプロキシサーバーで同様の設定を行う必要があります。例えばApacheまたはNginx – activatedgeek