Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    16

    problema con caratteri accentati in mysql

    ciao a tutti,

    ho un problemino, magari qualcuno qui sa aiutarmi.

    io sto creando uno script con php e mysql, quando da un form con php vado a salvare nella tabella mysql dei nomi con caratteri accentati come "è", "ü", ecc.. mi vengono salvati nel db cosi: "è", "ü"

    premetto che utilizzo <meta charset="utf-8"> nelle pagine e "utf8_bin" su mysql.

    e che funziona tutto correttamente, cioè i nomi quando vengono mostrati a video nella pagina web si vedo normalmente, anche quando faccio una query di ricerca trova tutto senza problemi.

    La mia domanda è: che i caratteri vengano codificati cosi è effettivamente un errore (che quindi va corretto) o è perfettamente normale?

    saluti

  2. #2
    Ma sul database ti serve salvare le stringhe come case sensitive? Perchè utf8_bin utilizza i valori binari dei caratteri, da cui probabilmente derivano anche gli strani caratteri sul tuo database

    Di ignoranza pura io userei utf8_unicode_ci, a me non ha mai dato problemi

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    16
    ciao, grazie per la risposta! scusa ma non capisco la differenza, in pratica utf8_unicode_ci non è case-sensitive, giusto? ma i caratteri accentati sono sempre uguali a prima (ad esempio "è" diventa "è" ).

  4. #4
    Hai impostato la codifica della connessione tra php e database in utf8?
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  5. #5
    Problema risoltro e stra risolto nel forum. Cerca e troverai la soluzione

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    16
    perfetto grazie, dopo una ricerca sul forum ho finalmente capito qual era il problema, mancava:

    header('Content-type: text/html;charset=utf-8');
    mysql_query( "SET NAMES 'utf8'" ); // oppure 'SET CHARACTER SET utf8'

    ora mi rimane un ultimo dubbio, è meglio utilizzare utf8_general_ci o come dice Deathlok utf8_unicode_ci

    da quello che ho visto utf_general_ci è piu veloce, mentre utf8_unicode_ci piu accurato, ma non capisco in che senso accurato..

    premetto che per ora ho italiano e inglese, in futuro anche francese, tedesco spagnolo, cinese, japan & co.

    secondo voi?

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.