Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19

Discussione: Conversione encoding

  1. #1

    Conversione encoding

    Ciao a tutti, dovrei convertire l'encoding di certi dati che ho su un database mysql in Unicode... Su php.net dicono di utilizzare la funzione mb_convert_encoding() che però in realtà non è definita se provo ad utilizzarla.. Qualcuno saprebbe risolvere il problema o perlomeno a trovare una soluzioen alternativa?? Grazie...

  2. #2

  3. #3
    Per favore qualcuno mi aiuti perchè non ne vado fuori...

  4. #4
    le funzioni mb_* le puoi usare dopo avere attivato l'apposita estensione per le stringhe MultiByte. Se puoi farlo, fallo.

    Unicode non è un charset, probabilmente ti riferisci a utf-8.
    Se i dati ti servono in ISO-8859-1 allora non serve l'estensione MB, basta la funzione utf8_decode(). In caso contrario, ti serve per forza l'estensione succitata.

    In generale però, utf-8 è la codifica "jolly", sta bene su tutto .
    Quindi valuta bene se ti è necessaria la conversione o se ti conviene tenere e utilizzare i dati direttamente in utf-8.

  5. #5
    Io in realtà voglio proprio trasformare le mie stringhe in utf-8 e non il contrario! I dati erano in ISO-8859-1 e adesso li voglio trasformare in utf-8. Come faccio ad attivare l'apposita estensione per le stringhe MultiByte?

  6. #6
    Originariamente inviato da Nick083
    Io in realtà voglio proprio trasformare le mie stringhe in utf-8 e non il contrario! I dati erano in ISO-8859-1 e adesso li voglio trasformare in utf-8.
    utf8_encode()

    Non serve estensione MultiByte.
    Nel primo post ti eri spiegato male.

  7. #7
    Grazie mille!! Adesso funziona tutto! Thanks

  8. #8
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    Originariamente inviato da skidx
    utf8_encode()

    Non serve estensione MultiByte.

    Multibyte o meno, questo utf8_encode funziona con fwrite?

    Leggendo dati da db (utf) e tentando di salvarli su file, viene un disastro.
    N.B.: un echo a video di quanto letto da db è corretto.

    Chi mi sa aiutare?

    [.:: JaguarXF ::.]
    __________________

  9. #9
    Originariamente inviato da mark2x
    Multibyte o meno, questo utf8_encode funziona con fwrite?

    Leggendo dati da db (utf) e tentando di salvarli su file, viene un disastro.
    N.B.: un echo a video di quanto letto da db è corretto.

    Chi mi sa aiutare?
    hai provato a scriverli in modalità binaria?
    (dando l'opzione 'b' all'fopen)

    Comunque cosa intendi per "viene un macello?"
    Sei sicuro che i dati vengano scritti sbagliati o forse quando riapri il file scritto da php lo leggi con il charset sbagliato?

  10. #10
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    Originariamente inviato da skidx
    hai provato a scriverli in modalità binaria?
    (dando l'opzione 'b' all'fopen)

    Comunque cosa intendi per "viene un macello?"
    Sei sicuro che i dati vengano scritti sbagliati o forse quando riapri il file scritto da php lo leggi con il charset sbagliato?
    Ti ringrazio per la sollecita risposta.

    1. Sì ho provato anche in modo wb;
    2. la funzione è qs:

    Codice PHP:
    function includi_glossario($lingua1,$lingua2,$cartella_di_lavoro,$db_conn)
        {
        if (!
    $export export_mm_glossario($lingua1,$lingua2,$db_conn)) echo "Esportazione glossario.txt non riuscita 
    "
    ;

        
    // Salvo il file.
        
    if (!$fp = @fopen($cartella_di_lavoro."/glossario.txt","w")) echo "Esportazione glossario.txt non riuscita 
    "
    ;
            @
    fwrite($fp,utf8_encode($export));
        @
    fclose($fp);

        return 
    true;
        } 
    Allora: se faccio un echo di $export il risultato è come atteso (codifica pagina browser: UTF-8).
    Se invece lo salvo, ottengo che:
    a. viene visto dal sistema (Linux e Win) come UTF-8
    b. ma i caratteri sono cannati completamente.

    [.:: JaguarXF ::.]
    __________________

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.