plupload를 사용하여 서버에 여러 파일을 업로드하고 있습니다. 이것을 사용하면 'url :'upload.php '매개 변수가 있습니다. upload.php는 파일을 수신 할 때 잡아서 청크가 발생하면 다시 결합 할 수 있습니다. 전체 파일을 받으면 원본 페이지에 응답을 보내고 녹색 확인란을 표시합니다.php rename()이 내 파일을 손상시키는 이유는 무엇입니까?
내가 업로드 한 사진을 조작하는 데 필요한 모든 코드를이 페이지에 추가했습니다. 내 풀 사이즈 이미지 인 lg, med 및 small의 사본 3 개를 만드는 것이 나의 계획입니다. 이 부분이 작동하도록 설정했으나 원래 이름 지정 스키마와 일치하도록 원래 파일의 이름을 바꾸기로 결정했습니다.
이제 이름이 변경된 파일이 손상되어 3 개의 작은 이미지도 손상됩니다.
//get the original file info
$filepath = $_SERVER['DOCUMENT_ROOT'].'/uploads/';
$filepathinfo = pathinfo($filepath.$fileName);//fileName is used previously in the file
//rename original file to a unique name
$finding_id = 'xyz';
$file_name_new = uniqid($client_id . '-' . $finding_id . '-', true); //doesn't include extension
//rename($filepath.$fileName, $filepath.$file_name_new.'.'.$ext);
//copy($filepath.$fileName, $filepath.$file_name_new.'.'.$ext);
은 그대로, 내 하나 개의 파일을 얻을, 또는 내가 업로드하는 방법을 지금까지 많은 바이트 크기는 원래 정확히 일치하고, 이름 (특정 문자를 제거 제외) 동일하게 유지됩니다.
이름 바꾸기 기능 만 주석 처리를 제거하면 실제로 두 개의 파일이 생깁니다. 바이트 크기가 원본 사진의 합계입니다. 큰 파일은 하단에 회색 섹션으로 표시됩니다. 더 작은 파일은 전혀 표시되지 않습니다.
복사 기능 만 주석 처리를 취소하면 원본 파일과 원본 파일 및 다른 파일의 이름이 바뀐 파일의 크기와 손상이 동일한 이름으로 복사됩니다.
아이디어가 있으십니까? 꽤 직설적이어야하는 것처럼 보입니다.
파일을 업로드 한 프로세스가 완료 되었습니까? 파일 설명자가 닫혔습니까? 모든 버퍼가 플러시 되었습니까? – Konerak
이 해결책에 따르면 : http://stackoverflow.com/questions/3159431/php-change-file-extension, 해결 방법은 사본을 사용하는 것입니다. 아직도, 그렇게해서는 안됩니다. – Horus
@Horus - 복사를 시도했지만 이상한 결과를 얻었습니다. 이 Pluploader에는 이전에 사용 해본 적이없는 무언가가 있어야합니다. – Bob