Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    52

    [PHP/MYSQL] Codifica sbagliata???

    Ciao e tutti , ho un problema che riguarda la codifica dei caratteri su database Mysql; ho cercato su questo forum ma non sono arrivato a soluzioni, quindi provo a esporvi la situazione .

    Ho una pagina dettaglio.php che carica un dettaglio (un record) di una tabella, e mostra i singoli campi in un form.
    Il salvataggio dei dati avviene con Ajax, inviando alla pagina elabora.php i dati per effettuare la query di aggiornamento a db.
    Se però tento di salvare parole con caratteri accentati (ò,à,...), a database vengono salvati caratteri tipo à o Ä che poi visualizzo se faccio F5 della pagina stessa.
    La codifica delle delle pagine php è iso-8859-1 mentre il db Mysql, le tabelle e i campi hanno codifica latin1.
    Le codifiche sono le stesse e non capisco perchè non funzioni .

    Qualcuno saprebbe darmi una dritta?
    Grazie.

    PS: facendo dei test, ho salvato la query fatta dalla pagina elabora.php in un file di testo, e risulta corretta (c'erano è, ò e tutti i caratteri accentati)...boh
    ******************************

    Attenti al cane....

    è fuggito!

    ******************************

  2. #2
    potresti per prima cosa lavorare sempre in utf8
    penso che risolveresti tutti i tuoi problemi !

  3. #3
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

    se non va prova con
    Codice PHP:
    header("Content-Type: text/xml; charset=ISO-8859-1"
    Se le pagine sono correttamente in iso-8859-1 e i campi e le tabelle e il db in latin1.
    Penso che la connessione client delle pagine php a mysql non è su latin1(cosa strana perchè di default è su latin1) prova con
    Codice PHP:
    mysql_query("SET NAMES 'latin1'"); 
    subito dopo la connessione e prima di ogni query.

    Saluti

    Alberto
    Sistemi di allarme, telecamere, autoradio, video proiettori e altri prodotti tecnologici: fedom.it

  4. #4
    Meglio ancora.
    Trasforma tutte la variabili stringa passate dalla form in caratteri XML-friendly e non hai né problemi con il charset né con l'accessibilità delle pagine.

    Ti puoi creare una funzione tutta tua che passa le variabili di tipo stringa attraverso get_html_translation_table().
    Nella pagina del manuale ufficiale c'è un bell'esempio di codice che potrebbe fare al caso tuo!

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    52

    risolto!

    Grazie 1000 ho risolto
    ******************************

    Attenti al cane....

    è fuggito!

    ******************************

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.