Visualizzazione dei risultati da 1 a 3 su 3

Discussione: codifica caratteri

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2001
    Messaggi
    62

    codifica caratteri

    Allora, ho un problema con un sito cui sto lavorando.

    Nella versione online non ho assolutamente alcun problema di codifica caratteri, nei meta dichiaro il formato iso-eccetera eccetera, mentre in locale si ostina a mantenere la codifica di default a utf-8, con il risultato di avere i simpaticissimi rombini guarniti di punto di domanda al posto dei suddetti caratteri.

    Questa cosa succede sia su firefox che su opera, passando per iexplorer 6 e 7.

    Il sistema operativo é linux. Non riesco a capire, la codifica nei suddetti browser non é imposta, se vado in internet la versione online la visualizzano bene.

    Il database é mysql, con codifica utf-8 per quanto riguarda il database in generale, poi ogni cella della tabella ha come codifica latin-swedish eccetera eccetera (l'iso-eccetera di cui prima).

    Mi manca qualche modulo? Cosa posso fare per dargli in pasto la codifica corretta anche in locale?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: codifica caratteri

    Originariamente inviato da Morfryn
    Allora, ho un problema con un sito cui sto lavorando.

    Nella versione online non ho assolutamente alcun problema di codifica caratteri, nei meta dichiaro il formato iso-eccetera eccetera, mentre in locale si ostina a mantenere la codifica di default a utf-8, con il risultato di avere i simpaticissimi rombini guarniti di punto di domanda al posto dei suddetti caratteri.

    Questa cosa succede sia su firefox che su opera, passando per iexplorer 6 e 7.

    Il sistema operativo é linux. Non riesco a capire, la codifica nei suddetti browser non é imposta, se vado in internet la versione online la visualizzano bene.

    Il database é mysql, con codifica utf-8 per quanto riguarda il database in generale, poi ogni cella della tabella ha come codifica latin-swedish eccetera eccetera (l'iso-eccetera di cui prima).

    Mi manca qualche modulo? Cosa posso fare per dargli in pasto la codifica corretta anche in locale?
    Facciamo qualche premessa, perché la questione dei charset/encoding è sempre abbastanza delicata.

    Come interpretare i byte presenti in una pagina web dipende esclusivamente dal charset/encoding dichiarato in testa al HTML (e chiaramente il browser deve supportare tale charset/encoding).

    Se è dichiarato un charset ISO-8859-1, ad esempio, allora posso scrivere sulla pagina direttamente i byte con i codici relativi ai caratteri speciali di questo charset.
    Se lato PHP gestisco un DB che contiene caratteri in UTF-8, è chiaro che NON posso buttare direttamente sulla pagina la stringa presa dal DB.

    Quindi: o dichiaro nella pagina il charset UTF-8 (se non ci sono altri problemi) e quindi posso scrivere direttamente la stringa (a parte encodare le solite 5 entità base relative a < > & " ') oppure devo traslare un carattere UTF-8 in ISO-blabla, cosa che non è l'ottimale perché non è detto che esista una "traduzione" del carattere.

    L'altra possibilità in PHP è usare htmlentities(), passando la stringa e il charset della stringa (UTF-8) per ricevere così una stringa in cui tutti i caratteri speciali sono stati convertiti nelle rispettive entità. In questo modo la stringa risultante posso scriverla su una pagina indipendentemente dal charset dichiarato.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2001
    Messaggi
    62
    Il fatto é che li dichiaro in testa agli html.

    Il db in locale - come in quello remoto - ha la codifica caratteri specifica per le tabelle in iso-8859-1.

    htmlentities() lo uso nell'inserimento degli articoli, e fin qui me li prende.

    Quello che non capisco é perché in locale (localhost/miosito) mi genera quel problema, in remoto www.miosito.it no.

    P.S. il database l'ho popolato scaricando il file generato da phpmyadmin, percui ho in locale una copia identica di quello in remoto.

    Se ti può essere utile avere qualche info in più, fammi sapere. E grazie per la consulenza!

    P.S. il db in remoto é su aruba, casomai conoscessi le impostazioni di default.

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.