> 백엔드 개발 > PHP 튜토리얼 > $_FILES를 사용하여 PHP에서 파일 업로드 문제를 해결하는 방법은 무엇입니까?

$_FILES를 사용하여 PHP에서 파일 업로드 문제를 해결하는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2024-11-29 22:36:10
원래의
637명이 탐색했습니다.

How to Solve File Upload Issues in PHP Using $_FILES?

PHP를 사용한 파일 업로드

이 가이드는 PHP에서 파일을 업로드하는 방법을 보여주고 이전 접근 방식에서 발생하는 일반적인 오류를 해결합니다.

문제:

지정된 폴더에 파일을 업로드하면 더 이상 사용되지 않는 HTTP_POST_FILES 변수 사용으로 인해 오류가 발생합니다.

해결책:

다음 PHP 코드는 현대화되고 업데이트된 파일 솔루션 업로드:

$target_dir = "upload/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$imageFileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION));
$allowedTypes = ['jpg', 'png'];

if (isset($_POST["submit"])) {
    // Check file type
    if (!in_array($imageFileType, $allowedTypes)) {
        $msg = "Type is not allowed";
    }
    // Check if file already exists
    elseif (file_exists($target_file)) {
        $msg = "Sorry, file already exists.";
    }
    // Check file size
    elseif ($_FILES["fileToUpload"]["size"] > 5000000) {
        $msg = "Sorry, your file is too large.";
    }
    elseif (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        $msg = "The file " . basename($_FILES["fileToUpload"]["name"]) . " has been uploaded.";
    }
}
로그인 후 복사

설명:

  • $_FILES["fileToUpload"]는 파일 업로드 정보를 검색합니다.
  • $target_dir이 지정합니다. 대상 폴더.
  • 조건문은 파일 유형, 존재 여부 및 size.
  • move_uploaded_file()은 파일을 지정된 위치로 이동합니다.
  • $msg 변수는 업로드 상태에 따라 메시지를 저장합니다.

HTML 업로드 코드:

<form action="upload.php" method="post">
로그인 후 복사

이 업데이트된 코드를 사용하면, 원하는 폴더에 파일을 성공적으로 업로드하고 유효성 검사 오류를 적절하게 처리할 수 있습니다.

위 내용은 $_FILES를 사용하여 PHP에서 파일 업로드 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿