PHP에서 작동하지 않는 Move_uploaded_file() 문제를 해결하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-10-18 14:18:03
원래의
769명이 탐색했습니다.

How to Troubleshoot a Non-Functioning Move_uploaded_file() in PHP?

Move_uploaded_file() 함수 문제 해결

웹 애플리케이션을 통해 파일을 업로드할 때 move_uploaded_file() 함수가 완벽하게 작동하는지 확인하는 것이 중요합니다. 그러나 사용자가 예상대로 작동하지 않는 것처럼 보이는 경우가 발생할 수 있습니다.

이 기사에서는 move_uploaded_file()이 작동하지 않는 문제를 조사하고 이를 해결하기 위한 솔루션을 제공할 것입니다.

문제 개요

사용자가 파일 업로드를 처리하기 위해 move_uploaded_file() 함수를 활용하는 PHP 스크립트를 구현했습니다. 하지만 튜토리얼에서 제공하는 코드를 복제했음에도 불구하고 기능이 제대로 작동하지 않습니다.

코드 분석

양식 및 업로드 스크립트의 HTML 코드가 올바른 것으로 보입니다. 여기에는 파일 입력에 필요한 속성이 포함되어 있으며 데이터를 upload_file.php 스크립트에 제출합니다.

upload_file.php에서 스크립트는 이름, 임시 위치, 크기 및 업로드된 파일에 대한 정보를 올바르게 추출합니다. 오류 코드. 그러나 move_uploaded_file() 함수를 잘못 사용하여 오류가 발생합니다.

해결책

문제를 해결하려면 다음 두 단계가 중요합니다.

  1. PHP 오류 보고 활성화:
    이를 통해 PHP는 문제의 근본 원인을 식별하는 데 도움이 될 수 있는 자세한 오류 메시지를 표시할 수 있습니다.
  2. 오류 코드 확인:
    $_FILES'image' 변수에는 실패 이유를 나타내는 오류 코드가 포함되어 있습니다. 일반적인 오류 코드는 다음과 같습니다.

    • UPLOAD_ERR_OK: 오류 없음
    • UPLOAD_ERR_INI_SIZE: 파일 크기가 서버에서 허용하는 최대값을 초과합니다.
    • UPLOAD_ERR_FORM_SIZE: 파일 크기가 서버에서 허용하는 최대값을 초과합니다. 양식
    • UPLOAD_ERR_NO_FILE: 파일이 업로드되지 않았습니다
    • UPLOAD_ERR_PARTIAL: 파일이 일부만 업로드되었습니다

최종 수정 코드

이러한 문제를 해결한 후 수정된 코드는 다음과 같습니다.

<code class="php">
<?php
$move = __DIR__.'/../../uploads/';
echo $_FILES["file"]['name']."<br>";
echo $_FILES["file"]['tmp_name']."<br>";
echo $_FILES["file"]['size']."<br>";
echo $_FILES['file']['error']."<br>";
move_uploaded_file($_FILES['file']['tmp_name'], $move);
?>
</code>
로그인 후 복사

이 업데이트된 코드에서는 원본 파일 이름(name) 대신 임시 파일 이름(tmp_name)이 사용됩니다. 파일이 원하는 위치로 올바르게 이동되었습니다.

위 내용은 PHP에서 작동하지 않는 Move_uploaded_file() 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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