Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969

    DB con charset utf8 in iso-8859-1

    Ho installato un server web linux con php 4.3.10 e mysql 4.0.9.
    Ho migrato file e db da un server win con php 4.3.10 e mysql 4.1.
    Il problema è che non visualizza alcuni caratteri tipo lettere accentate e simboli.
    Il charset del db è utf8, quindi se da apache lo metto come charset di default mi visualizza bene tutti i caratteri.
    Per vedere bene tutti i caratteri delle pagine web (esclusi i dati dai db), devo usare come charset iso-8859-1.
    In questo caso vedo bene tutti i caratteri nelle pagine web ma ho problemi con alcuni caratteri che vengono dai db.
    Qualche consiglio?
    E' meglio tenere utf8 (di default su apache) o è meglio iso-8859-1?

  2. #2

  3. #3
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Riguarda anche mysql.
    Qualcuno mi potrebbe dire come traformare i dati di mysql da utf8 a iso-8859-1.
    O no?

  4. #4
    [supersaibal]Originariamente inviato da Teuzzo
    Riguarda anche mysql.[/supersaibal]
    riguarda anche mysql ma è inutile aprire due 3d uguali in due diversi forum, oltre a essere inutile è anche vietato dal regolamento.

    cmq, tornando al discorso, se non erro, se già in mysql determinate lettere sono errate non puoi fare niente, devi modificarle per forza dal db oppure con php potresti provare a fare un str_replace() ma non so fino a che punto possa servire.


  5. #5
    no...ti basta mandare come header o come metatag che stai usando utf-8 come codifica per i caratteri e non la iso-????-1 (non ricordo mai il codice completo )

  6. #6
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    [supersaibal]Originariamente inviato da daniele_dll
    no...ti basta mandare come header o come metatag che stai usando utf-8 come codifica per i caratteri e non la iso-????-1 (non ricordo mai il codice completo ) [/supersaibal]
    Posso fare come hai detto tu oppure posso darlo come default ad apache.
    Il problema è che in entrambi i casi se uso utf8 vede bene i tutti i caratteri provenienti da mysql e perde qualche carattere nei file html (lettere accebntate ad esempio), mentre se metto iso-8859-1 succede il contrario.
    A questo punto ho due soluzioni:
    1) uso utf8 e cambio tutti i caratteri che mi danno problemi nelle pagine hmtl
    2) uso iso-8859-1 e cambio tutti i caratteri che m i danno problemi in mysql

    E' strano però che con Fedora ci sia questo problema, con altri so non mi era mai successo.

  7. #7
    mmm è + facile che essendo che sei passato da mysql 4.1 a 4.0 ci siano stati un po di papocchi

    tagli corto se con uno script converti tutti i dati in mysql

  8. #8
    succede anche a me: in mysql4.1 se metti come character set e come collation l'utf8 non lo gestisce e restituisce degli errori! l'unico metodo è settare il db a latin1 e tenere lo script, il form e l'interfaccia xhtml in utf8.

    ciao,
    jack.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.