I am trying to send a base64 based data that is an png to PHP based script where i am unable to upload image more than 100kb below 100kb images are sending.
script is working fine on WAMP Server the problem is only on live server
here is that Javascript code which I am using to send data
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var img = document.getElementById("image");
ctx.drawImage(img, 10, 10);
function uploadimg(){
var canvas = document.getElementById('myCanvas');
var image = canvas.toDataURL();
var request = new XMLHttpRequest();
var fd = new FormData();
fd.append('picture', image);
request.open('POST', 'upload.php');
request.onload = function () {
if (request.status == 200) {
console.log('all done: ');
} else {
console.log('Nope');
}
};
request.send(fd);
}
here is upload.php code
define('IMAGE_DIR', 'image/');
$img = $_POST['picture'];
$img = str_replace('data:image/png;base64,', '', $img);
$img = str_replace(' ', '+', $img);
$data = base64_decode($img);
$file = IMAGE_DIR . uniqid() . '.png';
$success = file_put_contents($file, $data);