Ciao pegaso22,
se devi inviare delle immagini (magari controllandone la dimensione massima),
puoi usare lo script sottostante che trasforma l'immagine in una stringa (base64).
A questo punto con una semplice chiamata ajax puoi trasferire al server "l'immagine" come stringa.
Avevo utilizzato questo sistema per memorizzare offline dei form e trasferirli successivamente via ajax.
Saluti
codice:
<!DOCTYPE>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Upload Image</title>
<style>
</style>
<script>
oFR = new FileReader(),
rFilter = /^image\/(?:gif|jpeg|jpg|png)$/i;
function loadImageFile() {
var J=document.getElementById("id_uploadImage");
if(J.files.length===0) return;
var oFile = J.files[0],
FLN=oFile.name, // nome file
FLZ=oFile.size; // dimensione file
if(!rFilter.test(oFile.type)) { alert("Tipo file errato! (jpg, png, gif)!"); return; } // tipo immagine
if(FLZ>2100000) { alert("Attenzione! Massima dimensione file 2MB."); return; }
oFR.readAsDataURL(oFile);
oFR.onload=function(e) {
var s=e.target.result;
document.getElementById("id_preview").src=s;
document.getElementById("id_picture").value=s;
}
}
</script>
</head>
<body>
<input id="id_uploadImage" type="file" accept="image/*;capture=camera" onchange="loadImageFile();" value="" />
<br><br>
Stringa da inviare tramite chiamata Ajax:
<br>
<textarea id='id_picture' style='width:320px;height:200px;'></textarea>
<br><br>
Anteprima:<br>
<img id='id_preview' src='' width="200px">
</body>
</html>