Pergunta

Eu tenho um formulário HTML como o seguinte:

<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>

Quando eu enviar o formulário envia o ficheiro para o servidor corretamente, mas quando ele fica redirecionado para o PHP, action script, ele fica parado no primeiro erro pegar.O script, em seguida, copia o $_FILES variável que retorna uma matriz vazia.Como você pode ver no código abaixo, eu também echo erro, mas ele também exibe uma seqüência de caracteres vazia.

Por que não estou conseguindo um arquivo no $_FILES matriz?

Meu Código 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");
} 

O tamanho do arquivo que estou enviando é 9mb.

Meu php.ini informações relevantes

file_uploads:No

upload_max_filesize:25M

upload_tmp_dir:nenhum valor

max_post_size:8M

Foi útil?

Solução

verifique você PHP.arquivo ini.certifique-se de que o tamanho é maior que a 8M.porque esse é o padrão e você está enviando informações de que é 9MB.

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

post_max_size = 8M`
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top