Android 애플리케이션에서 Base64로 인코딩 된 .Png 파일을 PHP 서버에 업로드하려고합니다.Base64로 인코딩 된 이미지를 PHP 서버로 업로드
아래 코드는 응답에서 아무 것도 반환하지 않습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
Base64로 인코딩 된 문자열과 파일 이름을 보내고 있습니다. (예 : "sign1234.png") 당신이 $ _FILES에서 이미지 데이터를 포스트에서 데이터를 얻을뿐만 아니라 얻기 위해 노력하고있다하지만 난 정확한 당신의 코멘트를 읽을 경우에만 '[$ _POST에서 데이터를 전송 보인다
<?php
if(isset($_POST['image']) && isset($_POST['name']){
$image = $_POST['image'];
$name = $_POST['name'];
$png = base64_to_jpeg($image,$name);
$target = 'uploads/'.$name;
$result = move_uploaded_file($_FILES['$png']['tmp_name'], $target);
if($result){
$response["success"] = 1;
$response["message"] = "Upload Successful.";
echo json_encode($response);
}else{
$response["success"] = 0;
$response["message"] = "Server error. Could not upload.";
echo json_encode($response);
}
}
function base64_to_jpeg($base64_string, $output_file) {
$ifp = fopen($output_file, "wb");
$data = explode(',', $base64_string);
fwrite($ifp, base64_decode($data[1]));
fclose($ifp);
return $output_file;
}
?>
귀하의 질문은 무엇인가? 뭔가 잘못 됐는지 아닌지 스스로 시험 할 수 있다고 생각합니다. – Shubhank
$ _FILES [ '$ png']는 이미지가 요청의 기본 64 객체로 제공되고 멀티 파트 양식의 파일이 아니기 때문에 null이 될 것입니다. – Shubhank