Caricatori Flash (Uploadify e SwfUpload): problemi con caratteri speciali nei nomi dei file
-
20-09-2019 - |
Domanda
Devo implementare un caricatore di file basato su Flash, che mi consentirà di caricare più file contemporaneamente e visualizzare i progressi.
ho provato Carica E SwfUpload ed è stato abbastanza facile farli funzionare.
Tuttavia, per entrambi ho riscontrato problemi quando gli utenti tentano di caricare file che hanno nomi di file con caratteri speciali (come il danese æøå o lo svedese ö - e altri ne sono sicuro).
Il file viene caricato correttamente, ma il nome del file è incasinato:
- malmö.jpg diventa malmö.jpg
- æblemoster.jpg diventa æblemoster.jpg
Ovviamente ho provato ad alimentare i file nei miei script di caricamento senza utilizzare Flash, e poi funzionano bene.Quindi, da quello che posso dire, gli oggetti di caricamento flash e/o il javascript catturano il file e in qualche modo rovinano il nome del file.
Qualcuno ha riscontrato qualcosa di simile e magari ha un'idea su come posso farlo funzionare come previsto?
Soluzione
Molto probabilmente l'input SWFObject invia dati codificati UTF8 e lo script sul lato server li gestisce come ISO-8859-1.Per una soluzione rapida (se lavori con PHP sul lato server), prova utf8_decode() sul nome del file in arrivo.
Se fossi in te, penserei semplicemente di filtrare tutte le dieresi e di convertirle nei loro equivalenti non dieresi o "o", "a", "u".Rende la vita più facile.
Altri suggerimenti
Poiché flash viene utilizzato in entrambi i casi, presumo che flash non decodifichi i nomi dei file che legge o codifichi i nomi dei file che pubblica (o entrambi).
sarebbe necessario aprire il file flash .fla per verificare la decodifica/codifica.