salve a tutti, di nuovo a rompere le scatole xD
sto lavorando ad un file php che prende oggetto (mp3 o mp4) da filetransfer con javascript (cordova)
ho utilizzato qualche plugin e sono riuscito a far selezionare il file all'utente e controllato la variabile contenente URI, stampandola con console e fino a qui non credo di aver problemi..
codice:
$("#provaFile").on("click", function (e) { //inizio al click e.preventDefault();
var URI;
//funzione navigator per prendere i file dalla memoria del telefono
navigator.camera.getPicture(successFn, errorFn, {
quality: 50,
destinationType:navigator.camera.DestinationType.DATA_URI,
sourceType:2,
mediaType: 2
}); //fine navigator.camera
//funzione success della selezione media
function successFn(imageURI) {
console.log("file preso");
var src = imageURI;
sorgente = imageURI;
console.log(src);
FT = new FileTransfer(); // oggetto file transfer
opzioni = new FileUploadOptions();
opzioni.fileKey = "media";
opzioni.fileName = sorgente.substr(sorgente.lastIndexOf('/') + 1);
opzioni.chunkedMode = true;
opzioni.mimeType = "image/jpeg"; // video / mp4
console.log(opzioni.fileKey);
console.log(opzioni.fileName);
FT.upload(imageURI, encodeURI("http://localhost:8080/getData.php"), fileCaricato, erroreFile, opzioni);
// mostro percentuale caricamento
FT.onprogress = function (pEvent) {
if (pEvent.lengthComputable) {
var perc = Math.floor(pEvent.loaded / pEvent.total * 100);
$("#uploadStatus").html(perc + " % caricato");
} else {
$("#uploadStatus").html("in caricamento");
}
} //fine funzione onprogress
} //fine funzione success
//funzione errore nella selezione file
function errorFn() {
console.log("errore selezione file");
}
//funzione in caso di file caricato correttamente
function fileCaricato(fresult) {
console.log("file caricato correttamente");
}
//funzione in caso di errore
function erroreFile(ftransfer) {
console.log("errore nell'inviare il file");
}
}); //fine file chooser
come vi dicevo, sono arrivato a stampare il file URI correttamente.. non riesco a gestirlo con php invece :
Codice PHP:
<?php $target_dir = "uploads/";$info = $_FILES['opzioni.fileName'];move_uploaded_file($info, $target_dir);
?>
ho provato con una cosa semplice e con altri metodi cercati in rete ma senza alcun successo..
qualche consiglio ?