PHP를 사용하여 웹 사이트의 간단한 파일 업로드 기능을 만들려고합니다. 대부분의 코드가 정상적으로 작동한다고 생각합니다. one.com을 사용하고 있는데 자산 폴더가 있고이 폴더 안에 이미지 폴더가 있습니다. 여기에 이미지를 업로드 할 위치가 있습니다. 파일 이미지 경로에 넣을 내용을 확신 할 수 없습니다. 이미지를 업로드하려고하면 '완료'가 페이지에 표시되지만 이미지는 폴더에 표시되지 않습니다.one.com에서 PHP로 이미지 업로드 기능 만들기
if(isset($_POST['submit'])){
// GETTING INFO FROM FILE WE'VE UPLOADED
$file = $_FILES['image'];
$fileName = $_FILES['image']['name'];
$fileTmpName = $_FILES['image']['tmp_name'];
$fileSize = $_FILES['image']['size'];
$fileError = $_FILES['image']['error'];
$fileType = $_FILES['image']['type'];
//Splitting the filename on the extension
$fileExt= explode ('.', $fileName);
//Getting the extension from the file and tolower so we can find out if it is an allowed file type
$fileActualExt = strtolower(end($fileExt));
//File types that we are going to allow
$allowed = array('jpg','jpeg','png');
if(in_array($fileActualExt, $allowed)){
if($fileError === 0){
$fileNameNew = uniqid('', true).".".$fileActualExt;
$fileDestination = '/assets/images/'.$fileName; //PROBLEM??
move_uploaded_file($FileTmpName, $fileDestination);
echo"Done?";
}else{
echo "There was an error?";
}}
else {
echo "You cannot upload files of this type";
}}
시도해보십시오. $ fileDestination = './assets/images/'.$fileName; –
이것이 구문 오류인지 아니면 아키텍처에 대한 개념적 질문인지에 대해 자세히 설명해 드리겠습니다. 버그를 수정하거나 다른 것을 해결하기 위해 사용을 요구하는지 여부는 분명하지 않습니다. – Matt
파일 경로는 정적 서버의 공개/개인 엔드 포인트를 나타내야합니다. 이러한 이미지가 모델 (사용자, 회사, 제품, 리뷰 등)의 일부 컨텍스트에만 해당되는 경우 모델의 정보에서'filepath'를 다시 생성 할 수 있도록 명명 패턴의 일부 양식을 작성합니다. 예를 들어, Review of a Cafe의 이미지를 저장했다면 서버에 저장된 경로는'/ images/review/: reviewId/: uuid.jpeg' 일 수 있습니다. 여기서': reviewId'는 Review Model에서 가져온 것이고 : uuid는 업로드 할 때 생성되며 모든 것이 고유 한 리뷰로 사진을 선택할 수 있습니다. – Matt