Domanda

Ho un modulo HTML come segue:

<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 ho inventato il modulo Il file carica correttamente il file, ma quando viene reindirizzato nello script di azione PHP, viene interrotto al primo errore di errore.Lo script quindi scarica la variabile $_FILES che restituisce come un array vuoto.Come puoi vedere nel codice qui sotto, ho anche eco l'errore, ma riecheggia anche una stringa vuota.

Perché non ottengo un file nell'array $_FILES?

Il mio codice 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");
} 
.

La dimensione del file che sto caricando è 9 MB.

My Php.ini Informazioni rilevanti

.

File_uploads: su

upload_max_filesize: 25m

upload_tmp_dir: nessun valore

max_post_size: 8m

È stato utile?

Soluzione

Controlla il file php.ini.Assicurati che la dimensione del post sia più grande degli 8m.Perché è predefinito e stai inviando informazioni che è 9 MB.

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

post_max_size = 8M`
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top