Come avete risolto il problema di inviare file in web2.0-way?
No iframe e simili però.
Come avete risolto il problema di inviare file in web2.0-way?
No iframe e simili però.
:: Instant WebKiosk, a browser-only Linux operating system ::
Credo che non volendo usare iframe ti rimanga solo flash, sicuramente no con il solo ajax se intendi questo quando ti riferisci a web2.0-way![]()
Cavicchi Andrea
Problemi con javascript, jquery, ajax clicca qui
In realtà, sto cercando di farlo funzionare senza nulla fuorchè il browser.
Usando FF3.6 riesco a far l'upload asincrono di file, però di solo testo...
Qui spiego come:
https://developer.mozilla.org/en/Usi...ions#section_9
Però vorrei aiuto sul come utilizzare file binari... ogni mio tentativo di codificarli in base64 non ha dato i risultati sperati...
:: Instant WebKiosk, a browser-only Linux operating system ::
Insisto ajax sincro/asincrono non trasmette dati binari è un limite del metodo![]()
Cavicchi Andrea
Problemi con javascript, jquery, ajax clicca qui
Perchè, tu hai mai visto dati binari (non codificati) transitare per l'HTTP??...
In PHP, ad esempio, un file binario viene inviato al browser in un modo quale il seguente:
codice:public static function forceDownload(/* String */ $file) /* void */ { $dim = filesize($file); $fileName = substr($file,strrpos($file,"/")+1,strlen($file)); $ext = strtolower(substr($fileName,strrpos($fileName,".")+1,strlen($file))); if ($ext=="pdf") $apptype = "application/pdf"; else $apptype = "application/force-download"; if ($dim>0 && $fileName!="") { header("Content-Type: ".$apptype."; name=\"".$fileName."\""); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".$dim); header("Content-Disposition: attachment; filename=\"".$fileName."\""); // il browser deve salvare il file (in genere chiede anche se aprirlo al volo) header("Expires: 0"); header("Cache-Control: no-cache, must-revalidate"); header("Cache-Control: private"); header("Pragma: public"); readfile($file); // auto-encodes: binary to string output. } else return false; } readfile è il quid. Quid che mi servirebbe in JS!
:: Instant WebKiosk, a browser-only Linux operating system ::
:: Instant WebKiosk, a browser-only Linux operating system ::
Questo e' il contrario di cio' che chiedi... il browser non puo' leggere un file sul pc dell'utente (senza esplicito consenso dell'utente) e se anche fosse possibile, in ajax non si possono inviare dati binari... dovresti convertirli prima, ma in javascript non esiste la possibilita' di leggerli e trasformarli.Originariamente inviato da emmebì
In PHP, ad esempio, un file binario viene inviato al browser in un modo quale il seguente:
ciao
Il guaio per i poveri computers e' che sono gli uomini a comandarli.
Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
Consultate la discussione in rilievo: script / discussioni utili
Usate la funzione di Ricerca del Forum
(Ora) non vero: https://developer.mozilla.org/en/Usi...b_applications oppure vero se il tuo "esplicito consenso dell'utente" include l'utilizzo del tasto "Sfoglia" dell'input box oppure del drag&drop.Originariamente inviato da br1
il browser non puo' leggere un file sul pc dell'utente (senza esplicito consenso dell'utente)
Nè in ajax nè mai, se usiamo il protocollo HTTP...e se anche fosse possibile, in ajax non si possono inviare dati binari...
E' esattamente ciò che mi serve.dovresti convertirli prima,
Il codice riportato si occupa di codificare il file per l'invio in HTTP; lasciando stare i singoli comandi, per farmi capire meglio, tempo fa ho fatto la medesima cosa in vb: guardate la signature del metodo: mi serve questa medesima cosa.
codice:' Reads binary data and encodes them as a string (for HTTP payload for example) Public Function binaryRead(fileName As String) As String Dim fnum As Integer Dim strBuff As String If FileExists(fileName) Then fnum = FreeFile Open fileName For Binary As #fnum strBuff = Space(LOF(1)) Get #fnum, , strBuff Close #fnum End If binaryRead = strBuff End Function
:: Instant WebKiosk, a browser-only Linux operating system ::
... e quale protocollo invece vorresti usare? :master:
ci rinuncio, e' fuori dalla mia portata ... auguri
![]()
Il guaio per i poveri computers e' che sono gli uomini a comandarli.
Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
Consultate la discussione in rilievo: script / discussioni utili
Usate la funzione di Ricerca del Forum
Mah, sì che non mi pare difficile...
L'HTTP è un protocollo testuale, per il quale i dati binari vengono prima codificati.
Quindi non voglio certo inviare dati BINARI in HTTP, ma magari la loro CODIFICA.
:: Instant WebKiosk, a browser-only Linux operating system ::