пытаясь загрузить файл с помощью загруженного файла ajax, но в поврежденном php ajax jquery

Я пытаюсь загрузить файл, используя PHP ajax jquery file, загружается, но в поврежденном формате, как я могу сделать это правильно.

в моем контроллере я использую

$product_image = $request->getParam("product_image"); defined('PUBLIC_PATH') || define('PUBLIC_PATH', realpath(dirname(dirname(dirname(dirname(dirname(__FILE__))))))); $filename = time() . rand(10000, 99999) . ".jpg"; file_put_contents(PUBLIC_PATH . "/public_html/product_images/" . $filename, base64_decode($product_image)); $products->__set("product_image", $filename); $data = array( "product_image" => $this->view->baseUrl() . "/product_images/" . $filename, ); 

в файле ajax

 var p_image = $('#product_image').val(); $.ajax({ type: "POST", url: '<?php echo $this->baseUrl(); ?>/api/products/add', data : {product_image:p_image}, dataType: 'json', success: function(response){ if (response.data.product_id == true) { alert("Success"); alert(response.data.product_image); 

Получение содержимого загруженного файла

просмотрщик фотографий Windows не может открыть это изображение, потому что файл выглядит поврежденным, поврежденным или слишком большим.

пожалуйста, руководство.