Mysql
 sql >> Database >  >> RDS >> Mysql

Salvataggio di caratteri speciali nel database MySQL

@Pranav Hosangadi (grazie) copre tre aree per verificare la coerenza della codifica. La seguente soluzione si aggiunge a questo. Potrebbe anche valere la pena considerare (una variazione di) la risposta di @Soaice Mircea (grazie anche) per alcuni scenari in cui questa risposta non risolve il problema sebbene ciò non fosse richiesto quando sono stato in grado di riprodurre e trovare una soluzione al tuo problema . La linea di pensiero di @Pranav sembra avere successo per questo problema in quanto riguarda la coerenza dell'utilizzo di un set di caratteri ovunque anziché uno in particolare.

cinque cose da fare:

  1. assicurati che il set di caratteri e le tabelle del database utilizzino lo stesso set di caratteri, ispezionalo in phpmyadmin ad esempio, nota e questo set di caratteri per l'uso di seguito

  2. usa la funzione php header() con il set di caratteri del database, ad esempio:

    header('Content-Type: text/html; charset=latin1_swedish_ci');
  3. inserisci il meta tag nell'intestazione html es.:

    <meta http-equiv="content-type"
    content="text/html;charset=latin1_swedish_ci">
  4. aggiungi charset-accept nel tag del modulo

    <form action=\"testsubmit.php\" method=\"post\" accept-charset=\"latin1_swedish_ci\">
  5. imposta il set di caratteri della connessione mysql es.:

    $con = mysql_connect("localhost","test","test");      
    mysql_set_charset ( "latin1_swedish_ci", $con );