O plug-in AjaxFileUpload não recupera dados $ _POST ou $ _FILES
Ok, espero que essa seja minha última pergunta em uma série de perguntas frequentes sobre o upload dinâmico de arquivos.
estou a usarAjaxFileUpload Plugin e tente trabalhar com os dados do FORM no meu uploader.php. O problema é que ambos$_POST
e$_FILES
é nulo.
Este é o meu código HTML:
<form id="uploadForm" enctype="multipart/form-data" action="" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
<input type="hidden" name="current_path" value="<?php echo $fb->relative_url; ?>" />
<input id="uploadFile" name="uploadFile" type="file" />
<input type="button" class="button uploadImage" value="<?php _e('Upload File') ?>" /> <br />
</form>
E este é o meu script JS:
//File upload
jQuery('.uploadImage').live('click',function() {
ajaxFileUpload();
});
(...)
function ajaxFileUpload() {
jQuery.ajaxFileUpload ( {
url:'../wp-content/plugins/wp-filebrowser/uploader.php',
secureuri:false,
fileElementId:'uploadFile',
dataType: 'json',
success: function (data, status) {
alert('Error: ' + data.error + ' - Respons: ' + data.respons)
},
error: function (data, status, e) {
alert('Error: ' + e);
}
}
)
return false;
}
Para testar se os dados são enviados, tenho o seguinte código PHP:
$data['error'] = $_POST['current_path']; // Gives me NULL
$data['respons'] = $_FILES['uploadFile']['name']; // Gives me NULL
// Return result in json
echo json_encode($data);
ATUALIZAR
Depois de muito boa ajuda de Pekka (com seu bom par de olhos), eu consegui! O código é atualizado com o código correto.