使用cordova将base64字符串保存为php中的图像

时间:2016-10-29 08:08:01

标签: php cordova image-uploading

我正在尝试将捕获的图像保存在我的服务器中作为jpg / png,我将字符串解码为base64并将其上传但是当我打开图像时它表示文件无法打开'。我不明白为什么会这样,或者我错过了任何代码。

  
    

jquery的

  
navigator.camera.getPicture(onSuccess, onFail, { quality: 100,destinationType: Camera.DestinationType.DATA_URL });

function onSuccess(imageURI) {
 var image = document.getElementById('dr_preview');
 image.src = imageURI;
 snapSrc = imageURI;
}
var img = document.getElementById('dr_preview');
var src = $('#dr_preview').attr('src');
console.log(src);
var dataparam = 'type=3&dr='+dr_value+'&image='+src;
$.ajax({
        type: 'POST',
        dataType: 'json',
        async: true,
        url: 'http://localhost/v_2/dr-getDrDetails.php',
        data: dataparam,
        cache: true,
        success: function(data)
        {
        }
 });
  
    

PHP

  
$data = $_POST['image'];
$data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data));
$filePath = $_SERVER['DOCUMENT_ROOT']. '/v_2/scanedDR/'.$dr.'.PNG';
$file = fopen($filePath, 'w');
fwrite($file, $data);
fclose($file);

1 个答案:

答案 0 :(得分:0)

您可以使用此功能将base64转换为图像。

;