문제

다음과 같이 HTML 양식이 있습니다.

<form id="addTrack" action="/worship/script/upload.php" method="post" enctype="multipart/form-data">
    <label>File:</label>
    <input type="file" name="uploaded" id="addTrackFile"/>
    <label>Key Title: </label>
    <input type="text" name="title" id="addTrackTitle"/>
    <input type="hidden" name="id" id="addTrackId"/><br>
</form>
<button onclick="uploadAddTrack()">Upload</button>
<button onclick="closeAddTrack()">Close</button>
.

파일 업로드 양식을 서버에 올바르게 제출할 때 PHP 액션 스크립트로 리디렉션되면 첫 번째 오류가 발생합니다.그런 다음 스크립트는 빈 배열로 반환하는 $_FILES 변수를 덤프합니다.아래 코드에서 볼 수 있듯이 오류가 발생했으나 빈 문자열을 eCho에 eCho를 eCho가 있습니다.

$_FILES 배열에 파일을 가져 오지 않습니까?

내 PHP 코드 :

$id=$_POST["id"];
$name=$_POST["title"];

$name = str_replace(" ","",$name);

$allowed_filetypes = array('.mp3','.m4a','.wav','.wma');

$filename = $_FILES['uploaded']['name'];
$ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);

$target = "../audio/"; 
$target = $target . $id. "_".$name.$ext; 
$ok=1; 

if ($_FILES['uploaded']['error'] !== UPLOAD_ERR_OK) {
    //------------This is where it gets stopped-----------------//

        var_dump($_FILES);
    echo $_FILES["uploaded"]["error"];
    return;
}

if(!in_array($ext,$allowed_filetypes))
die("This file type is not allowed");

if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) 
{
include("updateDB.php");

header("Location:/worship/cpanel/?autoload=$id");
} 
.

업로드하는 파일의 크기는 9MB입니다.

내 php.ini 관련 정보

file_uploads : 켜짐

upload_max_filesize : 25m

upload_tmp_dir : 값 없음

max_post_size : 8M

도움이 되었습니까?

해결책

php.ini 파일을 확인하십시오.포스트 크기가 8m 더 클수록 확인하십시오.그것이 기본값이며 9MB 인 정보를 보내고 있습니다.

 `; Maximum size of POST data that PHP will accept.

post_max_size = 8M`
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top